Manage SCA retries
Last updated: January 7, 2026
Due to Strong Customer Authentication (SCA) requirements across the European Economic Area (EEA) and United Kingdom, payments without 3D Secure (3DS) and frictionless 3DS payments may be declined with a 20154 response code if authorization was presented without SCA, or a valid exemption.
If this happens, Checkout.com automatically upgrades the payment to 3DS and sends a 202 payment response with an "upgrade_reason": "sca_retry" field in the 3ds object.
The response also contains a 3DS redirect URL that you must redirect the cardholder to for 3DS authentication.
After the cardholder completes authentication, the subsequent authorization request is sent with 3DS data.
To retrieve the payment status after authentication, you can call the Get payment details endpoint or subscribe to Gateway webhooks.
Only customer-initiated transactions (CITs) are eligible for SCA retries, because the cardholder must be present or in session to complete the authentication.
If your merchant-initiated transactions (MITs) receive 20154 declines, the likely causes are as follows:
- The initial CIT to set up the MIT agreement was not authenticated with SCA (challenge).
- The subsequent MITs were not flagged correctly for issuers to identify them as out of scope for SCA.
See SCA compliance for how to correctly flag the initial CIT and subsequent MITs.
By default, SCA soft decline retries are enabled for all impacted payments.
You can opt out of the automated retry by providing "3ds.allow_upgrade": false in your payment request.
Alternatively, to always opt out by default, contact your account manager or request support.
Call the Request a payment endpoint.
Information
Your base URL [prefix] is unique. To learn how to retrieve your unique base URLs for the sandbox and production environments, see API endpoints.
post
https://[prefix].api.checkout.com/payments
1{2"source": {3"type": "card",4"number": "4500622868341387",5"expiry_month": 12,6"expiry_year": 2025,7"cvv": 2578},9"amount": 100,10"currency": "GBP",11"3ds": {12"enabled": false,13"allow_upgrade": false14},15"processing_channel_id": "id"16}
To test the flow in the sandbox environment, you can use the following test card number: 4500622868341387.
1{2"source": {3"type": "card",4"number": "4500622868341387",5"expiry_month": 12,6"expiry_year": 2025,7"cvv": 2578},9"3ds": {10"enabled": false,11"allow_upgrade": true12},13"amount": 6510,14"currency": "USD",15"capture": false16}
To test the SCA retries in the sandbox environment with 3DS enabled, use the Hosted Sessions solution.
Request a session and provide one of the following values in the source.number field:
46046385504074145368763493455610
post
https://[prefix].api.sandbox.checkout.com/sessions
1{2"source": {3"type": "card",4"scheme": "amex",5"number": "4604638550407414",6"expiry_month": 12,7"expiry_year": 2030,8"billing_address": {9"address_line1": "123 High St.",10"city": "London",11"state": "ENG",12"zip": "SW1A 1AA",13"country": "GB"14},15"mobile_phone": {16"country_code": "44",17"number": "1234567890"18},19"email": "[email protected]"20},21"amount": 6510,22"currency": "USD",23"authentication_type": "regular",24"authentication_category": "payment",25"completion": {26"type": "non_hosted",27"callback_url": "https://example.com/callback"28}29}
1{2"session_secret": "sek_Dal7UyiH8rIFXA4PfgiIk2jUyQkVDeEWgVBEL4TsRTE=",3"id": "sid_y3oqhf46pyzuxjbcn2giaqnb441",4"transaction_id": "9aea641d-0549-4222-9ca9-d90b43a4f38c",5"scheme": "amex",6"amount": 6510,7"currency": "USD",8"authentication_type": "regular",9"authentication_category": "payment",10"status": "pending",11"protocol_version": "2.2.0",12"_links": {13"self": {14"href": "https://[prefix].api.checkout.com/sessions/sid_y3oqhf46pyzuxjbcn2giaqnb441"15}16}17}
Verify that you can redirect the customer.
Request a payment using the same card number and use the id returned in the previous response as the 3ds.authenticationId value.
post
https://[prefix].api.sandbox.checkout.com/payments
1{2"source": {3"type": "card",4"number": "4604638550407414",5"expiry_month": 12,6"expiry_year": 20307},8"amount": 6510,9"currency": "USD",10"reference": "ORD-5023-4E89",11"processing_channel_id": "pc_dp7vuzrqp2xe3jipoi52aqkbiu",12"3ds": {13"enabled": true,14"authentication_id": "sid_qwjup7swlcrurgrxxhlqkerbqa"15},16"success_url": "https://example.com/payments/success",17"failure_url": "https://example.com/payments/failure"18}
1{2"id": "pay_mbabizu24mvu3mela5njyhpit4",3"action_id": "act_mbabizu24mvu3mela5njyhpit4",4"amount": 6510,5"currency": "USD",6"approved": true,7"status": "Authorized",8"response_code": "10000",9"response_summary": "Approved",10"processed_on": "2023-09-10T10:11:12Z",11"_links": {12"self": {13"href": "https://[prefix].api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4"14},15"action": {16"href": "https://[prefix].api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4/actions"17}18}19}