Download OpenAPI specification:Download
Ztl Payment solution api
You can download the full spec by clicking on the button above, or at https://docs.ztlpay.io/ztl-api-v2.full.yaml
ztl-request-id
. This is our reference for the operation performed and you should at least log these to enable better tracing and debugging.client_id required | string |
client_secret required | string |
grant_type required | string |
scope required | string |
{- "access_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg",
- "expires_in": 3600,
- "token_type": "Bearer"
}
List of supported banks, with known constraints. Due to variations in the PSD2 APIs of the different banks, initiating a payment with certain banks may be subject to some limitations
countryCode required | string <ISO-3166> Example: NO Country code, ISO-3166 |
[- {
- "bic": "DNBANOKK",
- "constraints": {
- "maxBasketSize": 20,
- "maxInformationFieldLength": 35,
- "maxUnstructuredRemittanceInfoLength": 108,
- "aisMaxDateRangeMonths": 12,
- "cancelSCARequired": true,
- "validInformationFieldCharactersPattern": "[A-ZÆØÅa-zæøå0-9\\\\D]",
- "maxBulkSize": 20
}, - "countryCode": "NO",
- "name": "DNB BANK ASA",
- "supportedProducts": [
- "PAYMENT_DOMESTIC"
], - "branches": [
- {
- "name": "District",
- "branch": "DISTRICT"
}
]
}
]
API for consents. We try to provide a failure enum when possible, you should expect us to add more values here continuously.
Endpoint for revoking consent is not implemented yet.
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
PSU-IP-Address required | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent required | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
userId required | string The userId of the account owner providing consent. Different banks use different userId schema, Could be SSN or a userId provided by the bank. |
bic required | string The bank's international code/address. Also know as Swift code. |
callbackUrl required | string Sca callback url for Redirect authentication |
organizationNumber required | string The organization number |
preferredScaMethod | string Enum: "Qr" "Redirect" The preferred way to perform authorization. There is no guarantee that bank supports the preferred method.
|
bankBranch | string Which branch of the bank if multiple. Can be fetched from supported banks endpoint. |
{- "userId": "string",
- "bic": "ESSESESS",
- "organizationNumber": 1234567890,
- "preferredScaMethod": "Qr",
- "bankBranch": "string"
}
{- "id": "B44E9297-934D-4975-8951-7843B16DF63F",
- "status": "AWAITING_AUTHORIZATION",
- "sca": {
- "type": "qr",
- "qrImage": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=",
- "qrType": "Dynamic"
}
}
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
{- "id": "B44E9297-934D-4975-8951-7843B16DF63F",
- "status": "AWAITING_AUTHORIZATION",
- "sca": {
- "type": "qr",
- "qrImage": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=",
- "qrType": "Dynamic"
}, - "validUntil": "2022-01-01"
}
API for getting account information. We try to provide a failure enum when possible, you should expect us to add more values here continuously.
Retrieve a list and general information about the account or accounts specified in the authorized account query. Note that this information can only be fetched during 1 hour after created consent.
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
{- "accounts": [
- {
- "id": "11ab5740-f8f5-1234-abcd-b90e4253b7b8",
- "name": "Main savings account",
- "bic": "DNBANOKK",
- "bban": "12043175449",
- "iban": "NO0812043175449",
- "country": "NO",
- "type": "Debit",
- "currency": "NOK",
- "ownerName": "string"
}
]
}
Retrieve the current available and booked balance for the account specified.
accountId required | string The ID of the account, as retrieved from the list of accounts. The account ID is sometimes the same as the account bban, but this is not always the case. Also, the account ID may change each time a consent is created/refreshed. |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
{- "id": "11ab5740-f8f5-1234-abcd-b90e4253b7b8",
- "balance": {
- "booked": {
- "amount": "150.00",
- "currency": "NOK"
}, - "available": {
- "amount": "100.00",
- "currency": "NOK"
}
}
}
Retrieve the latest transaction entries on the account or accounts specified in the authorized query.
accountId required | string The ID of the account, as retrieved from the list of accounts. The account ID is sometimes the same as the account bban, but this is not always the case. Also, the account ID may change each time a consent is created/refreshed. |
fromDate | string <date, ISO-8601> Example: fromDate=2022-01-01 Entries start date, inclusive |
toDate | string <date, ISO-8601> Example: toDate=2022-01-02 Entries end date, inclusive |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
{- "accountEntries": [
- {
- "transactionId": "d1f669f2-1234-abcd-aabb-ff0cc229b485",
- "postedAmount": {
- "amount": "99.50",
- "currency": "NOK"
}, - "type": "Debit",
- "status": "Pending",
- "bookingDateTime": "2022-01-02",
- "valueDateTime": "2022-01-01",
- "purposeText": "Overføring Innland",
- "remittanceInformation": {
- "reference": 75025049,
- "unstructured": "Transfer of funds"
}, - "creditor": {
- "name": "string",
- "bban": 12043175449,
- "iban": "NO0812043175449"
}, - "debtor": {
- "name": "string",
- "bban": 12043175449,
- "iban": "NO0812043175449"
}, - "endToEndId": "string"
}
]
}
General changes from v1:
For cross-border payments, an FX payment is created to get a quote and confirm booking. We recommend to use the country requirement API to retrieve payment requirements for the receiving country, which may be used to present required user inputs. Supported country list is optional, as the country is easily obtained based on receiver Swift/BIC. Once the FX payment has been created, partner should create a domestic psd2 transaction by using the fromFx API, and follow the flow from Bank transaction flow chart after the FX transaction has been created.
Validate and initiate payment
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address required | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent required | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
required | object Metadata for the payment | ||||||||||||||||||||
| |||||||||||||||||||||
required | object Account information for debtor | ||||||||||||||||||||
| |||||||||||||||||||||
required | object Account information for creditor | ||||||||||||||||||||
| |||||||||||||||||||||
required | object Amount and currency to be paid | ||||||||||||||||||||
| |||||||||||||||||||||
dueDate required | string <date, ISO-8601> The due date for the payment | ||||||||||||||||||||
RemittanceInformationMessage (object) or RemittanceInformationOcr (object) or RemittanceInformationFik (object) remittance information | |||||||||||||||||||||
Any of
|
{- "metadata": {
- "endToEndId": "73300aef-d849-4872-b0c6-f44e07a841f3"
}, - "from": {
- "account": {
- "type": "bban",
- "bban": 12341212345
}, - "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "telephoneNumber": "+4740000858",
- "address": {
- "streetName": "Kristian IVs gate",
- "buildingNumber": 15,
- "city": "Oslo",
- "postCode": "0164",
- "country": "NO"
}
}, - "currency": "NOK"
}, - "to": {
- "account": {
- "type": "bban",
- "bban": 12341212345
}, - "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "telephoneNumber": "+4740000858",
- "address": {
- "streetName": "Kristian IVs gate",
- "buildingNumber": 15,
- "city": "Oslo",
- "postCode": "0164",
- "country": "NO"
}
}
}, - "amount": {
- "amount": 1000,
- "currency": "NOK"
}, - "dueDate": "2024-01-15",
- "remittanceInformation": {
- "type": "message",
- "value": "Payment for invoice 12345"
}
}
{- "paymentId": "7c628b2e-9094-4bf8-af23-1d517c6fc4f5",
- "paymentStatus": {
- "status": "Unsigned",
- "statusReason": null,
- "statusReasonText": "string",
- "timestamp": "2024-03-19T09:34:57.657733682+01:00"
}
}
Initiate approval of transactions
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address required | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent required | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
payments required | Array of strings <uuid> non-empty unique [ items <uuid > ] |
callbackUrl required | string Sca callback url for redirect authentication |
preferredScaMethod | string Enum: "Redirect" "Qr" |
{- "payments": [
- "175be5fc-4185-4cf1-af70-df34ead1a9ec",
- "4b24e1e8-f2ba-4d84-86a4-f5d5e4ae9af7"
], - "preferredScaMethod": "Redirect"
}
{- "id": "7c628b2e-9094-4bf8-af23-1d517c6fc4f5",
- "status": "STARTED",
- "sca": {
- "type": "qr",
- "qrImage": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=",
- "qrType": "Dynamic"
}
}
Get status of a payment
PaymentId required | string Example: 7c628b2e-9094-4bf8-af23-1d517c6fc4f5 Id received when creating the payment |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
{- "status": "Unsigned",
- "statusReason": null,
- "statusReasonText": "string",
- "timestamp": "2024-03-19T09:34:57.657733682+01:00"
}
Approval status
id required | string Example: 7c628b2e-9094-4bf8-af23-1d517c6fc4f5 Id received when creating an approval for payments |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address required | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent required | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
{- "id": "7c628b2e-9094-4bf8-af23-1d517c6fc4f5",
- "status": "STARTED",
- "sca": {
- "type": "qr",
- "qrImage": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=",
- "qrType": "Dynamic"
}
}
Initiate cancellation of a payment
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
paymentId required | string Id of the payment to cancel |
callbackUrl required | string Callback url for redirect authentication, if cancellation requires sca |
preferredScaMethod | string Enum: "Redirect" "Qr" |
{- "paymentId": "7c628b2e-9094-4bf8-af23-1d517c6fc4f5",
- "preferredScaMethod": "Redirect"
}
{- "id": null,
- "sca": null,
- "cancellationRequestStatus": "ACCEPTED",
- "currentPaymentStatus": {
- "status": "Cancelled",
- "statusReason": null,
- "statusReasonText": "string",
- "timestamp": "2024-03-19T09:34:57.657733682+01:00"
}, - "reason": null
}
Create a funding transaction for FX
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address required | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent required | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
fxPaymentId required | string Id of the FX payment |
{- "fxPaymentId": "7c628b2e-9094-4bf8-af23-1d517c6fc4f5"
}
{- "paymentId": "7c628b2e-9094-4bf8-af23-1d517c6fc4f5",
- "paymentStatus": {
- "status": "Unsigned",
- "statusReason": null,
- "statusReasonText": "string",
- "timestamp": "2024-03-19T09:34:57.657733682+01:00"
}
}
Initiates a list of payments. This endpoint is exclusively supported for banks that do not support payment baskets, currently limited to Danske Bank. For other banks, please refer to the Payment Initiation v2 and Payment Approval v2 endpoints.
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address required | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent required | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
required | Array of objects (CreatePayment) non-empty | ||||||||||||
Array (non-empty)
| |||||||||||||
callbackUrl required | string Sca callback url for redirect authentication |
{- "payments": [
- {
- "metadata": {
- "endToEndId": "73300aef-d849-4872-b0c6-f44e07a841f3"
}, - "from": {
- "account": {
- "type": "bban",
- "bban": 12341212345
}, - "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "telephoneNumber": "+4740000858",
- "address": {
- "streetName": "Kristian IVs gate",
- "buildingNumber": 15,
- "city": "Oslo",
- "postCode": "0164",
- "country": "NO"
}
}, - "currency": "NOK"
}, - "to": {
- "account": {
- "type": "bban",
- "bban": 12341212345
}, - "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "telephoneNumber": "+4740000858",
- "address": {
- "streetName": "Kristian IVs gate",
- "buildingNumber": 15,
- "city": "Oslo",
- "postCode": "0164",
- "country": "NO"
}
}
}, - "amount": {
- "amount": 1000,
- "currency": "NOK"
}, - "dueDate": "2024-01-15",
- "remittanceInformation": {
- "type": "message",
- "value": "Payment for invoice 12345"
}
}
],
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "sca": {
- "type": "qr",
- "qrImage": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=",
- "qrType": "Dynamic"
}
}
Fetches the status of a bulk along with the individual payments.
bulkId required | string Example: 7c628b2e-9094-4bf8-af23-1d517c6fc4f5 Id received when creating bulk payment |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
consent-id required | string <uuid> Example: 3a797348-ef0c-4f52-b821-fdfcdb98c4d9 A valid consentId |
PSU-IP-Address | integer <ipv4> Example: 192.158.1.38 AAA IP Address of the end-user initiating the payment. DO NOT use any other IP address than what you can collect from the current user session that uses your system (don't use something stored in your DB). This information is used by the banks to manage traffic and handle security. |
PSU-User-Agent | string Example: Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/63.0 The forwarded Agent header field of the HTTP request between PSU and TPP. Required in Sweden. |
{- "bulkStatus": "CREATED",
- "transactions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "endToEndId": "string"
}
]
}
New onboarding.
WARNING: Currently in Alpha, get in touch to investigate.
Things to consider in your implementation:
Testing signing in Sweden
To test the whole onboarding flow including signing the agreement in SANDBOX you need to follow these steps:
Test organization numbers:
Testing signing in Denmark
To test the whole onboarding flow including signing the agreement in SANDBOX you need to follow these steps:
Test organization numbers:
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
country required | string |
organizationNumber required | string |
{- "country": "SE",
- "organizationNumber": "5569994600"
}
{- "id": "941d1877-73b8-45bf-8c65-47233b58926a",
}
onboardingId required | string <uuid> |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
{- "status": "Approved"
}
Activate the subscription for the given company
countryCode required | string |
organizationNumber required | string |
{- "type": "urn:quote-failed",
- "title": "Payment rejected",
- "detail": null,
- "instance": "/api/payments/56563af2-a199-44ec-92a1-d77eed2d8562/status"
}
Cancel the subscription for the given company
countryCode required | string |
organizationNumber required | string |
{- "type": "urn:quote-failed",
- "title": "Payment rejected",
- "detail": null,
- "instance": "/api/payments/56563af2-a199-44ec-92a1-d77eed2d8562/status"
}
FX can either be used with or without bank integration. For bank integration, please see Flow for Currency CrossBorder transaction with bank integration
The partner is responsible to handle the domestic bank integration, or present the required payment instructions for domestic transaction to the user.
International payment validation request. Currently only available for selected customers. Please contact us if you're interested in testing this.
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
required | object Metadata for quote request | ||||||||||||||||||||
| |||||||||||||||||||||
required | object Information about the debtor | ||||||||||||||||||||
| |||||||||||||||||||||
required | object Information about the creditor | ||||||||||||||||||||
| |||||||||||||||||||||
required | object The amount and currency for the quote | ||||||||||||||||||||
| |||||||||||||||||||||
dueDate required | string <date, ISO-8601> The due date for the payment. NOTE: Currently only the today (i.e. current date) is allowed. Future dates will be enabled in the future | ||||||||||||||||||||
required | object Remittance information | ||||||||||||||||||||
| |||||||||||||||||||||
purposeCode | string Deprecated A code stating the purpose of the payment. (Required by some countries). Deprecated - use Information.RemittanceInformation.AdditionalInformation (type - Purpose) instead |
{- "metadata": {
- "organizationCountryCode": "NO",
- "organizationNumber": 920970931,
- "endToEndId": "73300aef-d849-4872-b0c6-f44e07a841f3"
}, - "from": {
- "bban": 12341212345,
- "bic": "DNBANOKK",
- "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "address": {
- "streetName": "Kristian IVs gate",
- "buildingNumber": 15,
- "city": "Oslo",
- "postCode": "0164",
- "country": "NO"
}
}, - "currency": "NOK",
- "country": "NO"
}, - "to": {
- "account": {
- "iban": "SE7250000000012341212345",
- "bban": 12341212345,
- "bic": "ESSESESS",
- "clearingCode": 1234
}, - "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "address": {
- "streetName": "Eriksbergsgatan",
- "buildingNumber": 10,
- "city": "Sweden",
- "postCode": 11430,
- "country": "SE"
}
}
}, - "amount": {
- "amount": 1000,
- "currency": "SEK"
}, - "dueDate": "2023-01-15",
- "remittanceInformation": {
- "unstructured": "Payment for consulting services",
- "additionalInformation": [
- {
- "type": "Reason",
- "value": "string"
}
]
}, - "purposeCode": "S1008"
}
[- {
- "code": "InvalidFromAccount",
- "reason": "Invalid from account. From and to accounts must be different.",
- "path": ".from.bban"
}
]
International payment quote request. Currently only available for selected customers. Please contact us if you're interested in testing this.
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
required | object Metadata for quote request | ||||||||||||||||||||
| |||||||||||||||||||||
required | object Information about the debtor | ||||||||||||||||||||
| |||||||||||||||||||||
required | object Information about the creditor | ||||||||||||||||||||
| |||||||||||||||||||||
required | object The amount and currency for the quote | ||||||||||||||||||||
| |||||||||||||||||||||
dueDate required | string <date, ISO-8601> The due date for the payment. NOTE: Currently only the today (i.e. current date) is allowed. Future dates will be enabled in the future | ||||||||||||||||||||
required | object Remittance information | ||||||||||||||||||||
| |||||||||||||||||||||
purposeCode | string Deprecated A code stating the purpose of the payment. (Required by some countries). Deprecated - use Information.RemittanceInformation.AdditionalInformation (type - Purpose) instead |
{- "metadata": {
- "organizationCountryCode": "NO",
- "organizationNumber": 920970931,
- "endToEndId": "73300aef-d849-4872-b0c6-f44e07a841f3"
}, - "from": {
- "bban": 12341212345,
- "bic": "DNBANOKK",
- "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "address": {
- "streetName": "Kristian IVs gate",
- "buildingNumber": 15,
- "city": "Oslo",
- "postCode": "0164",
- "country": "NO"
}
}, - "currency": "NOK",
- "country": "NO"
}, - "to": {
- "account": {
- "iban": "SE7250000000012341212345",
- "bban": 12341212345,
- "bic": "ESSESESS",
- "clearingCode": 1234
}, - "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "address": {
- "streetName": "Eriksbergsgatan",
- "buildingNumber": 10,
- "city": "Sweden",
- "postCode": 11430,
- "country": "SE"
}
}
}, - "amount": {
- "amount": 1000,
- "currency": "SEK"
}, - "dueDate": "2023-01-15",
- "remittanceInformation": {
- "unstructured": "Payment for consulting services",
- "additionalInformation": [
- {
- "type": "Reason",
- "value": "string"
}
]
}, - "purposeCode": "S1008"
}
{- "quoteId": "d6f06bfe-4830-4358-b483-c24c66cfb431",
- "endToEndId": "7c628b2e-9094-4bf8-af23-1d517c6fc4f5",
- "requestedAmount": {
- "amount": 1000,
- "currency": "SEK"
}, - "costAmount": {
- "amount": 1034.62,
- "currency": "NOK"
}, - "exchangeRate": 1.0346,
- "quoteExpiryTime": "2023-01-15T09:32:00+01:00",
- "referenceCode": "ZTL-d6f06bfe",
- "intermediaryAccount": {
- "account": {
- "iban": "SE7250000000012341212345",
- "bban": 12341212345,
- "bic": "ESSESESS",
- "clearingCode": 1234
}, - "contactInformation": {
- "name": "ZTL Payment Solution AS",
- "address": {
- "streetName": "Eriksbergsgatan",
- "buildingNumber": 10,
- "city": "Sweden",
- "postCode": 11430,
- "country": "SE"
}
}
}
}
International payment confirmation. Currently only available for selected customers. Please contact us if you're interested in testing this.
quoteId required | string quote id as for payment |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
{- "paymentId": "0db94e47-858c-4486-a0e9-a453e4da025d",
}
Cross-border payment funding confirmation. Currently only available for selected customers. Please contact us if you're interested in testing this.
paymentId required | string paymentId for the payment to be confirmedPaid |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
{- "paymentId": "0db94e47-858c-4486-a0e9-a453e4da025d",
}
International payment status inquiry. Currently only available for selected customers. Please contact us if you're interested in testing this.
paymentId required | string paymentId for the payment |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
{- "status": "PaymentFailed",
- "message": "Technical error."
}
International payment funding payment confirmation. Currently only available for selected customers. Please contact us if you're interested in testing this.
paymentId required | string paymentId for the payment to cancel |
Authorization | string <Bearer JWT> Example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkE1NEZCQjFGRjgzRTZFRUFEQUI1MTg4QTJBMkVGRDhGNTUzMEUzNDkiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJwVS03SF9nLWJ1cmF0UmlLS2k3OWoxVXc0MGsifQ.eyJuYmYiOjE1NjI4MzE1OTIsImV4cCI6MTU2MjgzNTE5MiwiaXNzIjoiaHR0cHM6Ly9vaWRjLnp0bC5zdGFjY2Zsb3cubmV0IiwiYXVkIjpbImh0dHBzOi8vb2lkYy56dGwuc3RhY2NmbG93Lm5ldC9yZXNvdXJjZXMiLCJ6dGwtYXBpIiwicG9ydGFsLWFwaSJdLCJjbGllbnRfaWQiOiJkZXZjbGllbnQiLCJzY29wZSI6WyJwYXltZW50cyIsInBvcnRhbC1hcGkiXX0.dJuDJNTsSBhQ_xmN3ruqbBZvJdyn2nUkUW3NEwbgXw_l-UA3_XRmtp16rWWdhMLbh-D_HywwG2a0h-MK2tX17C-ggsfp_pDxj8iy8aLleI3dY1qt0VkQY8rOw5_YtWa40HWwIBK9Ll8MqovwBK4lg9Pkq_KLGdkoz87n63QezS5u0JeWYJJnHFuY5ojX_M5szAdSYoVYOyvL0tr30ynxb3joglKrVWlkeawRZztRV4chFN00tlv_Tn54vDYOyDPtBWK6JpMVqhHla8a5JnslJu5dUP82qtgms_lFYOiR1oD2jaa-t0QTE6MVwspG3kwQBSSSZawe-9G4yEBg-nFSGg Bearer Authorization token - A JWT token used to authenticate the request. Please refer to the Authorization section of our docs. |
{- "message": "Payment not found.",
- "correlationId": "7757cdcb-128f-41ba-b3a6-58722e56b0f8"
}
FX can either be used with or without bank integration. For bank integration, please see Flow for Currency CrossBorder transaction with bank integration
The partner is responsible to handle the domestic bank integration, or present the required payment instructions for domestic transaction to the user.
Country payment requirements
country required | string 2-letters country code |
{- "countryCode": "SE",
- "countryName": "Sweden",
- "localCurrency": "NOK",
- "acceptedCurrencies": [
- "EUR"
], - "supportedBankAccountFormats": [
- {
- "type": "iban"
}
], - "paymentRequirements": [
- {
- "type": "additionalRemittanceInformationRequired",
- "description": "string",
- "requirementType": "PurposeCode",
- "pattern": "string",
- "validCodes": [
- {
- "code": "string",
- "description": "string"
}
], - "painArrayIndex": 0
}
]
}