Skip to content

Releases: processout/processout-android

Release v2.11.2

19 Dec 09:49
b1164ff
Compare
Choose a tag to compare

Small fixes

  • Update typo in method name

Release v2.11.1

04 Nov 17:41
a16728e
Compare
Choose a tag to compare
  • Add support for additionalData in APMs

Release v2.11.0

04 Nov 12:23
e2a6af0
Compare
Choose a tag to compare

Alternative Payment Methods

Release v2.10.1

02 Oct 16:09
d246496
Compare
Choose a tag to compare
  • Improve user-agent for HTTP calls

Refer to https://github.com/processout/processout-android/releases/tag/2.10.0 for migration docs

Release v2.10.0

02 Oct 14:03
6d66986
Compare
Choose a tag to compare

What's new?

  • Support for 3DS challenges in webview inside the app
  • Support for makeCardToken method with card verification
  • General improvements

Migration

New method

The makeCardToken is now available:

p.makeCardToken("card-token", "customer-id", "token-id", ProcessOut.createDefaultTestHandler(MainActivity.this, new ProcessOut.ThreeDSHandlerTestCallback() {
    @Override
    public void onSuccess(String tokenId) {
        // The card has been verified
    }

    @Override
    public void onError(Exception error) {
        // Error
    }
}), with);

ThreeDSHandler interface

The ThreeDSHandler interface has a new method:

void doPresentWebView(ProcessOutWebView webView);

It is called when a web challenge is required. It is up to you to present the webview the way you want.

Deep-links handling

The only case where your app will be re-opened from a deep-link is when dealing with Alternative Payment Methods.

The onCreate method of your Activity should handle it like this:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Intent intent = getIntent();
    Uri data = intent.getData();
    if (data != null) {
        // Check if the activity has been opened from ProcessOut
        String gatewayToken = ProcessOut.handleURLCallback(data);
        if (gatewayToken != null)
            Log.d("PROCESSOUT", gatewayToken); // Send the token to backend to complete the charge
    }
}

Release v2.9.1

18 Sep 10:12
ff7c1cc
Compare
Choose a tag to compare
  • Add support for idempotency-key
  • Change network retry policy to 15s with a maximum of 2 retries

Release v2.9.0

04 Sep 12:48
8e35cbc
Compare
Choose a tag to compare

Add support for DI setups

Migration:

  • The makeCardPayment method definition changed. It now requires a new parameter being the current context from which the method is called. This context should be an Activity so that the ProcessOut SDK can start a web intent if required, but also display a hidden webview for web fingerprinting fallback.
public void makeCardPayment(final String invoiceId, final String source, final ThreeDSHandler handler, final Context with)

Please note that the app context must still be passed during the ProcessOut object instantiation and will be used for networking.

Release v2.8.0

30 Aug 09:22
a43ba14
Compare
Choose a tag to compare
  • Add support for 3DS1 fallback for fingerprinting

Usage difference:

When handling redirects to the app after a web challenge a new case has to be managed:

switch (returnAction.getType()) {

{...} // Handling other redirects cases

case ThreeDSFallbackVerification:
    new ProcessOut(this, "project-id").continueThreeDSVerification(returnAction.getInvoiceId(), returnAction.getValue(), new ThreeDSVerificationCallback() {
        @Override
        public void onSuccess(String invoiceId) {
            // Invoice authorized, send the ID to your backend to capture the payment
        }

        @Override
        public void onError(Exception error) {
            // Error
        }
    });
    break;

Release v2.7.0

29 Jul 13:29
b2ffd1b
Compare
Choose a tag to compare
  • Add support for 3DS1 fallback

Release v2.6

17 Jun 13:53
cc9cb5b
Compare
Choose a tag to compare
  • Add support for 3DS2