The base URL for all PIS APIs is: https://rs1.openbanking.zopa.com/open-banking/v4.0/pisp/**
We currently only support redirect via a deeplink to the Zopa mobile app - this deeplink is different depending on the type of consents (AIS or PIS) and needs to be constructed as follows:
zopa://open-banking/pis-single-payment-consent?client_id={{ the client ID }}&response_type=code&scope=openid%20payments&request={{the JWT token}}
The Zopa API currently only supports:
The Zopa API does not currently support:
payment-details
end-pointsThe swagger for our PIS API can be found here
The following apply to all domestic payment consents:
The payment amount is set using the InstructedAmount/Amount
field.
Payments have the following limits which are aligned with the limits applied in the Zopa app:
Zopa suggest PISPs notify the PSU that the same limits apply as in their Zopa app. It is possible from time to time that domestic-payment-consents
is authorised, but the payment initiation fails due to account limits.
InstructedAmount/Currency
must be GBP
The payment reference is specified using RemittanceInformation/Structured/CreditorReferenceInformation/Reference
. This field is mandatory.
The reference must also:
^[a-zA-Z0-9\\/\\-?:().,’+\\s#=!\"%&*<>;{@\\r\\n]*\$
Payment requests with references which do not conform to the above will be rejected. The PISP may also opt to populate reference field on behalf of the PSU.
The only LocalInstrument
supported is Faster Payment scheme. This field, if specified, must have the value UK.OBIE.FPS
. If anything other than this is sent by PISP in consent payload then an error will be returned.
However, this field is not mandatory so we suggest PISP simply not include this field and Zopa will stage consent as a Faster Payment.
The only supported Account.SchemeName
is UK.OBIE.SortCodeAccountNumber
for both DebtorAccount
and CreditorAccount
. Any other enum provided will return error.
All payment initiation requests to Zopa must be protected using a detached JSON Web Signature (JWS) as per the Open Banking standard. This ensures the integrity and authenticity of the payment payload.
Key requirements:
PS256
(RSASSA-PSS using SHA-256). Ensure your signing library supports this algorithm.x-jws-signature
header must be included in all relevant API requests, containing the detached JWS for the request body.x-jws-signature
header.Content-Type
header to application/json
.