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 operations4 paths51 schemas1 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
CreateVrpConsentbody→ 200400401403500
GET
/vrp-consents
Get VRP consents
GetVrpConsents7 params→ 200400401500
GET
/vrp-consents/{id}
Get a VRP consent
GetVrpConsent1 param→ 200401404500
DELETE
/vrp-consents/{id}
Revoke a VRP consent
RevokeVrpConsent1 param→ 200401404500
GET
/vrp-consents/{id}/payments
Get payments under a VRP consent
GetVrpConsentPayments3 params→ 200400401500
GET
/vrps/{id}/confirm-funds
Verify if funds are available or not
ConfirmFunds2 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 properties2 required
VrpsResponse
object
2 properties2 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 property1 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 property1 required
VrpConsentInitiation
object
The initiation payload for the VRP consent.
20 properties10 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 properties1 required
VrpNotFoundError
object
Error object returned when the given VRP cannot be found. The error code value is Resource.NotFound.
2 properties1 required
inline_response_400_2
object
1 property1 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 properties2 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 properties1 required
SepaAccount
object
SEPA account details where the iban is required and the bic is optional.
2 properties1 required
VrpConsentNotFoundError
object
Error object returned when given VRP consent cannot be found. The error code value is Resource.NotFound.
2 properties1 required
inline_response_403
object
1 property1 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 property1 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 property1 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 property1 required
Address
object
Address
8 properties
VrpConsent
object
The VRP consent object.
10 properties6 required
PageInfo
object
The information about the current page, which also indicates whether the next page exists.
4 properties1 required
Vrp
object
The VRP object.
10 properties6 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 properties2 required
VrpConsentsResponse
object
2 properties2 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 properties4 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 properties2 required
SepaInstantAccount
object
SEPA Instant account details where the iban is required and the bic is optional.
2 properties1 required
inline_response_404_2
object
1 property1 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.
Every API here is available over the API and to AI agents over MCP. APIs is not yet its own endpoint on the v1 API. Reach this content through network search and the tag graph, or the MCP server below.
Installs https://mcp.apievangelist.com/mcp in Claude, Cursor, VS Code and the rest — one button, every client.
MCP tools for apis
4 tools reach this content
search_api_evangelistSearch every content type across the network at once.
find_relatedThe shared-tag relevance graph — what else covers this.
get_tagEverything one tag labels, across all content types.
guide_topicPRO — a curated bundle for a topic: area, guidance, rules, papers, stories, services.
A second provider on the same verified email joins the account you already have.
Your account
ⓘ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.