Download OpenAPI specification:Download
PayEasy uses API keys to authenticate all requests. You can request API keys by contacting support.
All requests must contain:
Api-Signature generation example:
PHP: base64_encode(hash_hmac('sha512', $request_uuid . $request_type . $request_uri_part, $secret_key, true))
Python: base64.b64encode(hmac.new(Secret.encode('utf-8'), (request_uuid+request_type+request_uri_part).encode('utf-8'), hashlib.sha512).digest()).decode()
PayEasy supports restriction of API calls to be accepted only from a specific IP address per API key. If you wish to whitelist your IP address, please contact support.
Retrieve account information and balance.
request_uuid required | string <= 50 characters Request unique identifier. |
{- "keyword": "TEST1",
- "active": true,
- "deposit": true,
- "withdraw": false,
- "depositFee": "1.00",
- "withdrawFee": "2.00",
- "balances": [
- {
- "asset": "ETH_TEST",
- "available": "0.08443276",
- "locked": "0.00000000"
}, - {
- "asset": "BTC_TEST",
- "available": "0.00210270",
- "locked": "0.00000000"
}
], - "depositBalances": [ ],
- "exchangeBalances": [ ]
}
View information of all assets.
request_uuid required | string <= 50 characters Request unique identifier. |
[- {
- "asset": "ETH_TEST",
- "name": "ETH testnet",
- "currency": "ETH",
- "network": "ETH",
- "decimals": 8,
- "depositEnabled": false,
- "withdrawEnabled": true,
- "minWithdraw": "0.0001",
- "maxWithdraw": "1000",
- "addressRegex": "^(0x)[0-9A-Fa-f]{40}$",
- "confirmationsRequired": 1
}
]
Retrieve deposit address for a specific user.
request_uuid required | string <= 50 characters Request unique identifier. |
asset required | string Name of the asset. |
userId required | string <= 45 characters User unique ID. |
{- "userId": "1234567",
- "asset": "BTC_TEST",
- "address": "tb1qvwe700h2q4n3urcjyh7c4xs35zmjj6sm9kh48a",
- "legacyAddress": "mpc8i5gpjYyaoV5Jvtux7nmb6H8qHKx2yU"
}
Sweep funds from your deposit wallets.
request_uuid required | string <= 50 characters Request unique identifier. |
asset | string Name of the asset. |
feeLevel | string or null Default: "MEDIUM" Enum: "LOW" "MEDIUM" "HIGH" Blockchain fee level. |
to | string or null Default: "withdrawal" Enum: "withdrawal" "exchange" Destination wallet type. |
{- "asset": "string",
- "feeLevel": "LOW",
- "to": "withdrawal"
}
{- "success": true
}
View all transactions.
request_uuid required | string <= 50 characters Request unique identifier. |
status | string Enum: "COMPLETED" "FAILED" "SUBMITTED" "CONFIRMING" Transaction status. |
type | string Enum: "deposit" "withdraw" Type of the transaction. |
asset | string Name of the asset. |
limit | integer [ 10 .. 250 ] Default: 10 Maximum number of transactions to be returned. |
offset | integer Default: 0 Offset the result set by a specific number of items. |
[- {
- "id": 56789,
- "asset": "ETH_TEST",
- "amount": "0.02",
- "networkFee": "0.0000281",
- "feeAsset": "ETH_TEST",
- "sourceAddress": "0x883437edFbd974gg1eA88a30c7580d2d4def7058",
- "destinationAddress": "0x70Fecd618b6844A166f08Ea72DFaF4882D3F080a",
- "txId": "80c39a0262e67b78a39c6cfa45ddc2478492ac8fb987910559450d918335c472",
- "status": "COMPLETED",
- "subStatus": "",
- "type": "withdraw",
- "refId": "123",
- "userId": "123456",
- "createdAt": "2022-01-10 16:14:11",
- "updatedAt": "2022-01-10 16:14:55"
}
]
Create a new withdrawal transaction.
request_uuid required | string <= 50 characters Request unique identifier. |
asset required | string Name of the asset. |
amount required | string Amount to withdraw. Number format: 123.456 (up to 8 decimal places). |
address required | string Destination address. |
tag | string Destination tag for XRP (Ripple) and TON. |
feeLevel | string Default: "MEDIUM" Enum: "LOW" "MEDIUM" "HIGH" Blockchain fee level. |
refId | string <= 45 characters Reference ID. |
userId | string <= 45 characters User unique ID. |
includeFee | boolean Default: false If set to true the network fee will be deducted from the requested amount. |
{- "asset": "string",
- "amount": "string",
- "address": "string",
- "tag": "string",
- "feeLevel": "LOW",
- "refId": "string",
- "userId": "string",
- "includeFee": false
}
{- "id": 56789
}
View a specific transaction by ID.
id required | integer Transaction ID. |
request_uuid required | string <= 50 characters Request unique identifier. |
{- "id": 56789,
- "asset": "ETH_TEST",
- "amount": "0.02",
- "networkFee": "0.0000281",
- "feeAsset": "ETH_TEST",
- "sourceAddress": "0x883437edFbd974gg1eA88a30c7580d2d4def7058",
- "destinationAddress": "0x70Fecd618b6844A166f08Ea72DFaF4882D3F080a",
- "txId": "80c39a0262e67b78a39c6cfa45ddc2478492ac8fb987910559450d918335c472",
- "status": "COMPLETED",
- "subStatus": "",
- "type": "withdraw",
- "refId": "123",
- "userId": "123456",
- "createdAt": "2022-01-10 16:14:11",
- "updatedAt": "2022-01-10 16:14:55"
}
Set refId for a deposit transaction.
id required | integer Transaction ID. |
request_uuid required | string <= 50 characters Request unique identifier. |
refId | string <= 45 characters Reference ID. |
required | any |
{- "refId": "string",
- "required": null
}
{- "success": true
}
View all invoices.
request_uuid required | string <= 50 characters Request unique identifier. |
status | string Enum: "ACTIVE" "PAID" "UNDERPAID" "EXPIRED" "CLOSED" "PENDING_APPROVAL" Invoice status. |
project | string Project key. |
limit | integer [ 10 .. 250 ] Default: 10 Maximum number of transactions to be returned. |
offset | integer Default: 0 Offset the result set by a specific number of items. |
List of invoices.
[- {
- "id": "vq29J0gYWG3nM4UWTiC7UmC8IdJoBu",
- "amount": "5.1",
- "received": "0",
- "currency": "USD",
- "items": [
- {
- "name": "test item",
- "quantity": "2",
- "price": "2.55"
}
], - "status": "ACTIVE",
- "project": "QUbO2DU9gzkfEeWbF9X2",
- "orderId": "ORDER12345",
- "dueDate": "2023-04-26 17:35:26",
- "createdAt": "2023-04-24 17:35:26",
- "updatedAt": "2023-04-24 17:35:26"
}
]
Create a new invoice.
request_uuid required | string <= 50 characters Request unique identifier. |
key required | string Project key. | ||||||
required | Array of objects (InvoiceItem) <= 100 items Invoice items. | ||||||
Array (<= 100 items)
| |||||||
orderId | string Reference order ID. |
{- "key": "string",
- "items": [
- {
- "name": "string",
- "quantity": 0,
- "price": "string"
}
], - "orderId": "string"
}
Live invoice url example.
{
}
View a specific invoice by ID.
id | string Invoice ID. |
request_uuid required | string <= 50 characters Request unique identifier. |
{- "id": "vq29J0gYWG3nM4UWTiC7UmC8IdJoBu",
- "amount": "5.1",
- "received": "0",
- "currency": "USD",
- "items": [
- {
- "name": "test item",
- "quantity": "2",
- "price": "2.55"
}
], - "status": "ACTIVE",
- "project": "QUbO2DU9gzkfEeWbF9X2",
- "orderId": "ORDER12345",
- "dueDate": "2023-04-26 17:35:26",
- "createdAt": "2023-04-24 17:35:26",
- "updatedAt": "2023-04-24 17:35:26"
}
Setting a webhook will allow you to get notifications for events such as incoming/outgoing transactions. In order to connect a Webhook to your Fireblocks workspace please contact Support and provide your Webhook's URL. Once your webhook endpoint has been set up then any supported events that occur will trigger an HTTP POST call to your endpoint.
All webhooks will be sent with the following header:
We consider a webhook attempt successful when you return a 200 HTTP status code within 30 seconds. A response body is not required. Any other status codes will be considered a failure. If a webhook attempt fails then we will resend the request after [1, 5, 10, 20, 40, 60, 120, 240, 360, 480, 600] minutes.
Transaction created.
type | string Enum: "TRANSACTION_CREATED" "TRANSACTION_UPDATED" "TRANSACTION_FAILED" "INVOICE_CREATED" "INVOICE_UPDATED" Webhook type. | ||||||||||||||||||||||||||
request_uuid | string Webhook unique identifier. | ||||||||||||||||||||||||||
datetime | string Webhook date (UTC). | ||||||||||||||||||||||||||
object (TransactionWebhook) | |||||||||||||||||||||||||||
|
{- "type": "TRANSACTION_CREATED",
- "request_uuid": "b5eda2ac-d397-425c-b162-4ae0727f88a4",
- "datetime": "2022-01-23 14:20:33",
- "transaction": {
- "id": 56789,
- "asset": "ETH_TEST",
- "amount": "0.02",
- "networkFee": "0.0000281",
- "feeAsset": "ETH_TEST",
- "sourceAddress": "0x883437edFbd974gg1eA88a30c7580d2d4def7058",
- "destinationAddress": "0x70Fecd618b6844A166f08Ea72DFaF4882D3F080a",
- "txId": "80c39a0262e67b78a39c6cfa45ddc2478492ac8fb987910559450d918335c472",
- "status": "COMPLETED",
- "subStatus": "",
- "type": "withdraw",
- "refId": "123",
- "userId": "123456"
}
}
Transaction updated.
type | string Enum: "TRANSACTION_CREATED" "TRANSACTION_UPDATED" "TRANSACTION_FAILED" "INVOICE_CREATED" "INVOICE_UPDATED" Webhook type. | ||||||||||||||||||||||||||
request_uuid | string Webhook unique identifier. | ||||||||||||||||||||||||||
datetime | string Webhook date (UTC). | ||||||||||||||||||||||||||
object (TransactionWebhook) | |||||||||||||||||||||||||||
|
{- "type": "TRANSACTION_UPDATED",
- "request_uuid": "b5eda2ac-d397-425c-b162-4ae0727f88a4",
- "datetime": "2022-01-23 14:20:33",
- "transaction": {
- "id": 56789,
- "asset": "ETH_TEST",
- "amount": "0.02",
- "networkFee": "0.0000281",
- "feeAsset": "ETH_TEST",
- "sourceAddress": "0x883437edFbd974gg1eA88a30c7580d2d4def7058",
- "destinationAddress": "0x70Fecd618b6844A166f08Ea72DFaF4882D3F080a",
- "txId": "80c39a0262e67b78a39c6cfa45ddc2478492ac8fb987910559450d918335c472",
- "status": "COMPLETED",
- "subStatus": "",
- "type": "withdraw",
- "refId": "123",
- "userId": "123456"
}
}
Transaction failed.
type | string Enum: "TRANSACTION_CREATED" "TRANSACTION_UPDATED" "TRANSACTION_FAILED" "INVOICE_CREATED" "INVOICE_UPDATED" Webhook type. | ||||||||||||||||||||||||||
request_uuid | string Webhook unique identifier. | ||||||||||||||||||||||||||
datetime | string Webhook date (UTC). | ||||||||||||||||||||||||||
object (TransactionWebhook) | |||||||||||||||||||||||||||
|
{- "type": "TRANSACTION_FAILED",
- "request_uuid": "b5eda2ac-d397-425c-b162-4ae0727f88a4",
- "datetime": "2022-01-23 14:20:33",
- "transaction": {
- "id": 56789,
- "asset": "ETH_TEST",
- "amount": "0.02",
- "networkFee": "0.0000281",
- "feeAsset": "ETH_TEST",
- "sourceAddress": "0x883437edFbd974gg1eA88a30c7580d2d4def7058",
- "destinationAddress": "0x70Fecd618b6844A166f08Ea72DFaF4882D3F080a",
- "txId": "80c39a0262e67b78a39c6cfa45ddc2478492ac8fb987910559450d918335c472",
- "status": "COMPLETED",
- "subStatus": "",
- "type": "withdraw",
- "refId": "123",
- "userId": "123456"
}
}
Invoice created.
type | string Enum: "TRANSACTION_CREATED" "TRANSACTION_UPDATED" "TRANSACTION_FAILED" "INVOICE_CREATED" "INVOICE_UPDATED" Webhook type. | ||||||||||||||||||||||||||
request_uuid | string Webhook unique identifier. | ||||||||||||||||||||||||||
datetime | string Webhook date (UTC). | ||||||||||||||||||||||||||
object (InvoiceWebhook) | |||||||||||||||||||||||||||
|
{- "type": "INVOICE_CREATED",
- "request_uuid": "b5eda2ac-d397-425c-b162-4ae0727f88a4",
- "datetime": "2022-01-23 14:20:33",
- "invoice": {
- "id": "vq29J0gYWG3nM4UWTiC7UmC8IdJoBu",
- "amount": "5.1",
- "received": "0",
- "currency": "USD",
- "items": [
- {
- "name": "test item",
- "quantity": "2",
- "price": "2.55"
}
], - "status": "ACTIVE",
- "project": "QUbO2DU9gzkfEeWbF9X2",
- "orderId": "ORDER12345",
- "dueDate": "2023-04-26 17:35:26"
}
}
Invoice updated.
type | string Enum: "TRANSACTION_CREATED" "TRANSACTION_UPDATED" "TRANSACTION_FAILED" "INVOICE_CREATED" "INVOICE_UPDATED" Webhook type. | ||||||||||||||||||||||||||
request_uuid | string Webhook unique identifier. | ||||||||||||||||||||||||||
datetime | string Webhook date (UTC). | ||||||||||||||||||||||||||
object (InvoiceWebhook) | |||||||||||||||||||||||||||
|
{- "type": "INVOICE_UPDATED",
- "request_uuid": "b5eda2ac-d397-425c-b162-4ae0727f88a4",
- "datetime": "2022-01-23 14:20:33",
- "invoice": {
- "id": "vq29J0gYWG3nM4UWTiC7UmC8IdJoBu",
- "amount": "5.1",
- "received": "0",
- "currency": "USD",
- "items": [
- {
- "name": "test item",
- "quantity": "2",
- "price": "2.55"
}
], - "status": "ACTIVE",
- "project": "QUbO2DU9gzkfEeWbF9X2",
- "orderId": "ORDER12345",
- "dueDate": "2023-04-26 17:35:26"
}
}