Zai allows you to authenticate credit cards to ensure that all credits cards registered on your platform are valid. When pre-authentication is enabled on a platform, the API calls Verify Card and Authorise Payment initiate the pre-authentication for a credit card and a payment for an item, respectively.
If you want to enable pre-authentication on your platform, contact Zai support.
How it works
When enabled on your platform, pre-authentication is executed on two levels. You can pre-authenticate credit cards independently of any item transaction, as well as pre-authenticate a credit card payment for an item transaction.
Both card-level and item-level pre-authentication have a card authorisation amount defined. This is the amount that Zai holds, with no actual transfer of funds, to verify a card or authorise an item transaction.
- For a card-level pre-authentication, this amount is configurable by Zai. The default amount is $1.00 and is released immediately. Contact Zai support to adjust the default value.
- For an item-level pre-authentication, this amount is the item amount.
A key aspect of pre-authentication is that your platform has control over the amount held when a payment for an item is authorised.
You can verify a credit card by using the Verify Card API call. When a card is verified, the card account enters a verified state.
The workflow below illustrates a scenario where card-level pre-authentication is used in the context of an item transaction. Please note that you do not need an item transaction to verify a card.
If the verification for a card account is unsuccessful, then the card account retains its previous state and can be subjected to verification again.
Where an item transaction is involved, you can authorise a credit card payment using the Authorise Payment API call. Once an authorisation is successful, you can then proceed to Capture Payment or Void Payment.
Note that when an authorisation is successful, the platform holds the item amount for capture, but there is no transfer of funds happening.
If the payment authorisation is unsuccessful, then the item retains its previous state and can be subjected to payment authorisation again.
Lastly, a successful payment authorisation does not affect the verification state of the credit card account, nor does it automatically authorise subsequent item transactions.
Capturing an authorised payment
After a payment is successfully authorised, you can use the Capture Payment API call to complete the payment for the transaction. This is similar to the Make Payment API call for the card-level pre-authentication. However, Capture Payment for an Item is used in conjunction with an authorised payment.
The workflow shown below illustrates a scenario where item-level pre-authentication is used to successfully complete a payment.
Voiding an authorised payment
When you want to cancel an authorised payment, you can use the Void Payment API call to remove an item’s payment_authorised status. When you do so, the item enters a void state, and you can authorise it again if needed using the Authorise Payment API call.
The workflow shown below illustrates a scenario where item-level pre-authentication is voided.
Note: Not all payment gateways support the Void Payment API call. In this case, you can wait until a payment authorisation expires. A payment authorisation expires after:
- 7-10 business days for debit cards
- 5 days for credit cards