Home / Acquiring / Accept Payments

Credential On File Payments

Overview

Credential on File (COF) refers to payment card details stored within Highnote’s platform and authorized by the cardholder for making future purchases without re-entering card details.

Transactions are categorized as customer-initiated (CIT) or merchant-initiated (MIT), with specific processes for each. COF scenarios include unscheduled, recurring, and installment transactions, each with distinct initiation methods.

Credential On File (COF) transactions can be internal or external, with support for both raw card details and network tokens. External COF transactions require a network transaction identifier from a CIT to process further MIT transactions.

Concepts

Credential on File (COF) is a saved payment card authorized for use. The Highnote platform uses the stored credentials, including the primary account number (PAN) and expiration date, to process future transactions without requiring the customer to re-enter their information or authorization.

CIT and MIT

COF transactions are either customer-initiated (CIT) or merchant-initiated (MIT).

spacer

Customer-initiated (CIT): The cardholder actively participates in the transaction.

  • CIT COF transactions can represent the first transaction for a subscription service or a one-time payment using a previously stored method.

Merchant-initiated (MIT): The merchant is the active participant for the transaction.

  • MIT COF transactions can be one-time payments (unscheduled) or recurring payments related to subscriptions.
  • The cardholder must have previously given permission to your system for Highnote to store their payment method for future use.

Internal and external

Highnote’s platform supports internal and external COF transactions, providing the flexibility and security to match your program’s needs.

  • Internal COF transactions use tokenizied payment card details stored within the Highnote platform's secure vault.
  • External COF transactions use a third-party token service provider (TSP) with either raw payment card details or a network payment token (NPT).

Scenarios

Highnote’s platform supports the following use cases for COF transactions:

  • Unscheduled: Your system can initiate a COF transaction at any time for situations such as reloading a balance or collecting payment after conditions have been met.
  • Recurring: Your system can set up COF transactions on a schedule to handle scenarios such as subscription payments.
  • Installment: Your system may support paying for purchases over time with repeated partial authorizations through COF transactions.

Processing

Your platform must create COF transactions with an AcquiringPaymentInitiator enum set.

You must first complete a customer-initiated transaction (CIT) before your system can initiate merchant-initiated (MIT) transactions.

TypeCustomer-IT ValueMerchant-IT Value
UnscheduledCUSTOMER_INITIATED_VIA_WEBMERCHANT_INITIATED_UNSCHEDULED
CUSTOMER_INITIATED_VIA_MAIL_ORDER_OR_TELEPHONE_ORDER
RecurringCUSTOMER_INITIATED_RECURRING_FIRSTMERCHANT_INITIATED_RECURRING
InstallmentCUSTOMER_INITIATED_INSTALLMENT_FIRSTMERCHANT_INITIATED_INSTALLMENT

Recurring transactions

To initiate recurring COF payments, your system uses the enum value MERCHANT_INITIATED_RECURRING.

You begin by processing the CIT with CUSTOMER_INITIATED_RECURRING_FIRST to indicate that the customer has agreed to store the payment method for recurring payments; further transactions use the value MERCHANT_INITIATED_RECURRING.

Unscheduled transactions

To initiate unscheduled COF payments, your system uses the enum value MERCHANT_INITIATED_UNSCHEDULED.

You begin by processing the CIT with either CUSTOMER_INITIATED_VIA_WEB or CUSTOMER_INITIATED_VIA_MAIL_ORDER_OR_TELEPHONE_ORDER; further transactions use the value MERCHANT_INITIATED_UNSCHEDULED.

Installment transactions

To initiate recurring COF payments, your system uses the enum value MERCHANT_INITIATED_INSTALLMENT.

You begin by processing the CIT with CUSTOMER_INITIATED_INSTALLMENT_FIRST to indicate that the customer has agreed to store the payment method for installment payments; further transactions use the value MERCHANT_INITIATED_INSTALLMENT.

External COF (raw)

External COF transactions use a third-party token service provider (TSP) with either raw payment card details or a network payment token (NPT). This section describes how to use a TSP with raw payment card details.

Customer-initiated (CIT)

To begin, your platform must process a transaction with one of the CUSTOMER_INITIATED_ AcquiringPaymentInitiator values set on the acquiring mutation and the externalCredentialOnFile object set with intendToStore: true.

spacer

Operation

Define an acquiring mutation, such as "chargePaymentCard", requesting the properties you may need for your use case along with the networkTransactionIdentifier.

spacer

Input

  • Set the paymentInitiator as one of the CUSTOMER_INITIATED_ AcquiringPaymentInitiator values.
  • Set externalCredentialOnFile with the value intendToStore: true.

Save the resulting networkTransactionIdentifier to process further transactions.

Merchant-initiated (MIT)

To process further transactions, use a MERCHANT_INITIATED_ AcquiringPaymentInitiator values set on the acquiring mutation and the externalCredentialOnFile object set with networkTransactionIdentifier from a customer initiated transaction.

spacer

Operation

Define an acquiring mutation, such as “chargePaymentCard", requesting the properties you may need for your use case.

spacer

Input

  • Set the paymentInitiator as one of the MERCHANT_INITIATED_ AcquiringPaymentInitiator values.
  • Set externalCredentialOnFile with the value networkTransactionIdentifier from a previous customer initiated transaction.

External COF (token)

Network payment token transactions work like external COF transactions with the exception that instead of providing the payment card’s raw details, your system supplies a networkTokenization object that includes a cryptogram and a tokenRequestorIdentifier provided by the card network or a TSP.

Customer-initiated (CIT)

To begin, your platform must process a transaction with one of the CUSTOMER_INITIATED_ AcquiringPaymentInitiator values set on the acquiring mutation and the externalCredentialOnFile object set with intendToStore: true.

spacer

Operation

Define an acquiring mutation, such as ChargeNetworkPaymentToken, requesting the properties you may need for your use case along with the networkTransactionIdentifier.

spacer

Input

  • Set the paymentInitiator as one of the CUSTOMER_INITIATED_ AcquiringPaymentInitiator values.
  • Set externalCredentialOnFile with the value intendToStore: true.

Save the resulting networkTransactionIdentifier to process further transactions.

Merchant-initiated (MIT)

To process further transactions, use a MERCHANT_INITIATED_ AcquiringPaymentInitiator values set on the acquiring mutation and the externalCredentialOnFile object set with networkTransactionIdentifier from a customer initiated transaction.

spacer

Operation

Define an acquiring mutation, such as ChargeNetworkPaymentToken, requesting the properties you may need for your use case.

spacer

Input

  • Set paymentInitiator as one of the MERCHANT_INITIATED_ AcquiringPaymentInitiator values.
  • Set externalCredentialOnFile with the value networkTransactionIdentifier from a previous customer initiated transaction.

Provide Feedback

Was this content helpful?