How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

token-io Variable Recurring Payments API

These endpoints enable you to initiate Variable Recurring Payments (VRP). Note, that VRP is also available in Payments v2 API.

token-io Variable Recurring Payments API is one of 29 APIs that Token.io publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 3 JSON Schema definitions.

Tagged areas include Variable Recurring Payments. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, a getting-started guide, a JSON-LD context, and 3 JSON Schemas.

This API exposes 6 operations across 4 paths, and defines 51 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against a single base URL, https://api.token.io.

6 operations 4 paths 51 schemas 1 DELETE4 GET1 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://api.token.io
Authentication
HTTP Bearer, API Key
Resource Areas
1

Authentication & Security 2

token-io Variable Recurring Payments API declares 2 security schemes for authenticating requests. It accepts HTTP bearer tokens (JWT) (Bearer). An API key is passed in the header as Authorization (BasicAuth).

  • Bearer — For Production and Sandbox environments. When using curl samples the authorization header is given as -H 'Authorization: Bearer + JWT' Please substitute your B…
  • BasicAuth — For Sandbox environment only. When using curl samples the authorization header is given as -H 'Authorization: YOURAPIKEYHERE' Please substitute your Basic key…

Paths & Operations 6

Across 4 paths, the API surfaces 6 operations — 1 DELETE, 4 GET, 1 POST. Each is listed below with its method, path, parameters, and response codes.

Variable Recurring Payments 6

These endpoints enable you to initiate Variable Recurring Payments (VRP). Note, that VRP is also available in Payments v2 API.

POST
/vrp-consents
Create a VRP consent
CreateVrpConsent body → 200400401403500
GET
/vrp-consents
Get VRP consents
GetVrpConsents 7 params → 200400401500
GET
/vrp-consents/{id}
Get a VRP consent
GetVrpConsent 1 param → 200401404500
DELETE
/vrp-consents/{id}
Revoke a VRP consent
RevokeVrpConsent 1 param → 200401404500
GET
/vrp-consents/{id}/payments
Get payments under a VRP consent
GetVrpConsentPayments 3 params → 200400401500
GET
/vrps/{id}/confirm-funds
Verify if funds are available or not
ConfirmFunds 2 params → 200401404500

Schemas 51

The contract defines 51 schemas that model the data the API accepts and returns. The most detailed are VrpConsentInitiation (20 properties), DeliveryAddress (10 properties), Vrp (10 properties), VrpConsent (10 properties). Each schema is shown below with its type and property counts.

VrpConsentStatus
string
The Token.io VRP consent status. PENDING - Token.io has received the request to create a VRP consent and the request has passed Token.io's validation. PENDINGM…
PeriodicLimit
object
The maximum total amount of payments in a given period under this VRP consent. If the periodAlignment is CALENDAR, the limit is pro-rated in the first period t…
3 properties 2 required
VrpsResponse
object
2 properties 2 required
VrpScheme
string
Vrp scheme, only OBLSWEEPING is supported currently.
remittanceInformationPrimary
string
The primary field for remittance information. This should contain a reference, as assigned by the creditor, to unambiguously refer to the payment transactions…
PaymentContextCode
string
This field describes the context of the payment context. This field is an OBIE standard and also maps to NextGenPsd2 's purposeCode and categoryPurposeCode fie…
FieldError
object
An error object providing details about an error caused by a particular field or fields in the request. Possible error code values include: Field.NotUnique - T…
1 property 1 required
pispConsentAccepted
boolean
This flag indicates whether the user has granted consent for the payment in the TPP's user interface.
inline_response_404_1
object
1 property 1 required
VrpConsentInitiation
object
The initiation payload for the VRP consent.
20 properties 10 required
PanDetectedError
object
Error object retured when PAN is detected in the submitted initiation payload. The error code value is PanDetected.
1 property
RefundDetails
object
The refund-related information for this payment. This field requires specific permission and is only available if paymentInitiation.returnRefundAccount is set…
4 properties 1 required
VrpNotFoundError
object
Error object returned when the given VRP cannot be found. The error code value is Resource.NotFound.
2 properties 1 required
inline_response_400_2
object
1 property 1 required
refId
string
The TPP-generated reference identifier for the token. This is not to be confused with the requestId. The refId maps to the tppRefId in the bank's consentReques…
FasterPaymentsAccount
object
A UK or Irish account where the sort code and account number are required.
2 properties 2 required
ServerError
object
This could refer to either an error by the payment service provider or the bank. When the bank reports a 5xx error, "token-external-error": "true" is set as a…
2 properties
inline_response_500
object
1 property
vrpconsents_body
object
2 properties 1 required
SepaAccount
object
SEPA account details where the iban is required and the bic is optional.
2 properties 1 required
VrpConsentNotFoundError
object
Error object returned when given VRP consent cannot be found. The error code value is Resource.NotFound.
2 properties 1 required
inline_response_403
object
1 property 1 required
callbackStatev2
string
The uniquely-generated string included as part of the URL when communicating with the bank. It is sent to the bank during payment initiation and is also return…
Authentication
object
The authentication operation required to proceed with consent creation. This is present when the consent initiation request has been created at the bank, but t…
1 property 1 required
RefundAccount
The account to which the refund should be sent.
TokenBankError
object
Error object providing details about an error related to the debtor bank. Possible error code values include: - Bank.RegistrationNotFound - unable to find regi…
2 properties
inline_response_400_1
object
1 property 1 required
remittanceInformationSecondary
string
The secondary field for remittance information. The information supplied should enable the reconciliation of an entry in an unstructured form. Depending on the…
VrpConsentResponse
object
1 property 1 required
Address
object
Address
8 properties
VrpConsent
object
The VRP consent object.
10 properties 6 required
PageInfo
object
The information about the current page, which also indicates whether the next page exists.
4 properties 1 required
Vrp
object
The VRP object.
10 properties 6 required
VRPCreditorInformation
The creditor information. The account information (one of) is required.
PermissionDeniedError
object
The error returned when the member is not authorized to perform the given operation: PermissionDenied. This error message will be accompanied by the reason fro…
1 property
Amount
object
The transaction amount and currency.
2 properties 2 required
VrpConsentsResponse
object
2 properties 2 required
VrpStatus
string
The Token.io VRP status. INITIATIONPENDING - Token.io has received the payment initiation request and it has passed Token.io's validation. INITIATIONPROCESSING…
memberId
string
The Token.io-assigned member id of the TPP.
callbackUrl
string
The TPP's url that Token.io calls back to. This url should not be under the token.io domain and must be https/SSL secure.
inline_response_401
object
1 property
Error
object
The request does not have valid authentication credentials needed to perform the operation.
2 properties
VrpInitiation
object
The VRP initiation object.
7 properties 4 required
Risk
object
This field is used to specify additional details for the risk scoring of payments.
8 properties
bankId
string
The Token.io id of the bank where the consent is created. This field is required if the customer is not using Token.io's Hosted Pages for bank selection, i.e.…
ConfirmFundsResponse
object
A flag indicating whether funds are available or not. If set to true, funds are available for transfer.
1 property
ErrorWithCode
object
Error object providing details about the error.
2 properties 2 required
SepaInstantAccount
object
SEPA Instant account details where the iban is required and the bic is optional.
2 properties 1 required
inline_response_404_2
object
1 property 1 required
VRPDebtorInformation
The debtor information. The account identifier (one of) is required if it's mandatory for the specific bank, or if the TPP decides to pass in the debtor inform…
DeliveryAddress
object
Specifies the recipient's delivery address details.
10 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

token-io-variable-recurring-payments-api-openapi.yml Raw ↑

Other APIs Token.io publishes across the network.

Token.io JavaScript SDK
Token.io PHP SDK
Token.io C# SDK
Token.io Objective-C SDK
Token.io iOS Webview SDK
Token.io Android Webview SDK
Merchant Sample (Java)
Merchant Sample (JavaScript)
Bank Sample (Java)
Personal Finance Management Sample (Java)
Merchant Integration Workshop
token-io Account on File API
Where this information came from

This is an independent, third-party profile of token-io Variable Recurring Payments API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.