Data Elements


KeyFormatCNDDescription
1

type

object

M

Type of credential on file payment

2

initialPayment

boolean

M

Indicates whether a card on file transaction is the first one in a series of transactions (establishment) or a subsequent transaction

3useCasestringOType of use case that is intended.

type


KeyFormatCNDDescription
1

recurring

object

C

Recurring payments are a series of transactions processed persuant to an agreement between a cardholder and a merchant where the cardholder purchases goods or services over a period of time through a number of separate transactions. Please note that in the context of PSD2 and SCA requirements the European Banking Authority (EBA) describes recurring payments as a series of transactions with the same amount and with the same payee.

In conjunction with useCase (optional):

useCase (optional)Description
absentStandard subscription use case
fixedSubscription is fixed amount, fixed duration/frequency
flexibleAmountSubscription has flexible amount, fixed duration/frequency
flexibleFrequencySubscription has fixed amount, flexible duration/frequency
2

unscheduled

string

C

Value indicating the party that initiates a credential on file transaction that does not occur on a fixed schedule.

unscheduledDescription
CITCustomer Initiated Transaction
MITMerchant Initiated Transaction

In conjunction with useCase (optional):

useCase (optional)Description
absent

Standard unscheduled use case

cofCredential On File / One-Click
ucof


recurring


KeyFormatCNDDescription
1

recurringFrequency

integer

M

Indicates the number of days between authorisations

2

recurringStartDate

string

O

Determines the date of the first authorization according to the recurring mandate

3

recurringExpiryDate

string

M

Date after which no further authorisations shall be performed


Schema

(info) BASEURL= https://www.computop-paygate.com/schemas

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://www.computop-paygate.com/schemas/credentialOnFile.json",
  "title": "credentialOnFile",
  "description": "Credential-on-File Transactions",
  "type": "object",
  "examples": [
    {
      "type": {
        "recurring": {
          "recurringFrequency": 30,
          "recurringStartDate": "2019-09-14",
          "recurringExpiryDate": "2020-09-14"
        }
      },
      "initialPayment": true
    },
    {
      "type": {
        "recurring": {
          "recurringFrequency": 30,
          "recurringStartDate": "2021-09-14",
          "recurringExpiryDate": "9999-12-31",
          "total": 24,
          "curIdx": 5,
          "cumulativeAmount": 12000
        }
      },
      "initialPayment": false
    },
    {
      "type": {
        "unscheduled": "CIT"
      },
      "initialPayment": false
    },
    {
      "type": {
        "unscheduled": "CIT"
      },
      "initialPayment": true,
      "useCase":"cof"
    },
    {
      "type": {
        "installments": {
          "total": 8,
          "curIdx": 2,
          "purchaseAmount": 800000,
          "frequency": 30,
          "expiryDate": "2020-09-30"
        }
      },
      "initialPayment": false
    },
    {
      "type": {
        "installments": {
          "total": 8,
          "curIdx": 2,
          "purchaseAmount": 800000,
          "frequency": 30,
          "expiryDate": "2020-09-30"
        }
      },
      "initialPayment": false,
      "useCase":"fixed"
    }
  ],
  "properties": {
    "type": {
      "type": "object",
      "properties": {
        "recurring": {
          "type": "object",
          "properties": {
            "total": {
              "type": "integer",
              "minimum": 1,
              "maximum": 99,
              "description": "Total number of recurring payments."
            },
            "curIdx": {
              "type": "integer",
              "minimum": 1,
              "maximum": 99,
              "description": "Current sequence number of recurring payments of the same subscription agreement."
            },
            "purchaseAmount": {
              "type": "integer",
              "minimum": 1,
              "maximum": 9999999999,
              "description": "Total amount for the subscription agreement if known, single recurring/subscription payment in API-amount."
            },
            "cumulativeAmount": {
              "type": "integer",
              "minimum": 1,
              "maximum": 9999999999,
              "description": "Cumulative amount paid so far for this subscription agreement. Credits/refunds do not reduce this amount."
            },
            "recurringFrequency": {
              "type": "integer",
              "minimum": 1,
              "maximum": 9999,
              "description": "Indicates the minimum number of days between recurring authorizations."
            },
            "recurringStartDate": {
              "type": "string",
              "format": "full-date",
              "description": "YYYY-MM-DD"
            },
            "recurringExpiryDate": {
              "type": "string",
              "format": "full-date",
              "description": "Date of subscription expiry in format YYYY-MM-DD. Use 9999-12-31 if not specified."
            }
          },
          "required": [
            "recurringExpiryDate",
            "recurringFrequency"
          ],
          "additionalProperties": false
        },
        "installments": {
          "type": "object",
          "properties": {
            "total": {
              "type": "integer",
              "minimum": 1,
              "maximum": 99,
              "description": "Total number of installment payments."
            },
            "curIdx": {
              "type": "integer",
              "minimum": 1,
              "maximum": 99,
              "description": "Current sequence number of installment payments."
            },
            "purchaseAmount": {
              "type": "integer",
              "minimum": 1,
              "maximum": 9999999999,
              "description": "Total amount for installment payment; single installment payment in API-amount."
            },
            "cumulativeAmount": {
              "type": "integer",
              "minimum": 1,
              "maximum": 9999999999,
              "description": "Cumulative amount paid by installments so far. Credits/refunds do not reduce this amount."
            },
            "frequency": {
              "type": "integer",
              "minimum": 1,
              "maximum": 9999,
              "description": "Indicates the minimum number of days between installments authorizations."
            },
            "expiryDate": {
              "type": "string",
              "format": "full-date",
              "description": "YYYY-MM-DD"
            }
          },
          "required": [
            "total",
            "purchaseAmount"
          ],
          "additionalProperties": false
        },
        "unscheduled": {
          "type": "string",
          "enum": [
            "CIT",
            "MIT"
          ],
          "description": "CIT: Customer initiated transactions; MIT: Merchant initiated transactions."
        }
      },
      "oneOf": [
        {
          "required": [
            "recurring"
          ]
        },
        {
          "required": [
            "installments"
          ]
        },
        {
          "required": [
            "unscheduled"
          ]
        }
      ],
      "additionalProperties": false
    },
    "initialPayment": {
      "type": "boolean"
    },
    "useCase": {
        "type": "string",
        "enum" : ["cof", "ucof", "fixed", "flexibleAmount", "flexibleFrequency"],
        "description": "Type of useCase (unscheduled: cof, ucof // recurring: fixed, flexibleAmount, flexibleFrequency)"
   }
  },
  "required": [
    "type",
    "initialPayment"
  ],
  "additionalProperties": false
}

Sample Recurring

{
    "type": {
        "recurring": {
            "recurringFrequency": 30,
            "recurringStartDate": "2019-09-14",
            "recurringExpiryDate": "2020-09-14"
        }
    },
    "initialPayment": true
}
{
    "type": {
        "recurring": {
            "recurringFrequency": 30,
            "recurringStartDate": "2019-09-14",
            "recurringExpiryDate": "2020-09-14"
        }
    },
    "initialPayment": true,
     "useCase": "fixed" 
}

Sample Unscheduled CIT

{
    "type": {
        "unscheduled": "CIT"
    },
    "initialPayment": false
}
{
    "type": {
        "unscheduled": "CIT"
    },
    "initialPayment": false, 
    "useCase": "cof"
}