[ServerException] - 3D Secure - Android
See original GitHub issueGeneral information
- SDK/Library version: 3.15.0
- Environment: Production
- Android Version and Device: Samsung Galaxy S9 Plus with Android 10
Braintree dependencies:
- com.braintreepayments.api:braintree:3.15.0
- com.braintreepayments.api:three-d-secure:3.15.0
- com.braintreepayments:card-form:5.0.0
Issue description
My application uses Braintree payments with custom ui. When I would implement the 3D Secure method, I got error from Briantree sdk. The own system contains backend, that allocate token for mobiles. The ios version of development are working on production environment (or sandbox), just android not. The sdk description are easy and clean: Put sdk to gradle, Initialize Braintree fragment with received authorization, Create/Get CardNonce and Perform Three Secure verification with lookup listener, and so on. Everything ok. After I would pay on own PaymentFragment I got the following error from Braintree sdk.
The masked url when I receive error: https://api.braintreegateway.com:443/merchants/AABBCC/client_api/v1/payment_methods/AABBCC/three_d_secure/lookup Response code: 500
The next flow is where the code no longer reaches:
ThreeDSecure.continuePerformVerification(braintreeFragment, request, lookup)
Crash log
PaymentFragment: Braintree error com.braintreepayments.api.exceptions.ServerException: {} at com.braintreepayments.api.internal.HttpClient.parseResponse(HttpClient.java:272) at com.braintreepayments.api.internal.BraintreeHttpClient.parseResponse(BraintreeHttpClient.java:138) at com.braintreepayments.api.internal.HttpClient.post(HttpClient.java:219) at com.braintreepayments.api.internal.BraintreeHttpClient.post(BraintreeHttpClient.java:121) at com.braintreepayments.api.internal.HttpClient$2.run(HttpClient.java:186) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:919)
Any suggestion? This problem reproducible on any device with any android os version.
Issue Analytics
- State:
- Created 3 years ago
- Comments:10 (6 by maintainers)
Top GitHub Comments
^ I’ve confirmed that sending the amount as
100 00
causes a 500 response in our API. I’m going to let our 3D Secure team know about it.Awesome @hoordev thanks for your feedback. I’m going to close this issue for now since you’re now able to successfully perform a 3DS lookup.