Soft Decline Handling

Card Issuers will begin to introduce "Soft Declines" which indicate that Strong Customer Authentication data is required but was not submitted in the authorisation request.
(Note: This may also occur if an exemption is being requested with no SCA data)

Therefore the card issuer will return a "soft decline" which is effectively asking for this data.
At this stage, there have been no checks on the card for available funds so the instruction is to "step up" and authenticate the card holder via 3D Secure 1 or 2, and get the required SCA data.

Once SCA has been performed, the transaction can be re-attempted and the remaining checks will be completed (such as checking available funds) before an approval or hard decline is returned, as it is today.

Soft Decline Codes

There are 2 main soft decline codes that have been introduced by the card schemes which are noted below.

Decline CodeScheme
65All Schemes
1AAll Schemes

ANYpay automatically returns the decline code from the issuer / acquirer today in the providerStateCode field as shown below.
If an error message is also returned by the acquirer, this will be passed back in providerStateMessage field as also shown below.

{
    "id": "9dc18111-0aa2-448a-8d70-6dfa955f4e58",
    "state": "Declined",
    "providerStateCode": "65",
    "providerStateMessage": "SCA Required",
    "currencyCode": "GBP",
    "accountDetails": {
        "cardNumber": "555533******1111",
        "tokenizedCardNumber": "9997000000005071111",
        "isVisaCheckout": null
    },
    "details": {
        "providerMerchantId": "12345678",
        "providerTerminalId": "87654321"
    },
    "stateDetails": {
        "approvalCode": ""
    },
    "cardSecurityResponseCode": null,
    "addressVerificationResponseCode": null
}
{
    "id": "9dc18111-0aa2-448a-8d70-6dfa955f4e58",
    "state": "Declined",
    "providerStateCode": "1A",
    "providerStateMessage": "SCA Required",
    "currencyCode": "GBP",
    "accountDetails": {
        "cardNumber": "444433******1111",
        "tokenizedCardNumber": "9997000000005071111",
        "isVisaCheckout": null
    },
    "details": {
        "providerMerchantId": "12345678",
        "providerTerminalId": "87654321"
    },
    "stateDetails": {
        "approvalCode": ""
    },
    "cardSecurityResponseCode": null,
    "addressVerificationResponseCode": null
}

Test Cards

The below test cards can be used to test the Soft Decline behaviour.

These cards will return a 65 decline response code when 3D Secure Data is not present.
Once 3D Secure data is present, they will approve.

This mimics the real life scenario from card issuers where SCA data is not present and therefore instuct you to step up and perform SCA before re-attempting the autorisation.

Card NumberCard SchemeAmount
4012000000020071VisaAny
5204240438720059MastercardAny