SpareSpare Docs
GuidesAPI Reference

Payment Consents

Manage payment consent lifecycle, list, sync, retrieve, and update consents.

GET
/consent/payment/list
Authorization
Header

Regulatory jurisdiction the request routes to (e.g. `UAE`, `KSA`, `MAIN`). Match it to the market you're integrating.

Query

1-based page number for paginated results. Defaults to the first page.

Number of items to return per page. Defaults to the API's page size.

Spare provider UUID to filter results by.

UUID of the account/consent connection to filter by.

Filter results by your own reference set when the resource was created.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/consent/payment/list" \  -H "x-tenant: KSA"
{  "data": [    {      "amount": {        "currency": {          "arabicName": "string",          "englishName": "string",          "id": "string",          "iso4117Code": "string",          "iso4117Number": "string"        },        "value": 0      },      "authorizationLink": "string",      "connection": {        "createdAt": "string",        "id": "string",        "provider": {          "address": "string",          "arabicName": "string",          "country": "string",          "englishName": "string",          "id": "string",          "isEnable": true,          "logo": "string",          "phone": "string",          "status": "string"        },        "status": "ACTIVE",        "updatedAt": "string"      },      "consentId": "string",      "consentVersion": "string",      "createdAt": "string",      "creditorAccount": {        "id": "string",        "identification": "string",        "name": "string",        "schemeName": "IBAN"      },      "debtorAccount": {        "id": "string",        "identification": "string",        "name": "string",        "schemeName": "IBAN"      },      "encryptedRefreshToken": "string",      "executionDateTime": "string",      "expiresAt": "string",      "externalReference": "string",      "note": "string",      "paymentConsentType": "SingleInstantPayment",      "paymentId": "string",      "providerId": "string",      "purpose": "string",      "resourceUri": "string",      "scope": "Accounts",      "status": "AwaitingAuthorization"    }  ],  "error": "string",  "errorDescription": {    "property1": [      "string"    ],    "property2": [      "string"    ]  },  "meta": {    "currentPageNumber": 0,    "pageSize": 0,    "totalNumberOfPages": 0  }}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "not_found",  "details": {},  "message": "string"}
GET
/consent/payment/sync
Authorization
Header

Regulatory jurisdiction the request routes to (e.g. `UAE`, `KSA`, `MAIN`). Match it to the market you're integrating.

Query

UUID of the payment request.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/consent/payment/sync" \  -H "x-tenant: KSA"
{  "data": {    "consentId": "string",    "consentVersion": "string",    "expiresAt": "string",    "paymentRequestId": "string",    "resourceUri": "string",    "status": "AwaitingAuthorization",    "wasUpdated": true  },  "error": "string",  "errorDescription": {    "property1": [      "string"    ],    "property2": [      "string"    ]  }}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "not_found",  "details": {},  "message": "string"}
PATCH
/consent/payment/update/{consentId}
Authorization
Path

UUID of the consent (returned when the consent was created).

Header

Regulatory jurisdiction the request routes to (e.g. `UAE`, `KSA`, `MAIN`). Match it to the market you're integrating.

Body
*object

Request Body

application/json

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/consent/payment/update/string" \  -H "x-tenant: KSA" \  -H "Content-Type: application/json" \  -d '{    "status": "string"  }'
{  "data": {    "amount": {      "currency": {        "arabicName": "string",        "englishName": "string",        "id": "string",        "iso4117Code": "string",        "iso4117Number": "string"      },      "value": 0    },    "authorizationLink": "string",    "connection": {      "createdAt": "string",      "id": "string",      "provider": {        "address": "string",        "arabicName": "string",        "country": "string",        "englishName": "string",        "id": "string",        "isEnable": true,        "logo": "string",        "phone": "string",        "status": "string"      },      "status": "ACTIVE",      "updatedAt": "string"    },    "consentId": "string",    "consentVersion": "string",    "createdAt": "string",    "creditorAccount": {      "id": "string",      "identification": "string",      "name": "string",      "schemeName": "IBAN"    },    "debtorAccount": {      "id": "string",      "identification": "string",      "name": "string",      "schemeName": "IBAN"    },    "encryptedRefreshToken": "string",    "executionDateTime": "string",    "expiresAt": "string",    "externalReference": "string",    "note": "string",    "paymentConsentType": "SingleInstantPayment",    "paymentId": "string",    "providerId": "string",    "purpose": "string",    "resourceUri": "string",    "scope": "Accounts",    "status": "AwaitingAuthorization"  },  "error": "string",  "errorDescription": {    "property1": [      "string"    ],    "property2": [      "string"    ]  }}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "not_found",  "details": {},  "message": "string"}
GET
/consent/payment/{consentId}
Authorization
Path

UUID of the consent (returned when the consent was created).

Header

Regulatory jurisdiction the request routes to (e.g. `UAE`, `KSA`, `MAIN`). Match it to the market you're integrating.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/consent/payment/string" \  -H "x-tenant: KSA"
{  "data": {    "amount": {      "currency": {        "arabicName": "string",        "englishName": "string",        "id": "string",        "iso4117Code": "string",        "iso4117Number": "string"      },      "value": 0    },    "authorizationLink": "string",    "connection": {      "createdAt": "string",      "id": "string",      "provider": {        "address": "string",        "arabicName": "string",        "country": "string",        "englishName": "string",        "id": "string",        "isEnable": true,        "logo": "string",        "phone": "string",        "status": "string"      },      "status": "ACTIVE",      "updatedAt": "string"    },    "consentId": "string",    "consentVersion": "string",    "createdAt": "string",    "creditorAccount": {      "id": "string",      "identification": "string",      "name": "string",      "schemeName": "IBAN"    },    "debtorAccount": {      "id": "string",      "identification": "string",      "name": "string",      "schemeName": "IBAN"    },    "encryptedRefreshToken": "string",    "executionDateTime": "string",    "expiresAt": "string",    "externalReference": "string",    "note": "string",    "paymentConsentType": "SingleInstantPayment",    "paymentId": "string",    "providerId": "string",    "purpose": "string",    "resourceUri": "string",    "scope": "Accounts",    "status": "AwaitingAuthorization"  },  "error": "string",  "errorDescription": {    "property1": [      "string"    ],    "property2": [      "string"    ]  }}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "string",  "details": {},  "message": "string"}
{  "code": "not_found",  "details": {},  "message": "string"}