From Barion Documentation
Jump to navigation Jump to search

3DSecure FAQ

Here, you can find the frequently asked questions related to the Barion 3D Secure solution. The content of this page is updated if any issues surface or clarifications are needed.

If you have any questions related to 3D Secure not covered in this FAQ, reach out to us at [email protected], where we can provide more in-depth, case-specific answers, depending on the issue you encountered.

Upon starting the payments which properties are required?

We highly recommend using the properties marked with


badge in the PaymentStart request. There is no Read: error thrown when sent without these properties. The content of these fields is optional. Payments undergo Transaction Risk Analysis on the card issuer side based on these data as well, deciding if the payment should be challenged or not.

We've received TraceId in the following format: 0MHSGZRZ1G0118 0

The TraceId is generated by the card issuer and can be anything up to 100 characters. Whitespaces and 0s should also be left intact. You can read more about the TraceId here.

Can we skip the additional data in subsequent payments that were required for 3DS authentication in the first Token Payment?

Additional data can't be ignored! The difference between the initial and subsequent token payment is that 3DS authentication is only required for the first, initial payment. More info can be found here

Do we have to generate the TraceId in the first Payment/Start, or is it generated by Barion?

TraceId is generated by the Card Issuer, so it is not required in the initial Payment/Start request. You have to store the TraceId, received in the PaymentState response, and send it in all subsequent payments. You can read more here. The exceptions are the subsequent payments of an already initialized token payments without 3DS. More info can be found here.

When the amount of the first payment is different than the rest, I have to use MechantInitiatedPayment and not RecurringPayment. Right?

Yes, RecurringPayment can only be used when the amounts of all the subsequent payments are the same or less. If only 1 is different (for example, you give discount/free for the first month), only MechantInitiatedPayment can be used. You can find more info here.

What is a soft decline?

When an exemption is requested (MIT, REC, TRA), the card issuer reserves the right to decline the charge with the exemption (could be identified by ScaSoftDeclined as the FundingInformation -> ProcessResult in the GetPaymentState response). In this case, a full 3ds authentication is required (hence the name "soft decline"), and the charge could be attempted again.