Skip to content
Last updated

Notice of Change – Open Banking Improvements: CMA9 v4 API – Barclays Group

Issued: 7th May | TB-1635

AIS/PIS


What's Changing?

Barclays Group will migrate to CMA9 v4.

As part of this migration:

  • Bank raw responses are changing
  • PCC codes are changing
  • Improved error messaging
  • Changes to Balance Type Identifiers

All changes are available in the Sandbox for testing.


Does This Change Affect You?

Payment Initiation Services (PIS)

You may be impacted if:

  • You are initiating payments with Barclays Group banks using the UK Open Banking API standard, and your PIS integration relies on raw bank statuses.
  • You depend on specific bank error messages in your processes.

You are not impacted if:

  • You do not rely on raw bank responses.

Account Information Services (AIS)

You may be impacted if:

  • You are making AIS calls to Barclays Group banks using the UK Open Banking API standard, and you validate balance types in your AIS integration.

You are not impacted if:

  • You do not validate balance types in your AIS integration.

Changes in Detail

Payment Initiation Services

Standardised Payment Statuses

The bankPaymentStatus field will now return ISO 20022 standard payment status codes.

Note: Token's own status codes will remain unchanged.

If you have designed your integration to rely on raw bank statuses, you must decide how to handle the ISO 20022 mappings.

How Token Handles v4 Statuses for APIv1

Token Payment StatusISO 20022 Raw Bank Payment Statuses
PROCESSINGPDNG, RCVD, ACTC, PATC, ACCP, ACFC, ACSP, ACWC
SUCCESSACCC, ACSC, ACWP
DECLINEDBLCK, RJCT
CANCELLEDCANC (domestic scheduled payments)

How Token Handles v4 Statuses for APIv2

Token Payment StatusISO 20022 Raw Bank Payment Statuses
INITIATION_PROCESSINGPDNG, RCVD, ACTC, PATC, ACCP, ACFC, ACSP, ACWC
INITIATION_COMPLETEDACCC, ACSC, ACWP
INITIATION_DECLINEDBLCK, RJCT
INITIATION_DECLINEDCANC (domestic scheduled payments)

Consistent Error Messaging

Bank error messages will be updated to match the CMA9 v4 specification for improved clarity and consistency.

Affected Endpoints

V1 API
  • providerDetails.status
    • POST /transfers
    • GET /transfers/{transferId}
    • GET /transfers
V2 API
  • bankPaymentStatus
    • GET /v2/payments
    • GET /v2/payments/{paymentId}
VRP API
  • bankVrpConsentStatus

    • POST /vrp-consents
    • GET /vrp-consents
    • GET /vrp-consents/{id}
    • DELETE /vrp-consents/{id}
  • bankVrpStatus

    • GET /vrp-consents/{id}/payments
    • POST /vrps
    • GET /vrps
    • GET /vrps/{id}

Handling of PCC Codes

Token.io currently populates the PCC field with a default value when none is provided. However, with v4, this will no longer occur.

If you would like to include a PCC, you must provide one as part of your request.
You can find more information on the new PCCs here:

Affected Endpoints

V1 API
  • POST /token-request
V2 API
  • POST /v2/payments

Note:
If you do not send a PCC or send an incorrect PCC, your request will not fail. Token will ignore invalid PCC values and the field will be empty.
While PCC is not mandatory in CMA9 v4, it is recommended, as the Payment Context Code is a key transaction indicator and may be validated by the receiving bank.


Account Information Services

Changes to Balance Types

Existing Balance Types – v3New Balance Types – v4
ClosingAvailableCLAV
ClosingBookedCLBD
ForwardAvailableFWAV
InformationINFO
InterimAvailableITAV
InterimBookedITBD
OpeningAvailableOPAV
OpeningBookedOPBD
PreviouslyClosedBookedPRCD
ExpectedXPCD

What Action Do I Need to Take?

If you are impacted, to ensure a smooth transition we strongly recommend that you:

  • Review your implementation for payment statuses, PCC handling, and balance type identifiers.
  • Test your integration in the Sandbox environment.
  • Speak with your implementation manager, or
  • Contact us at support@token.io

When Will This Change Apply to All Impacted Customers?

21 May 2026


Where Can I Get Further Information?

For any questions, concerns, or to discuss your integration, please speak with your implementation manager or contact:
support@token.io