Closed EvertV closed 1 year ago
Looks like I was passing the wrong data in the body of my users/me/payments/details
🤦
While making the changes and refactoring a bit, I ended up sending the details
inside details
, so it couldn't find the correct data.
But it looks like the type of data
(PaymentMethodData) seems to be incorrect, since it looks like this:
{"details": {"redirectResult": "X3XtfGC7!H4sIAAAA...."}}
and not like this
export interface PaymentMethodData {
paymentMethod: {
type: string;
[key: string]: any;
checkoutAttemptId?: string;
};
browserInfo?: {
userAgent: string;
};
}
So my mistake was that I was sending this body to the endpoint
{"details": {"details": {"redirectResult": "X3XtfGC7!H4sIAAAA...."}}}
All good now! But maybe look at the type of data
on method onAdditionalDetails
@descorp ?
Looks like I closed the issue too fast. onAdditionalDetails
is not being called when using DropIn, but it's called when using Components. So bcmc_mobile_app
cannot be set up with DropIn, since it needs onAdditionalDetails
to be called.
Hello! We have a very similar setup on our side and we can't get onAdditionalDetails
to be called when using bcmc_mobile_app
either, it works fine with credit cards though.
Hey @EvertV @0xClpz
This is an issue on Android or both?
@descorp I only tested Android, not sure for iOS right now
On my side this was an iOS issue, did not test it on android
hm.. 🤔
this could be issue on issuer side or this flow is somehow not yet supported. Will run tests locally and get back to you
It is working for me though
This is the tricky part. It could be one/small number of many issuers that acting unexpectedly.
It was working well on beta-7 (with dropIn). We rolled out our app with the latest version now (using only components).
We're getting reports from users that cannot add payment method bcmc_mobile_app. When looking in the logs, it seems that onAdditionalDetails is not being called. It is working for me though, maybe it's specific issuers? I'm using the BNP Paribas Fortis app, but a client using the same bank app has this issue. In the logs I see that onAdditionalDetails is not being called, in Adyen everything is fine, the payment happens.
I'm using the BNP Paribas Fortis app, but a client using the same bank app
Maybe different version of issuer app? Or Web/Mobile flow?
@EvertV could you reach out to Adyen Support Team and provide them with PSP reference for your successful and shopper's unsuccessful transactions?
"PSP reference" could be found in your CA portal or in the header of network call.
Done! Ticket ID #3988635 (in case it's relevant for you as well).
FYI: Turns out the issue was existing on beta-7 already
Great thanks @EvertV 💚 We will investigate from our side!
@descorp I feel like this issue can be closed, since it got a bit messy to know what the issue exactly is (my bad). Should I open a new issue with the information mentioned in the support ticket #3988635 (successful payment without onAdditionalDetails called)?
This would be helpful to focus on one thing and consolidate our findings Thanks @EvertV
Describe the bug When using Components to add paymentMethodType
bcmc_mobile_app
, I get errorRequired field 'paymentData' is not provided
on callback onAdditionalDetails. In the documentation it says that I should receive paymentData onPOST /payments
. But I don't get anything there, even after addingthreeDSPaymentData
to the response on our back-end (using"@adyen/api-library": "^13.1.2"
).Here's some logs
On back-end side when calling
checkout.payments
, with request:And this is the response :
When using DropIn, callback onAdditionalDetails doesn't seem to get called and continues works without error, but the payment method does not seem to get saved.
Logs when using DropIn:
For non-3DS payment methods, like credit card, it's working fine. We didn't have this issue on BETA-7, but started happening since we upgraded to latest (RC-2).
To Reproduce Steps to reproduce the behavior:
bcmc_mobile_app
using Components/payments/details
Same when using DropIn, but onAdditionalDetails callback does not get called, so no error. But also payment method does not get stored here.
Expected behavior Payment method
bcmc_mobile_app
should get correctly stored when coming back to the app and callingonAdditionalDetails
.Smartphone (please complete the following information):
Additional context When using BETA-7, I have these logs and the payment data gets saved correctly in our database (using the same back-end endpoints here).