One merchant integration point for all of PayPal's services

Related tags

SDK Android-SDK
Overview

android-sdk

[WIP] One merchant integration point for all of PayPal's services

Static Analysis Tools

Detekt

This project uses Detekt for Kotlin code analysis. To run the code analysis:

./gradlew detekt

This will output a list of violations, if any.

Running the gradle task with the -PdetektAutoCorrect parameter, will automatically correct formatting issues:

./gradlew detekt -PdetektAutoCorrect

Detekt rules are configured in detekt/detekt-config.yml.

Jacoco

This project uses Jacoco for gathering code coverage metrics. We leverage the 3rd-party jacoco-android-gradle-plugin to integrate Jacoco into our project.

To run code coverage analysis:

./gradlew jacocoTestReport

The results are then generated in each module's respective build/jacoco folder (e.g. Card/build/jacoco).

Comments
  • Integration with Java

    Integration with Java

    Summary of changes

    A callback has been added to Card.approveOrder in order to facilitate integrations with merchants using Java. The callback pattern is the desired choice to use across the app

    Checklist

    • [ ] Added a changelog entry

    Authors

    List GitHub usernames for everyone who contributed to this pull request.

    • jonoriega
    • sshropshire
    opened by jcnoriega 5
  • Use Java Style Callback for CardClient

    Use Java Style Callback for CardClient

    Summary of changes

    • Use Java Style Callback in CardClient
    • This will eliminate the need for merchants to return null when implementing a callback in Java

    Checklist

    ~- [ ] Added a changelog entry~

    opened by sshropshire 5
  • Rename: PayPalNativeCheckout prefix for Native checkout integration

    Rename: PayPalNativeCheckout prefix for Native checkout integration

    Thank you for your contribution to PayPal.

    Before submitting this PR, note that we cannot accept language translation PRs. We have a dedicated localization team to provide the translations. If there is an error in a specific translation, you may open an issue and we will escalate it to the localization team.

    Summary of changes

    • Refactor to rename all of the classes to start with the prefix PayPalNativeCheckout

    Checklist

    • [ ] Added a changelog entry

    Authors

    List GitHub usernames for everyone who contributed to this pull request.

    • @jcnoriega
    opened by jcnoriega 4
  • Add Networking Layer

    Add Networking Layer

    Summary of changes

    This PR scaffolds our Http class, which can be used to make network requests

    • Add Http class to make a simple GET request
    • We will use HttpURLConnection for networking to minimize dependency on 3rd-party libraries
    • The remainder of this class can be TDD'd, e.g. once we have a feature that requires an HTTP POST, we can add this feature to Http as needed

    Checklist

    ~- [ ] Added a changelog entry~

    Authors

    List GitHub usernames for everyone who contributed to this pull request.

    • @sshropshire
    opened by sshropshire 4
  • Initial FPTI Networking Capability

    Initial FPTI Networking Capability

    Reason for changes

    • See summary of https://github.com/paypal/iOS-SDK/pull/91

    Summary of changes

    • Add analytics specific method on HttpRequestFactory to construct HttpRequest
    • Add AnalyticsEventData data class to model JSON post structure
    • Add DeviceInspector class to perform all app Context and build specific information extraction

    Checklist

    • ~Added a changelog entry~ Will update CHANGELOG once events are sent.

    Authors

    @sshropshire @scannillo @kgangineni

    opened by scannillo 3
  • Creates test section for styling buttons

    Creates test section for styling buttons

    Thank you for your contribution to PayPal.

    Before submitting this PR, note that we cannot accept language translation PRs. We have a dedicated localization team to provide the translations. If there is an error in a specific translation, you may open an issue and we will escalate it to the localization team.

    Summary of changes

    Test section for styling buttons testSection

    Checklist

    • [ ] Added a changelog entry

    Authors

    List GitHub usernames for everyone who contributed to this pull request.

    • @kgangineni

    opened by kgangineni 3
  • [DO NOT MERGE] Spike 3DS

    [DO NOT MERGE] Spike 3DS

    Summary of changes

    • Spike to initiate a 3DS Verification Flow
    • This requires an application_context when creating an Order via ppcp_merchant_server
    • For now, we're forwarding these parameters to the merchant server
    • In the future, we should find a way to set return_url and cancel_url when calling confirm-payment-source to avoid requiring a merchant to provide a server-side integration in order to perform 3DS Verification

    Checklist

    ~- [ ] Added a changelog entry~

    opened by sshropshire 3
  • CardClient Confirm Payment Source

    CardClient Confirm Payment Source

    Summary of changes

    • This PR adds CardClient#confirmPaymentSource() method that calls /v2/checkout/orders/<ORDER_ID>/confirm-payment-source endpoint

    Checklist

    • [x] Added a changelog entry

    Authors

    • @jcnoriega
    • @sshropshire
    opened by sshropshire 3
  • [DTNOR-151] Demo App Card Form

    [DTNOR-151] Demo App Card Form

    Thank you for your contribution to PayPal.

    Before submitting this PR, note that we cannot accept language translation PRs. We have a dedicated localization team to provide the translations. If there is an error in a specific translation, you may open an issue and we will escalate it to the localization team.

    Summary of changes

    device-2021-09-20-131316

    This PR adds the card fields UI to the demo app. Jetpack Compose was used for this UI.

    Checklist

    • [ ] ~Added a changelog entry~

    Authors

    List GitHub usernames for everyone who contributed to this pull request.

    • @sarahkoop
    • @andrespelaezp
    opened by tdchow 3
  • Single session id for analytics

    Single session id for analytics

    Thank you for your contribution to PayPal.

    Summary of changes

    Jira

    • Single session Id for all FPTI events in same session
    • delegate analytics to AnalyticsClient

    Checklist

    • [ ] Added a changelog entry

    Authors

    List GitHub usernames for everyone who contributed to this pull request.

    • @kgangineni @scannillo
    opened by kgangineni 2
  • docs for creating order with billing agreement

    docs for creating order with billing agreement

    Summary of changes

    • add docs for using Billing Agreement with native checkout

    Checklist

    • ~[ ] Added a changelog entry~

    Authors

    List GitHub usernames for everyone who contributed to this pull request.

    • @kgangineni
    opened by kgangineni 2
Releases(0.0.6)
Owner
PayPal
PayPal
Gradle Stable Build Services example

Stable Shared Build Services In Gradle 7.4, the Shared Build Services API will b

Rodrigo Oliveira 1 Dec 24, 2021
Simple Discord <-> Minecraft chat integration using webhooks

Minecraft Chat Simple Discord <-> Minecraft chat integration using webhooks Instalacja Plugin należy wrzucić do folderu plugins oraz ustawić URL webho

Oskar 10 Aug 31, 2022
A demo of Rongcloud uniapp sdk integration for compiling debug-apk in Android Studio

Rongcloud-uniapp-sdk-demo A demo of Rongcloud uniapp sdk integration for compiling debug-apk in Android Studio 这是一个为了给uniapp在Android平台打出debug-apk的demo

Zongkui Guo 1 Oct 13, 2021
Share all the things!

Android-ShareEverywhere This project is the tribute to my favorite Android Widget: the Share button. Share ALL THE THINGS! Summary You may know about

Doug Melton 174 Jan 1, 2023
Ride hailing app that helps users find drivers and take them from point A to point B.

Ride-hailing_rider_app Ride hailing app that helps users find drivers and take them from point A to point B. What I Used ? Clean Architecture : Basica

Oucif Mohammed 2 Aug 26, 2022
Galaxy Merchant Trading Guide with python

GALAXY MERCHANT TRADING GUIDE Permasalahan Anda memutuskan untuk pergi dari bumi setelah keruntuhan finansial terbaru meninggalkan 99,99% populasi bum

null 2 Oct 21, 2021
Sentinel is a simple one screen UI which provides a standardised entry point for tools used in development and QA alongside device, application and permissions data.

Sentinel Sentinel is a simple one screen UI that provides standardised entry point for tools used in development and QA alongside device, application

Infinum 29 Dec 12, 2022
Integration Testing Kotlin Multiplatform Kata for Kotlin Developers. The main goal is to practice integration testing using Ktor and Ktor Client Mock

This kata is a Kotlin multiplatform version of the kata KataTODOApiClientKotlin of Karumi. We are here to practice integration testing using HTTP stub

Jorge Sánchez Fernández 29 Oct 3, 2022
All news in one place - one application

nuntiumNewsApp Nuntium | Daily News App Nuntuim news app is a personalised news aggregator that organises and highlights what’s happening in the world

Ro'ziboyev Ismoil 1 Dec 3, 2021
You can store all your password, bank details, card details in one place and remember only one master PIN. The application works totally offline.

Keep Password An application where you can store all your password, bank details, card details in one place and remember only one master PIN. The appl

rıdvan 4 Apr 18, 2022
StartPointSeekBar is a custom view for the Android platform that makes it possible to have a SeekBar to have custom start point.

Forked/Inspired from https://code.google.com/p/range-seek-bar/ by [email protected] This solves the problem as described in http://

Gaurav Vashisth 142 Dec 29, 2022
🏗️ Kotlin implementation of Point-Free's composable architecture

?? Komposable Architecture Kotlin implementation of Point-Free's The Composable Architecture ?? Project Status We've been using Komposable Architectur

Toggl 175 Dec 23, 2022
A starting point for interview exercises

Kotlin Interview Starting Point This repo will serve as a starting point for your code challenge. Feel free to change anything in order to complete it

Agilefreaks 0 Mar 18, 2022
Simple custom view that draws an n-point star for Android

StarView ?? Simple custom view that draws an n-point star for Android. Features

Paul T 9 Dec 21, 2022
Burp-ipv - Insertion point visualizer for Burp Suite

Insertion point visualizer for Burp Suite Building Execute ./gradlew build and y

Silent Signal 1 Feb 2, 2022
Google one tap sign in - Flutter Google One Tap Sign In (Android)

Google One Tap Sign In Google One Tap Sign In (Android) A Flutter Plugin for Google One Tap Sign In Getting Started To access Google Sign-In, you'll n

null 6 Nov 23, 2022
The flexible, easy to use, all in one drawer library for your Android project. Now brand new with material 2 design.

MaterialDrawer ... the flexible, easy to use, all in one drawer library for your Android project. What's included ?? • Setup ??️ • Migration Guide ??

Mike Penz 11.6k Dec 27, 2022
Android has a built in microphone through which you can capture audio and store it , or play it in your phone. There are many ways to do that but with this dialog you can do all thats with only one dialog.

# Media Recorder Dialog ![](https://img.shields.io/badge/Platform-Android-brightgreen.svg) ![](https://img.shields.io/badge/Android-CustomView-blue.sv

Abdullah Alhazmy 73 Nov 29, 2022
Android has a built in microphone through which you can capture audio and store it , or play it in your phone. There are many ways to do that but with this dialog you can do all thats with only one dialog.

# Media Recorder Dialog ![](https://img.shields.io/badge/Platform-Android-brightgreen.svg) ![](https://img.shields.io/badge/Android-CustomView-blue.sv

Abdullah Alhazmy 73 Nov 29, 2022