DocumentationRecipesAPI ReferenceChangelog
Documentation

Card-on-file transaction

Card-on-file transaction allows merchants to securely store their customer's cards detail and use it for future payment. Commonly used on saved card and recurring subscriptions payment.

Typically, first payment is initiated by customer and card will be save upon payment completed. The saved card credential will be allowed to use in future payment.

❗️

Who need to concern

Merchant who are sending

  • saved card payment (Tokenisation)
  • recurring payment
📘

Migrate existing transaction to Card-on-file model

For merchant who want to convert existing transactions to support COF , please refer to Convert existing transactions to card-on-file model.


Customer-Initiated Transaction

Payment that triggered directly by the customer.

  • Commonly used on saved card scenario
  • Recommended to trigger 3DS authentication for first time
  • Card can be saved for future transactions

How to implement

Payment Token API

FieldsMerchants need to send
transactionInitiatorC: Customer Initiated Transaction
request3DS
  • Y/F : request 3ds
  • N : request non-3ds
storeCredentials
  • F: CIT First time payment
  • S: CIT Subsequent payment
tokenize or tokenizeOnly
  • Y : required store card
*Note : only required when merchant is using 2c2p tokenization service

Payment Response (Backend)

FieldsMerchants need to handle
schemePaymentID

Payment id that is return from the scheme (eg. Visa/Master)

Merchant required to save this value to their application and used it for future payment.

customerToken
or
cardToken (v4.2 & below)
Unique token id return from 2c2p


Merchant-Initiated Transaction

Payment started by the merchant without the customer actively taking part.

  • Commonly used in Recurring / Subscription
  • MIT transactions allow to trigger only with customer consent
  • Payment must have references to first payment CIT

How to implement

Payment Token API

FieldsMerchants need to send
transactionInitiatorM: Merchant Initiated Transaction
request3DS
  • N : request non-3ds
storeCredentials
  • S: Subsequent payment
previousPaymentID

Required to send schemePaymentID that received from CIT transaction

This Payment ID will pass through to scheme network as a reference to the first CIT payment.

customerToken
or
cardToken (v4.2 & below)
Merchants send token id to replace the PAN
*Note : only required when merchant is using 2c2p tokenization service