Authorize and Capture

A Guide for Authorizing and Capturing Transactions

Use the provided API reference links for detailed endpoint documentation.

Create an Authorize Request

  1. Request for the Token ID from the Card Library
  2. Create an Authorize Request
    1. Pass the “Token ID” in the Source.
    2. Pass the desired amount (1 SAR, 0.100 KWD, BHD)
    3. Apply Auto Void after the desired number of hour(s) (This will automatically void the authorize after the set number of hours)
    4. Pass 3DS as True - To Authenticate with 3DS
    5. Pass Customer Initiated as True
    6. Pass Save Card as True - To save the card after a successful card 3DS Authentication and Authorization.
    7. Pass the Customer ID - Generated by the customer API in the customer object.
    8. Pass the correct Merchant ID related to each country.
    9. Pass the Redirect URL to redirect back after the 3DS Authentication
    10. Pass the Post URL to pass the response after the 3DS Authentication
  3. Save the following details from the Authorize Response for future transactions.
    1. Authorize ID
    2. Authorize Status
    3. Customer ID

Capture an Authorized Transaction

  1. Create a Charge Request
    1. Pass the “Authorize ID” in the Source
    2. Pass the desired amount (and the same currency of the Authorize) to Charge. Amount can be less than or equal to the originally authorized amount.
    3. Pass Customer ID
    4. Pass the correct merchant ID related to each country.
    5. Post URL is Optional but recommended to push the info to your backend. Note - you will receive an immediate response, since no authentication will be needed for an authorized transaction.
  2. Save the following details from the Authorize Response for future transactions.
    1. Charge ID
    2. Charge Status

🚧

Ensure that customer_initiated is not set to false, and threeDSecure is not set to false during the capture of an authorized transaction. Payment agreement ID is not required for capturing an authorized transaction.