Clients
Create New Client
Creates a new client linked to crypto vault and creates new wallets for each of the integrated blockchains. Clients represent external entities in segregated and consolidated vaults - they are identified by an externalId (your system's ID) and are used to separate funds and transactions by client in RoxCustody.
Body Parameters
BODY
{
"id": "client123"
}{
"id": "client123"
}Responses
201
Client Created Successfully
201
201 RESPONSE
{
"message": "Client created successfully.",
"client": {
"externalId": "client123",
"id": 4,
"createdAt": "20 August, 2025 11:18:53",
"updatedAt": "20 August, 2025 11:18:53"
},
"status": 201
}{
"message": "Client created successfully.",
"client": {
"externalId": "client123",
"id": 4,
"createdAt": "20 August, 2025 11:18:53",
"updatedAt": "20 August, 2025 11:18:53"
},
"status": 201
}404
Vault Not Found
404
404 RESPONSE
{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}422
Client ID Already Exists
422
422 RESPONSE
{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E03401"
}{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E03401"
}422
Validation Error
422
422 RESPONSE
{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E00402"
}{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E00402"
}Create Clients
Creates multiple clients at once linked to the crypto vault and creates new wallets for each of the integrated blockchains. Clients represent external entities in segregated and consolidated vaults - they are identified by an externalId (your system's ID) and are used to separate funds and transactions by client in RoxCustody.
Body Parameters
BODY
{
"ids": [
"client1",
"client2",
"client3",
"client4",
"client5"
]
}{
"ids": [
"client1",
"client2",
"client3",
"client4",
"client5"
]
}Responses
201
Clients Created Successfully
201
201 RESPONSE
{
"message": "Clients created successfully.",
"clients": [
{
"externalId": "client1",
"id": 9,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client2",
"id": 10,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client3",
"id": 11,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client4",
"id": 12,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client5",
"id": 13,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
}
],
"status": 201
}{
"message": "Clients created successfully.",
"clients": [
{
"externalId": "client1",
"id": 9,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client2",
"id": 10,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client3",
"id": 11,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client4",
"id": 12,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client5",
"id": 13,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
}
],
"status": 201
}422
Some Client IDs Already Exist
422
422 RESPONSE
{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client1"
},
{
"id": 2,
"externalId": "client2"
},
{
"id": 3,
"externalId": "client3"
}
]
},
"code": "E03401"
}{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client1"
},
{
"id": 2,
"externalId": "client2"
},
{
"id": 3,
"externalId": "client3"
}
]
},
"code": "E03401"
}404
Vault Not Found
404
404 RESPONSE
{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}422
Validation Error
422
422 RESPONSE
{
"status": 422,
"message": "Each value must not exceed 255 characters",
"errors": {
"message": "Each value must not exceed 255 characters",
"ids": [
"Each value must not exceed 255 characters",
"each value in ids must be a string",
"The ids field is required.",
"ids must not be empty",
"ids must be an array"
]
},
"code": "E00402"
}{
"status": 422,
"message": "Each value must not exceed 255 characters",
"errors": {
"message": "Each value must not exceed 255 characters",
"ids": [
"Each value must not exceed 255 characters",
"each value in ids must be a string",
"The ids field is required.",
"ids must not be empty",
"ids must be an array"
]
},
"code": "E00402"
}Create Fiat Client
Creates a new client of category FIAT linked to this vault. Allowed only for Fiat Vault credentials. Refunding Prerequisite: Under the hood, fiat deposits are only refundable if the client's bank details are known. You must provide the client's IBAN during registration to make transactions eligible for refunding. Without a registered IBAN, the payment gateway cannot identify the destination account to reverse/refund funds.
Body Parameters
BODY
{
"id": "client_external_id_123",
"name": "Full Legal Name",
"identityNumber": "1098765432",
"IBAN": "SA1234567890123456789012",
"email": "user@domain.com",
"mobile": "+966500000002"
}{
"id": "client_external_id_123",
"name": "Full Legal Name",
"identityNumber": "1098765432",
"IBAN": "SA1234567890123456789012",
"email": "user@domain.com",
"mobile": "+966500000002"
}Responses
201
Client Created Successfully
201
201 RESPONSE
{
"message": "Client created successfully.",
"client": {
"externalId": "client_external_id_123",
"name": "Full Legal Name",
"identityNumber": "1098765432",
"IBAN": "SA1234567890123456789012",
"email": "user@domain.com",
"mobile": "+966500000002",
"id": 104,
"createdAt": "20 August, 2025 11:18:53",
"updatedAt": "20 August, 2025 11:18:53"
},
"status": 201
}{
"message": "Client created successfully.",
"client": {
"externalId": "client_external_id_123",
"name": "Full Legal Name",
"identityNumber": "1098765432",
"IBAN": "SA1234567890123456789012",
"email": "user@domain.com",
"mobile": "+966500000002",
"id": 104,
"createdAt": "20 August, 2025 11:18:53",
"updatedAt": "20 August, 2025 11:18:53"
},
"status": 201
}404
Vault Not Found
404
404 RESPONSE
{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}422
Client ID Already Exists
422
422 RESPONSE
{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E03401"
}{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E03401"
}422
Validation Error
422
422 RESPONSE
{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E00402"
}{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E00402"
}Bulk Create Fiat Clients
Bulk creates clients of category FIAT linked to this vault. Allowed only for Fiat Vault credentials.
Body Parameters
BODY
{
"clients": [
{
"id": "client_1",
"name": "Name A",
"identityNumber": "1092837465",
"IBAN": "SA1234567890123456789012",
"email": "client1@domain.com",
"mobile": "+966500000003"
}
]
}{
"clients": [
{
"id": "client_1",
"name": "Name A",
"identityNumber": "1092837465",
"IBAN": "SA1234567890123456789012",
"email": "client1@domain.com",
"mobile": "+966500000003"
}
]
}Responses
201
Clients Created Successfully
201
201 RESPONSE
{
"message": "Clients created successfully.",
"clients": [
{
"externalId": "client_1",
"name": "Name A",
"identityNumber": "1092837465",
"IBAN": "SA1234567890123456789012",
"email": "client1@domain.com",
"mobile": "+966500000003",
"id": 105,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
}
],
"status": 201
}{
"message": "Clients created successfully.",
"clients": [
{
"externalId": "client_1",
"name": "Name A",
"identityNumber": "1092837465",
"IBAN": "SA1234567890123456789012",
"email": "client1@domain.com",
"mobile": "+966500000003",
"id": 105,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
}
],
"status": 201
}404
Vault Not Found
404
404 RESPONSE
{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients",
"errors": {
"message": "Vault not found, or vault type is not allowed for creating clients"
},
"code": "E05401"
}422
Client ID Already Exists
422
422 RESPONSE
{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E03401"
}{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E03401"
}422
Validation Error
422
422 RESPONSE
{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E00402"
}{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E00402"
}