Releases: processout/processout-android
Releases · processout/processout-android
Release v2.11.2
Small fixes
- Update typo in method name
Release v2.11.1
- Add support for
additionalData
in APMs
Release v2.11.0
Alternative Payment Methods
- Add support for
makeAPMToken
method
This allows merchants to update a customer token with a specific APM token.
The documentation has been updated. https://docs.processout.com/payments/alternative-payment-methods-tokenize/
Release v2.10.1
- 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
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
- Add support for idempotency-key
- Change network retry policy to 15s with a maximum of 2 retries
Release v2.9.0
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 anActivity
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
- 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
- Add support for 3DS1 fallback
Release v2.6
- Add support for 3DS2