Subscriptions
Card-on-File (CoF) Transactions
A Credential-on-File (CoF) transaction allows merchants to securely store a cardholder’s payment credentials for future payments.
CoF transactions are commonly used to streamline the checkout experience for returning customers and support use cases such as:
- One-click payments
- Recurring subscriptions
- Automatic balance top-ups
- Pay-per-use services
- Unscheduled recurring payments
To initiate a cardholder-absent transaction, the following stages must be completed.
Initial Transaction
The initial transaction must be a cardholder-present transaction completed with explicit cardholder consent. According to card scheme requirements, the first transaction in a CoF series must be authenticated using 3D Secure (3DS). This is mandatory for EEA transactions and strongly recommended globally.
During Session generation, please include the following parameter:
token_id: INIT
https://pay4.sandbox.payabl.com/pay/payment/get_payment_widget_session?merchantid=gateway_test&orderid=Payabl%20Test&amount=5¤cy=EUR¬ification_url=https://webhook.site/3d0d04fe-f572-4b39-bdb5-9e9551b853c8&shop_url=https://127.0.0.1:5500&[email protected]&customerip=127.0.0.1&token_id=INIT&firstname=Test&lastname=Test&signature=5bde11263144818611c8b1c57d48ed21ee387ff3Subsequent Transaction
Subsequent CoF transactions can be performed as either:
-
Cardholder Initiated Transaction (CIT): The cardholder is actively involved in the payment process.
Examples:
- One-click checkout
- Quick checkout using a previously stored card
- Transactions where the customer enters the CVV/CVC again
-
Merchant Initiation Transaction (MIT): The merchant initiates the transaction without the cardholder being present.
Examples:
- Subscription renewals
- Automatic balance top-ups
- Usage-based billing
For all subsequent transactions, please use the /authorize API endpoint..
https://sandbox.payabl.com/pay/backoffice/payment_authorizeCVV/CVC is mandatory for further CoF transactions by default. If you want to disable this feature, please contact your onboarding or account manager.
Option 1: CIT with cvc_code
Use this option when the customer actively participates in the transaction and provides the card CVV/CVC.
Required Parameters
cvc_code: Card validation code.token_id: The initial transaction id from step 1.
Request example
POST data:
merchantid=gateway_test&amount=1.23¤cy=USD&orderid=PowerCash21-Test&language=en&
gender=M&lastname=Mann&street=An+der+Welle+4&zip=60322&city=Frankfurt&country=DEU&
customerid=&salutation=Herr&title=&firstname=Muster&company=PowerCash21&birthday=07071971&
house=19&postbox=&state=HE&[email protected]&phone=00496975938501&fax=&mobile=&
customerip=127.0.0.1&custom1=123456&payment_method=1&token_id=80780000&cvc_code=123
&signature=90fc328b8ede3f3a4275ec0d213e93d342a0fa5c
Response example
transactionid=80780001&transid=80780001&status=0&errormessage=&errmsg=&amount=1.23&
price=1.23¤cy=USD&orderid=PowerCash21-Test&user_id=10088265
Option 2: CIT with cof=cit
Use this option for customer-initiated payments where the cardholder is present but CVV/CVC collection is not required, such as one-click payments.
Required Parameters
cof: cit.token_id: The initial transaction id from step 1.
Request example
POST data:
merchantid=gateway_test&amount=1.23¤cy=USD&orderid=PowerCash21-Test&
language=en&gender=M&lastname=Mann&street=An+der+Welle+4&zip=60322&
city=Frankfurt&country=DEU&customerid=&salutation=Herr&title=&
firstname=Muster&company=PowerCash21&birthday=07071971&house=19&
postbox=&state=HE&[email protected]&phone=00496975938501&
fax=&mobile=&customerip=127.0.0.1&custom1=123456&
payment_method=1&token_id=80780000&cof=cit&
signature=90fc328b8ede3f3a4275ec0d213e93d342a0fa5c
Response example
transactionid=80780001&transid=80780001&status=0&
errormessage=&errmsg=&amount=1.23&price=1.23&
currency=USD&orderid=PowerCash21-Test&user_id=10088265
3DS for Subsequent CIT Transactions
By default, subsequent Customer-Initiated Transactions (CIT) in a Card-on-File (COF) flow do not require a 3DS authentication. If needed, you can enable 3DS CIT transactions upon request. Please contact your Client Relations Manager
Flow Overview
When 3DS is enabled for subsequent CIT transactions:
- The /authorize response returns a url_3ds
- Redirect the cardholder to the provided URL
- The cardholder completes 3DS authentication
- A final callback is sent to your notification URL
You can test using the following public Sandbox credentials:
- Merchant ID: gateway_test_3d
- Secret: b185
Please see below API request and response examples:
Request example
https://sandbox.payabl.com/pay/backoffice/payment_authorize?merchantid=gateway_test_3d&amount=5&payment_method=1¤cy=EUR&orderid=Payabl-Test¬ification_url=https://webhook.site/d17ae7e3-4e6f-4f2c-b74f-25bc16b3773f&[email protected]&customerip=127.0.0.1&ccn=5232050000010003&cvc_code=325&exp_month=09&exp_year=2025&url_return=https://payabl.com/&token_id=216195626&cof=cit&signature=235e74928d5382ce09cbf685b17cb34f4fd9e438
Response example
transactionid=80780001&transid=80780001&status=0&
errormessage=&errmsg=&amount=1.23&price=1.23&
currency=USD&orderid=PowerCash21-Test&user_id=10088265transactionid=216195635&transid=216195635&status=2000&errormessage=pending&errmsg=pending&amount=5&price=5¤cy=EUR&orderid=Payabl-Test&bin=523205&payment_method=1&ccn_four=0003&card_type=Mastercard&cardholder=&expiry_month=09&expiry_year=2025&bin_country=USA&user_id=1085679&url_3ds=https%3A%2F%2Fpay4.sandbox.payabl.com%2F3dss%2Ftest%2Fv2%2FBB80FAFCB833469F98E7B6789973778D%2FredirectFinal callback example
type=capture&transactionid=216195635&security=5b758e9d347227773196fcb7778997fc53878a33&orderid=Payabl-Test&errorcode=0&errormessage=type=capture&transactionid=216195635&security=5b758e9d347227773196fcb7778997fc53878a33&orderid=Payabl-Test&errorcode=0&errormessage=Option 3: MIT
Use this option for merchant-initiated transactions where the cardholder is not actively involved in the payment flow.
Required Parameters
cof: mit.token_id: The initial transaction id from step 1.
Request example
POST data:
merchantid=gateway_test&amount=1.23¤cy=USD&orderid=PowerCash21-Test&
language=en&gender=M&lastname=Mann&street=An+der+Welle+4&zip=60322&
city=Frankfurt&country=DEU&customerid=&salutation=Herr&title=&
firstname=Muster&company=PowerCash21&birthday=07071971&house=19&
postbox=&state=HE&[email protected]&phone=00496975938501&
fax=&mobile=&customerip=127.0.0.1&custom1=123456&
payment_method=1&token_id=80780000&cof=mit&
signature=8bfd791a16d247d2c26b5d07acc98d17fe3227a3
Response example
transactionid=80780002&transid=80780002&status=0&
errormessage=&errmsg=&amount=1.23&price=1.23&
currency=USD&orderid=PowerCash21-Test&user_id=10088265
Please contact your Client Relations Manager to enable CoF function for your account
Updated about 6 hours ago
