π¦ΈββοΈCustomers
API reference for customer-related endpoints
Add a New Customer
To add a new customer to the system, use the authenticated /customer
POST
endpoint. This will initialise a new customer entity and start KYC verification process. The response contains a verification URL that redirects to our KYC partner's portal for further verification.
Creates new customer and generates a cryptographic challenge to verify ownership of blockchain account
HTTP message signature
HTTP message signature input
Idempotency key (UUID)
Content digest
Unique customer ID in a form of a valid on-chain address. This would normally correspond to customer's EOA wallet address
eip155:1:0xab16a96D359eC26a11e2C2b3d8f8B8942d5Bfcdb
Unique customer ID in a form of an external identifier. This would normally correspond to customer's ID in your system
POST /v1/customers HTTP/1.1
Host: api.offblocks.xyz
Authorization: Bearer JWT
Signature: text
Signature-Input: text
Idempotency-Key: 123e4567-e89b-12d3-a456-426614174000
Content-Digest: text
Content-Type: application/json
Accept: */*
Content-Length: 85
{
"chainId": "eip155:1:0xab16a96D359eC26a11e2C2b3d8f8B8942d5Bfcdb",
"externalId": "text"
}
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "text",
"chainId": "eip155:1:0xab16a96D359eC26a11e2C2b3d8f8B8942d5Bfcdb",
"status": "initiating",
"createdAt": "2025-07-01T22:50:04.095Z",
"updatedAt": "2025-07-01T22:50:04.095Z",
"challenge": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZZd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFvRFFnQUUzTEw1RldmVFgvL3BJaXNEL0xneFVIT2lxdlFTSUVWTgpGekloOTdLZXBlWk1iZVZsUGd1akZ4Yk5MN2x1ZVhRQnBpUWUzNmZLN0xSbXZNNHdEaWZFTkE9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0="
}
Customer Entity Updates
Any internal updates to the customer entity will trigger a webhook update event. For details on how to set up and manage webhook subscriptions, please refer to Webhooks.
Blockchain Updates
In order to proceed with customer verification, a challenge needs to be signed and verified (see Blockchain Updates).
Retrieve Customer Entities
To retrieve a list of all customer entities registered for the programme, make a GET
request to /customers
.
Retrieves customers' details
HTTP message signature
HTTP message signature input
GET /v1/customers HTTP/1.1
Host: api.offblocks.xyz
Authorization: Bearer JWT
Signature: text
Signature-Input: text
Accept: */*
[
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "text",
"chainId": "eip155:1:0xab16a96D359eC26a11e2C2b3d8f8B8942d5Bfcdb",
"status": "initiating",
"createdAt": "2025-07-01T22:50:04.095Z",
"updatedAt": "2025-07-01T22:50:04.095Z"
}
]
Retrieve an Individual Customer
To retrieve information about an individual customer, make a GET
request to /customers/{customerId}
with customer ID as a path parameter.
Retrieves customer's details
Unique customer ID
HTTP message signature
HTTP message signature input
GET /v1/customers/{customerId} HTTP/1.1
Host: api.offblocks.xyz
Authorization: Bearer JWT
Signature: text
Signature-Input: text
Accept: */*
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "text",
"chainId": "eip155:1:0xab16a96D359eC26a11e2C2b3d8f8B8942d5Bfcdb",
"status": "initiating",
"createdAt": "2025-07-01T22:50:04.095Z",
"updatedAt": "2025-07-01T22:50:04.095Z"
}
Deactivate a Customer
To deactivate a customer, use a PATCH
request to /customers/{customerId}/deactivate
. This will also deactivate all associated resources, such as accounts and cards.
Deactivates customer and all associated resources
Unique customer ID
HTTP message signature
HTTP message signature input
Idempotency key (UUID)
PATCH /v1/customers/{customerId}/deactivate HTTP/1.1
Host: api.offblocks.xyz
Authorization: Bearer JWT
Signature: text
Signature-Input: text
Idempotency-Key: 123e4567-e89b-12d3-a456-426614174000
Accept: */*
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "text",
"chainId": "eip155:1:0xab16a96D359eC26a11e2C2b3d8f8B8942d5Bfcdb",
"status": "initiating",
"createdAt": "2025-07-01T22:50:04.095Z",
"updatedAt": "2025-07-01T22:50:04.095Z"
}
Reactivate a Customer
To reactivate a previously deactivated customer, use a PATCH
request to /customers/{customerId}/activate
.
Activates customer and all associated resources
Unique customer ID
HTTP message signature
HTTP message signature input
Idempotency key (UUID)
PATCH /v1/customers/{customerId}/activate HTTP/1.1
Host: api.offblocks.xyz
Authorization: Bearer JWT
Signature: text
Signature-Input: text
Idempotency-Key: 123e4567-e89b-12d3-a456-426614174000
Accept: */*
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"externalId": "text",
"chainId": "eip155:1:0xab16a96D359eC26a11e2C2b3d8f8B8942d5Bfcdb",
"status": "initiating",
"createdAt": "2025-07-01T22:50:04.095Z",
"updatedAt": "2025-07-01T22:50:04.095Z"
}
Last updated