On This Page
Pre-Authorization
This section provides the information you need in order to process a pre-authorization.
A pre-authorization enables you to authorize a payment when the final amount is unknown. The system places the funds on hold until you request a follow-up transaction. Pre-authorizations are typically used for lodging, auto rental, e-commerce, and restaurant transactions.
IMPORTANT
Payment Services Directive 2 (PSD2) rules in the European Union (EU) and European Economic Area (EEA) require the initial pre-authorization to use strong customer authentication for merchants or customers in PSD2-applicable countries.
When you have a specific merchant category code (MCC) assigned to your account, you
are allowed to capture up to 20% more than the cumulatively authorized amount on
Visa, Diners Club, Discover, and JCB cards. Contact your account manager to have your
account enabled for this option.
For a pre-authorization:
- The authorization amount is greater than zero.
- Submit the authorization for capture within 30 calendar days of its request.
- When you do not capture the authorization, reverse it.In the US, Canada, Latin America, and Asia Pacific, Mastercard charges an additional fee for a pre-authorization that is not captured and not reversed.In Europe, Russia, Middle East, and Africa, Mastercard charges fees for all pre-authorizations.
- Chargeback protection is in effect for 30 days after the authorization.
Merchant Category Codes
When your business signs up with
Cybersource
, Cybersource
assigns your account a merchant category code (MCC) based on
your primary business type. Cybersource
sends this MCC to the card
networks with every transaction you process. If you process a transaction that is
unrelated to your usual goods or services, include the merchantInformation.categoryCode
field and set it to the relevant MCC. Cybersource
and FDC Nashville Global
do not validate the MCC you
send. Using an incorrect MCC can result in increased decline rates, interchange
downgrades, or fines. To verify the correct MCC, contact your Cybersource
account manager.Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for a Pre-Authorization
Use these required fields for processing a pre-authorization.
- Set the value to0.
REST Example: Processing a Pre-Authorization
Request
{ "clientReferenceInformation" : { "code" : "Pre-Auth" }, "orderInformation" : { "billTo" : { "country" : "US", "lastName" : "Doe", "address1" : "201 S. Division St.", "postalCode" : "48104-2201", "locality" : "Ann Arbor", "administrativeArea" : "MI", "firstName" : "Joan", "phoneNumber" : "999999999", "email" : "test@cybs.com" }, "amountDetails" : { "totalAmount" : "100.00", "currency" : "usd" } }, "paymentInformation" : { "card" : { "expirationYear" : "2031", "number" : "4111111111111111", "securityCode" : "123", "expirationMonth" : "12", "type" : "001" } }, "processingInformation": { "authorizationOptions": { "authIndicator": "0" } } }
Response to a Successful Request
{ "_links" : { "authReversal" : { "method" : "POST", "href" : "/pts/v2/payments/7709386742016723603091/reversals" }, "self" : { "method" : "GET", "href" : "/pts/v2/payments/7709386742016723603091" }, "capture" : { "method" : "POST", "href" : "/pts/v2/payments/7709386742016723603091/captures" } }, "clientReferenceInformation" : { "code" : "Pre-Auth" }, "id" : "7709386742016723603091", "orderInformation" : { "amountDetails" : { "authorizedAmount" : "100.00", "currency" : "usd" } }, "paymentAccountInformation" : { "card" : { "type" : "001" } }, "paymentInformation" : { "tokenizedCard" : { "type" : "001" }, "card" : { "type" : "001" } }, "pointOfSaleInformation" : { "terminalId" : "04980992" }, "processorInformation" : { "paymentAccountReferenceNumber" : "V0010013018036776997406844475", "merchantNumber" : "6817027800", "approvalCode" : "100", "cardVerification" : { "resultCodeRaw" : "3", "resultCode" : "2" }, "merchantAdvice" : { "code" : "00", "codeRaw" : "0" }, "networkTransactionId" : "123456789012345", "transactionId" : "123456789012345", "responseCode" : "0", "avs" : { "code" : "U", "codeRaw" : "00" } }, "status" : "AUTHORIZED", "submitTimeUtc" : "2026-02-12T23:24:34Z" }
Response to a Declined Request
{ "clientReferenceInformation": { "code": "TC50171_3" }, "errorInformation": { "reason": "PROCESSOR_ERROR", "message": "Invalid account" }, "id": "6583553837826789303954","paymentInsightsInformation": { "responseInsights": { "categoryCode": "01", "category": "ISSUER_WILL_NEVER_APPROVE" } },"pointOfSaleInformation": { "amexCapnData": "1009S0600100" }, "processorInformation": { "systemTraceAuditNumber": "004544", "merchantNumber": "1231231222", "networkTransactionId": "431736869536459", "transactionId": "431736869536459", "responseCode": "111", "avs": { "code": "Y", "codeRaw": "Y" } }, "status": "DECLINED" }