Zero-authorization
Learn more about zero-auth for card payments.
Zero-authorization
Zero-authorization is a authorization request with zero amount to the issuing bank to verify the card and cardholder information. There is no actual charge to the cardholder’s account. The check is done to verify if the card is valid. This can be used for future transactions. You can make zero-authorization only for credit cards.
Why use zero-authorization?
- Card validation during registration: Use zero-auth to check if a card is valid during account setup or registration, without charging the customer.
- Tokenization and credentials-on-file: Validate a card before storing the token for future use, such as subscriptions or one-click payments.
- Fraud prevention: Screen out invalid or suspicious cards before allowing high-value purchases or recurring billing.
- Better customer experience: Avoid small-value authorizations (like €1.00), which can confuse customers with pending charges and increase support requests.
- On-demand services: For ride-sharing or rentals, use zero-auth to verify cards before a higher-value authorization or capture. This also confirms there are sufficient funds for future transactions.
- Card reverification: Use zero-auth to confirm that stored cards for subscriptions or recurring payments are still valid and not expired.
Use cases for zero-authorization
- Customer onboarding: You can verify that a card is active and legitimate during account setup or before a first-time purchase.
- Managing saved payment methods: Allow customers to add or update their card details with confidence, as the validation confirms the card is ready for future transactions.
- Secure tokenization: Securely save (tokenize) a customer’s card for recurring billing or one-click checkouts, while simultaneously confirming the card is valid.
- Fraud prevention: You can check card authenticity, adding a layer of security before high-value transactions.
- Reliable subscriptions: For services with trial periods or recurring fees, you can validate a card upfront to ensure successful payments when the billing cycle begins. To learn more about subscriptions, go to (/use-cases/scheduled-payments/)
Supported integration types
- Payment pages
- UI components
- Direct integration
Example request for zero-authorization
POST https://api.unzer.com/v1/payments/authorize
{
"amount" : "0",
"currency" : "EUR",
"returnUrl": "https://www.unzer.com/de/kassenloesungen/",
"orderId": "15f7dd6b-a3ef-45e2-96a6-30f500f28e8e",
"resources" : {
"typeId" : "s-crd-6oj8io5pavd4"
}
}
{
"id": "s-aut-1",
"isSuccess": true,
"isPending": false,
"isResumed": false,
"isError": false,
"card3ds": true,
"redirectUrl": "",
"message": {
"code": "COR.000.000.000",
"merchant": "Transaction succeeded",
"customer": "Your payments have been successfully processed."
},
"amount": "0.0000",
"currency": "EUR",
"returnUrl": "https://www.unzer.com/de/kassenloesungen/",
"date": "2025-01-07 14:19:52",
"resources": {
"customerId": "",
"paymentId": "s-pay-6",
"basketId": "",
"metadataId": "",
"payPageId": "",
"traceId": "d82d19f964966a4a1f7c27db8627b9c7",
"typeId": "s-crd-6oj8io5pavd4"
},
"orderId": "15f7dd6b-a3ef-45e2-96a6-30f500f28e8e",
"paymentReference": "",
"processing": {
"uniqueId": "31HA07BC81116A32F50B74E9A4314885",
"shortId": "6001.8599.1771",
"3dsEci": "3DS_ATTEMPT",
"traceId": "d82d19f964966a4a1f7c27db8627b9c7"
}
}