La section orders inclut des méthodes pour créer un ordre et ajouter l’e-mail d’un utilisateur à un ordre existant. Grâce aux méthodes disponibles, vous pouvez initier un échange en créant un ordre, ainsi qu’associer un e-mail pour recevoir des notifications sur son statut.
Documentation
Description générale
Cet endpoint permet d’associer l’e-mail d’un utilisateur à un ordre déjà créé. Après l’appel de cette méthode, le champ userEmail de l’ordre est défini sur l’adresse fournie, et les notifications concernant les changements de statut de la transaction seront envoyées à cette adresse.
Paramètres
En-têtes (Headers)
| Nom | Obligatoire | Description |
|---|---|---|
X-Api-Public-Key |
oui | Votre clé API publique pour authentifier la requête. |
X-Api-Timestamp |
oui | Horodatage au format UNIX (ms). Utilisé pour empêcher les attaques de relecture (replay attacks). |
X-Api-Signature |
oui | Signature HMAC de l’intégralité du corps de la requête, générée à l’aide de votre clé secrète. |
Corps de la requête (JSON)
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
orderId |
number | oui | Identifiant de l’ordre existant. |
userEmail |
string | oui | L’adresse e-mail pour les notifications. |
Exemple de requête
curl -X POST 'https://quickex.io/api/v2/orders/public/set-email' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -H 'X-Api-Public-Key: yourPublicKey' \ -H 'X-Api-Timestamp: 1691397292905' \ -H 'X-Api-Signature: yourHmacSignature' \ -d '{ "orderId": 12345, "userEmail": "user@example.com" }'
Réponses possibles
200 OK — l’e-mail a été ajouté avec succès. 403 ERR_FORBIDDEN — en-têtes requis manquants ou signature invalide :
{ "status": "ERR_FORBIDDEN", "message": "Header params is missed!" }
Cas d’utilisation
Un partenaire intégrateur intègre Quickex dans son application et souhaite activer automatiquement les notifications par e-mail après la création d’un ordre :
- Le client crée un ordre via
/api/v2/orders/public/create. - Dès qu’il reçoit le
orderId, le système appelle/api/v2/orders/public/set-emailpour associer l’e-mail. - Lorsque des fonds sont déposés ou retirés, Quickex envoie des notifications à l’adresse
userEmailspécifiée.
Code Sample
curl -X 'GET' \
'https://quickex.io/api/v2/orders?order=asc' \
-H 'accept: application/json' \
-H 'X-Api-Public-Key: {YOUR_PUBLIC_KEY}' \
-H 'X-Api-Timestamp: {UNIX_MS_TIMESTAMP}' \
-H 'X-Api-Signature: {SIGNATURE}' \Response Example
[
{
"orderId": 2096,
"destinationAddress": "rMZiLhMHDKHSD9mMurzvixQGKFsDNLLP1",
"createdAt": "2024-11-21T09:57:37.536Z",
"updatedAt": "2024-11-21T09:57:37.536Z",
"destinationAddressMemo": null,
"refundAddress": null,
"refundAddressMemo": null,
"claimedDepositAmount": "11905.4",
"claimedNetworkFee": "0.25",
"amountToGet": "2000.535980286546",
"amountToGetUSDT": "0",
"amountToWithdrawFact": "0",
"amountToWithdrawFactUSDT": "0",
"instrumentFromCurrencyTitle": "TRX",
"instrumentFromNetworkTitle": "TRX",
"instrumentToCurrencyTitle": "XRP",
"instrumentToNetworkTitle": "XRP",
"ip": "165.22.73.162",
"geoCode": "DE",
"markup": "0",
"userEmail": "qa@support.quickex.io",
"completed": false,
"state": "created"
},
{
"orderId": 2097,
"destinationAddress": "rMZiLhMHDKHSD9mMurzvixQGKFsDNLLP1",
"createdAt": "2024-11-21T09:57:56.849Z",
"updatedAt": "2024-11-21T09:57:56.849Z",
"destinationAddressMemo": null,
"refundAddress": null,
"refundAddressMemo": null,
"claimedDepositAmount": "500",
"claimedNetworkFee": "0.25",
"amountToGet": "88.201060256891",
"amountToGetUSDT": "0",
"amountToWithdrawFact": "0",
"amountToWithdrawFactUSDT": "0",
"instrumentFromCurrencyTitle": "TRX",
"instrumentFromNetworkTitle": "TRX",
"instrumentToCurrencyTitle": "XRP",
"instrumentToNetworkTitle": "XRP",
"ip": "165.22.73.162",
"geoCode": "DE",
"markup": "0",
"userEmail": "qa@support.quickex.io",
"completed": false,
"state": "created"
},
{
"orderId": 3038,
"destinationAddress": "TFjfHBiDcL6B5S5W8g9b6gU2tbvnTR52ya",
"createdAt": "2025-04-28T13:15:03.006Z",
"updatedAt": "2025-07-22T10:36:58.557Z",
"destinationAddressMemo": null,
"refundAddress": null,
"refundAddressMemo": null,
"claimedDepositAmount": "0.034268",
"claimedNetworkFee": "1.5",
"amountToGet": "3263.05",
"amountToGetUSDT": "3263.058154",
"amountToWithdrawFact": "0",
"amountToWithdrawFactUSDT": "0",
"instrumentFromCurrencyTitle": "BTC",
"instrumentFromNetworkTitle": "BTC",
"instrumentToCurrencyTitle": "USDT",
"instrumentToNetworkTitle": "TRC20",
"ip": "45.76.90.73",
"geoCode": "DE",
"markup": "0",
"userEmail": "qa@support.quickex.io",
"completed": false,
"state": "created"
},
{
"orderId": 3172,
"destinationAddress": "TPjT9p6UK5omA19h1QuYf4HbWvB9CukMzx",
"createdAt": "2025-11-25T07:52:52.871Z",
"updatedAt": "2025-11-27T11:34:19.690Z",
"destinationAddressMemo": null,
"refundAddress": null,
"refundAddressMemo": null,
"claimedDepositAmount": "52",
"claimedNetworkFee": "2.054188275293",
"amountToGet": "419.2",
"amountToGetUSDT": "114.402051690569",
"amountToWithdrawFact": "417.825363",
"amountToWithdrawFactUSDT": "114.0245415627",
"instrumentFromCurrencyTitle": "XRP",
"instrumentFromNetworkTitle": "XRP",
"instrumentToCurrencyTitle": "TRX",
"instrumentToNetworkTitle": "TRX",
"ip": "77.246.100.22",
"geoCode": "NL",
"markup": "0",
"userEmail": "qa@support.quickex.io",
"completed": true,
"state": "withdraw"
},
{
"orderId": 3192,
"destinationAddress": "15vvDFQFksUS4r1cYxmjZuTVVUzWZSJauuUapg7Xjhgtkwqy",
"createdAt": "2025-12-02T14:11:15.985Z",
"updatedAt": "2025-12-02T14:11:16.107Z",
"destinationAddressMemo": null,
"refundAddress": "UQCGxjLy3msAFWG4r310Sk_rOz27QWRy252fdLMWJAMQJvSE",
"refundAddressMemo": null,
"claimedDepositAmount": "3300",
"claimedNetworkFee": "0.14",
"amountToGet": "2363.663",
"amountToGetUSDT": "4999.384629917638",
"amountToWithdrawFact": "0",
"amountToWithdrawFactUSDT": "0",
"instrumentFromCurrencyTitle": "TON",
"instrumentFromNetworkTitle": "TON",
"instrumentToCurrencyTitle": "DOT",
"instrumentToNetworkTitle": "DOT",
"ip": "77.246.100.22",
"geoCode": "NL",
"markup": "0",
"userEmail": null,
"completed": false,
"state": "created"
},
{
"orderId": 3193,
"destinationAddress": "15vvDFQFksUS4r1cYxmjZuTVVUzWZSJauuUapg7Xjhgtkwqy",
"createdAt": "2025-12-02T14:14:34.356Z",
"updatedAt": "2025-12-02T14:14:34.557Z",
"destinationAddressMemo": null,
"refundAddress": "UQCGxjLy3msAFWG4r310Sk_rOz27QWRy252fdLMWJAMQJvSE",
"refundAddressMemo": null,
"claimedDepositAmount": "73",
"claimedNetworkFee": "0.14",
"amountToGet": "52.235",
"amountToGetUSDT": "110.556162356583",
"amountToWithdrawFact": "0",
"amountToWithdrawFactUSDT": "0",
"instrumentFromCurrencyTitle": "TON",
"instrumentFromNetworkTitle": "TON",
"instrumentToCurrencyTitle": "DOT",
"instrumentToNetworkTitle": "DOT",
"ip": "77.246.100.22",
"geoCode": "NL",
"markup": "0",
"userEmail": null,
"completed": false,
"state": "created"
}
]Try it out
Leave empty to use default
Query Parameters
Request Body
Headers
Documentation
Description générale
Cet endpoint permet de créer un nouvel ordre d’échange de cryptomonnaies. Il renvoie toutes les informations relatives à l’ordre : adresses de dépôt et de retrait, paramètres du taux, événements et URLs pour un traitement ultérieur.
Paramètres
En-têtes (Headers)
| Nom | Obligatoire | Description |
|---|---|---|
B2B-Bearer-Token |
oui | Jeton Bearer pour l’authentification via Mercuryo. |
X-Api-Public-Key |
oui | Votre clé API publique. |
X-Api-Timestamp |
oui | Horodatage au format UNIX (ms). |
X-Api-Signature |
oui | Signature HMAC du corps de la requête, générée à l’aide de votre clé secrète. |
Corps de la requête (JSON)
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
instrumentFrom |
object | oui | Monnaie et réseau source (currencyTitle / networkTitle). |
instrumentTo |
object | oui | Monnaie et réseau de destination. |
destinationAddress |
string | oui | Adresse pour recevoir les fonds échangés. |
destinationAddressMemo |
string | non | Memo/tag facultatif pour l’adresse de destination. |
refundAddress |
string | oui | Adresse de remboursement en cas d’échec de l’échange. |
refundAddressMemo |
string | non | Memo/tag pour l’adresse de remboursement. |
claimedDepositAmount |
string | oui | Montant que l’utilisateur prévoit de déposer. |
claimedPublicRate |
object | non | Détails du taux déclaré : prix, date de mise à jour, montant attendu. |
claimedNetworkFee |
string | non | Frais réseau déclarés. |
userEmail |
string | non | Email pour les notifications. |
legacyOrderId |
string | non | ID externe provenant d’un ancien système. |
referrerId |
string | non | ID du référent pour le programme d’affiliation. |
markupAffiliateId |
string | non | ID d’affilié pour la répartition du markup. |
rateMode |
string | non | Type de taux : FLOATING ou FIXED. |
utmData |
object | non | Paramètres UTM pour l’analyse. |
browserFingerprint |
string | non | Empreinte du navigateur pour la protection antifraude. |
markup |
string | non | Pourcentage du markup. |
mercuryoBearerToken |
string | non | Jeton Mercuryo pour intégration optionnelle. |
locale |
string | non | Langue de la réponse (par ex. en, ru). |
Exemple de requête
curl -X POST 'https://quickex.io/api/v2/orders/public/create' \ -H 'accept: application/json' \ -H 'B2B-Bearer-Token: yourMercuryoToken' \ -H 'X-Api-Public-Key: yourPublicKey' \ -H 'X-Api-Timestamp: 1691397873000' \ -H 'X-Api-Signature: yourHmacSignature' \ -H 'Content-Type: application/json' \ -d '{ "instrumentFrom": { "currencyTitle": "USDT", "networkTitle": "TRC20" }, "instrumentTo": { "currencyTitle": "LTC", "networkTitle": "LTC" }, "destinationAddress": "MWYK4uQXFvWc1Bj1CPACyX5HTQxUUpRZ2e", "refundAddress": "TFe5tdqSy8CMGMDVHPJHLTK8hrAL6ddUpD", "claimedDepositAmount": "3300", "claimedPublicRate": { "price": "0.014271620139287839394", "updatedAt": "2024-02-13T14:43:12.983Z", "claimedAmountToReceive": "47.09634645964987" }, "claimedNetworkFee": "0.001", "userEmail": "test@example.com", "referrerId": "aff_some-affiliate-id", "markupAffiliateId": "aff_some-affiliate-id", "rateMode": "FLOATING", "markup": "0.01", "mercuryoBearerToken": "string", "locale": "ru" }'
Réponses possibles
200 OK — ordre créé avec succès ; l’objet complet de l’ordre est renvoyé. 401 ERR_UNAUTHORIZED — jetons/clefs manquants ou invalides :
{ "status": "ERR_UNAUTHORIZED", "message": "Unauthorized" }
Cas d’utilisation
Une plateforme partenaire souhaite créer automatiquement des ordres lorsqu’un utilisateur paie via Mercuryo. Après l’authentification via Mercuryo, un B2B-Bearer-Token est fourni, puis la plateforme assemble les données d’échange et appelle cet endpoint pour créer un ordre sur Quickex.
Code Sample
curl -X 'POST' \
'https://quickex.io/api/v2/orders/public/create' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-Api-Public-Key: {YOUR_PUBLIC_KEY}' \
-H 'X-Api-Timestamp: {UNIX_MS_TIMESTAMP}' \
-H 'X-Api-Signature: {SIGNATURE}' \
-d '{
"instrumentFrom": { "currencyTitle": "USDT", "networkTitle": "TRC20" },
"instrumentTo": { "currencyTitle": "LTC", "networkTitle": "LTC" },
"destinationAddress": "MWYK4uQXFvWc1Bj1CPACyX5HTQxUUpRZ2e",
"destinationAddressMemo": null,
"refundAddress": "TFe5tdqSy8CMGMDVHPJHLTK8hrAL6ddUpD",
"refundAddressMemo": null,
"claimedDepositAmount": "3300",
"claimedPublicRate": {
"price": "0.014271620139287839394",
"updatedAt": "2024-02-13T14:43:12.983Z",
"claimedAmountToReceive": "47.09634645964987"
},
"claimedNetworkFee": "0.001",
"userEmail": "test@example.com",
"referrerId": "aff_some-affiliate-id",
"markupAffiliateId": "aff_some-affiliate-id",
"rateMode": "FLOATING",
"utmData": {},
"browserFingerprint": "string",
"markup": "0.01",
"mercuryoBearerToken": "string",
"locale": "string"
}'Response Example
{
"deposits": [
{
"createdAt": "2025-12-02T08:52:08.178Z",
"instrument": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"amount": "1000.1",
"confirmations": 0,
"txId": "0xdeadc0dedeadbeef",
"depositAddress": "0xdeadc0de",
"isPending": true,
"id": 0,
"counterPartyAddress": "0xdeadc0dedeadbeef"
}
],
"withdrawals": [
{
"createdAt": "2025-12-02T08:52:08.178Z",
"instrument": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"amount": "1000.1",
"networkFee": "1.1",
"txId": "0xdeadc0dedeadbeef"
}
],
"depositAddress": {
"orderId": 0,
"liquidityProviderTitle": "QUICKEX_BUSINESS_ACCOUNT",
"instrument": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"depositAddress": "0xdeadc0de",
"depositAddressMemo": "string",
"redirectUrl": "string"
},
"orderId": 0,
"userId": 0,
"legacyOrderId": "string",
"pair": {
"instrumentFrom": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"instrumentTo": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
}
},
"createdAt": "2025-12-02T08:52:08.179Z",
"claimedDepositAmount": "10.01",
"amountToGet": "10.01",
"claimedPublicRate": {
"price": "1000.1",
"quotes": {
"sellQuote": {
"baseValue": "1000.1",
"quoteValue": "1000.1"
},
"buyQuote": {
"baseValue": "1000.1",
"quoteValue": "1000.1"
}
},
"updatedAt": "2025-12-02T08:52:08.179Z",
"liquidityProviderPublicCode": "formulae",
"claimedAmountToReceive": "0.01",
"finalNetworkFeeAmount": "0.01",
"platformFee_Absolute": "0.01",
"fixedRate_maxAmount": "1000.000",
"fixedRate_maxTimeMinutes": 1,
"fixedRate_maxRateVolatilityPercent": "1000.000"
},
"claimedNetworkFee": "10.01",
"KYCFormLink": "string",
"orderEvents": [
{
"kind": "TRACKING_STARTED",
"createdAt": "2025-12-02T08:52:08.179Z"
}
],
"userEmail": "test@example.com",
"rateMode": "FLOATING",
"destinationAddress": "0xdeadbeef",
"destinationAddressMemo": "0xdeadbeef",
"completed": false,
"possibleCashbackAmountUSDT": "500.00",
"redirectUrl": "https://payments.mercuryo.io/",
"minConfirmationsToTrade": 3,
"minConfirmationsToWithdraw": 3
}Try it out
Leave empty to use default
Request Body
Headers
Documentation
Vue d’ensemble
Cette méthode vous permet de définir une adresse e-mail pour un ordre public déjà créé.
Elle est utilisée lorsque l’ordre a été créé sans champ userEmail dans la requête /api/v2/orders/public/create, mais qu’il est ensuite nécessaire d’attacher une adresse e-mail (par exemple pour que l’utilisateur puisse recevoir des notifications sur le statut de l’ordre).
> Important : L’adresse e-mail ne peut être définie qu’une seule fois. Si l’ordre possède déjà un userEmail, celui-ci ne peut pas être modifié via cette méthode.
Requête HTTP
Méthode : POST
URL : https://quickex.io/api/v2/orders/public/set-email
Exemple de requête
curl -X 'POST' \ 'https://quickex.io/api/v2/orders/public/set-email' \ -H 'accept: application/json' \ -H 'X-Api-Public-Key: {YOUR_PUBLIC_KEY}' \ -H 'X-Api-Timestamp: {UNIX_MS_TIMESTAMP}' \ -H 'X-Api-Signature: {SIGNATURE}' \ -H 'Content-Type: application/json' \ -d '{ "orderId": 3038, "userEmail": "QA@quickex.com" }'
En-têtes
| Header | Obligatoire | Description |
|---|---|---|
Accept |
oui | Valeur recommandée : application/json. |
Content-Type |
oui | application/json. |
X-Api-Public-Key |
oui | Votre clé publique d’API. |
X-Api-Timestamp |
oui | Timestamp (généralement UNIX en ms), inclus dans la signature. |
X-Api-Signature |
oui | Signature de la requête (HMAC SHA256 selon le schéma de l’API v2). |
Paramètres de la requête
Paramètres du corps (Body Parameters)
{ "orderId": 3038, "userEmail": "QA@quickex.com" }
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
orderId |
number | oui | L’identifiant de l’ordre pour lequel vous souhaitez définir l’e-mail. |
userEmail |
string | oui | L’adresse e-mail de l’utilisateur, qui sera associée à l’ordre et utilisée pour les notifications. |
Contraintes : si un userEmail est déjà défini pour cet ordre, la méthode renverra une erreur 403 ERR_FORBIDDEN.
Format de réponse
Si la requête réussit, la méthode renvoie un objet JSON représentant l’ordre, similaire à la réponse de POST /api/v2/orders/public/create / GET /api/v2/orders/info, mais avec le champ userEmail renseigné.
Exemple de réponse
{ "deposits": [ { "createdAt": "2025-12-02T09:31:46.246Z", "instrument": { "currencyTitle": "USDT", "networkTitle": "TRC20" }, "amount": "1000.1", "confirmations": 0, "txId": "0xdeadc0dedeadbeef", "depositAddress": "0xdeadc0de", "isPending": true, "id": 0, "counterPartyAddress": "0xdeadc0dedeadbeef" } ], "withdrawals": [ { "createdAt": "2025-12-02T09:31:46.246Z", "instrument": { "currencyTitle": "USDT", "networkTitle": "TRC20" }, "amount": "1000.1", "networkFee": "1.1", "txId": "0xdeadc0dedeadbeef" } ], "depositAddress": { "orderId": 0, "liquidityProviderTitle": "QUICKEX_BUSINESS_ACCOUNT", "instrument": { "currencyTitle": "USDT", "networkTitle": "TRC20" }, "depositAddress": "0xdeadc0de", "depositAddressMemo": "string", "redirectUrl": "string" }, "orderId": 0, "userId": 0, "legacyOrderId": "string", "pair": { "instrumentFrom": { "currencyTitle": "USDT", "networkTitle": "TRC20" }, "instrumentTo": { "currencyTitle": "USDT", "networkTitle": "TRC20" } }, "createdAt": "2025-12-02T09:31:46.246Z", "claimedDepositAmount": "10.01", "amountToGet": "10.01", "claimedPublicRate": { "price": "1000.1", "quotes": { "sellQuote": { "baseValue": "1000.1", "quoteValue": "1000.1" }, "buyQuote": { "baseValue": "1000.1", "quoteValue": "1000.1" } }, "updatedAt": "2025-12-02T09:31:46.246Z", "liquidityProviderPublicCode": "formulae", "claimedAmountToReceive": "0.01", "finalNetworkFeeAmount": "0.01", "platformFee_Absolute": "0.01", "fixedRate_maxAmount": "1000.000", "fixedRate_maxTimeMinutes": 1, "fixedRate_maxRateVolatilityPercent": "1000.000" }, "claimedNetworkFee": "10.01", "KYCFormLink": "string", "orderEvents": [ { "kind": "TRACKING_STARTED", "createdAt": "2025-12-02T09:31:46.246Z" } ], "userEmail": "QA@example.com", "rateMode": "FLOATING", "destinationAddress": "0xdeadbeef", "destinationAddressMemo": "0xdeadbeef", "completed": false, "possibleCashbackAmountUSDT": "500.00", "redirectUrl": "https://payments.mercuryo.io/", "minConfirmationsToTrade": 3, "minConfirmationsToWithdraw": 3 }
Point clé : le champ userEmail associé à l’ordre sera renseigné dans la réponse.
Erreurs
403 ERR_FORBIDDEN — E-mail déjà défini
{ "status": "ERR_FORBIDDEN", "message": "Order.userEmail already set and can not be modified" }
Cette erreur est renvoyée si vous tentez de modifier l’adresse e-mail pour un ordre dont le champ userEmail a déjà été défini (soit lors de la création de l’ordre, soit lors d’un appel précédent à set-email).
Que faire :
- L’adresse e-mail ne peut pas être modifiée pour les ordres qui ont déjà une adresse e-mail définie.
Cas d’utilisation possibles
- Ajouter une adresse e-mail pour des ordres créés de manière anonyme (par exemple via un widget sans champ e-mail obligatoire).
Code Sample
curl -X 'POST' \
'https://quickex.io/api/v2/orders/public/set-email' \
-H 'accept: application/json' \
-H 'X-Api-Public-Key: {YOUR_PUBLIC_KEY}' \
-H 'X-Api-Timestamp: {UNIX_MS_TIMESTAMP}' \
-H 'X-Api-Signature: {SIGNATURE}'
-H 'Content-Type: application/json' \
-d '{
"orderId": 3038,
"userEmail": "QA@quickex.com"
}'Response Example
{
"deposits": [
{
"createdAt": "2025-12-02T09:31:46.246Z",
"instrument": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"amount": "1000.1",
"confirmations": 0,
"txId": "0xdeadc0dedeadbeef",
"depositAddress": "0xdeadc0de",
"isPending": true,
"id": 0,
"counterPartyAddress": "0xdeadc0dedeadbeef"
}
],
"withdrawals": [
{
"createdAt": "2025-12-02T09:31:46.246Z",
"instrument": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"amount": "1000.1",
"networkFee": "1.1",
"txId": "0xdeadc0dedeadbeef"
}
],
"depositAddress": {
"orderId": 0,
"liquidityProviderTitle": "QUICKEX_BUSINESS_ACCOUNT",
"instrument": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"depositAddress": "0xdeadc0de",
"depositAddressMemo": "string",
"redirectUrl": "string"
},
"orderId": 0,
"userId": 0,
"legacyOrderId": "string",
"pair": {
"instrumentFrom": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
},
"instrumentTo": {
"currencyTitle": "USDT",
"networkTitle": "TRC20"
}
},
"createdAt": "2025-12-02T09:31:46.246Z",
"claimedDepositAmount": "10.01",
"amountToGet": "10.01",
"claimedPublicRate": {
"price": "1000.1",
"quotes": {
"sellQuote": {
"baseValue": "1000.1",
"quoteValue": "1000.1"
},
"buyQuote": {
"baseValue": "1000.1",
"quoteValue": "1000.1"
}
},
"updatedAt": "2025-12-02T09:31:46.246Z",
"liquidityProviderPublicCode": "formulae",
"claimedAmountToReceive": "0.01",
"finalNetworkFeeAmount": "0.01",
"platformFee_Absolute": "0.01",
"fixedRate_maxAmount": "1000.000",
"fixedRate_maxTimeMinutes": 1,
"fixedRate_maxRateVolatilityPercent": "1000.000"
},
"claimedNetworkFee": "10.01",
"KYCFormLink": "string",
"orderEvents": [
{
"kind": "TRACKING_STARTED",
"createdAt": "2025-12-02T09:31:46.246Z"
}
],
"userEmail": "QA@example.com",
"rateMode": "FLOATING",
"destinationAddress": "0xdeadbeef",
"destinationAddressMemo": "0xdeadbeef",
"completed": false,
"possibleCashbackAmountUSDT": "500.00",
"redirectUrl": "https://payments.mercuryo.io/",
"minConfirmationsToTrade": 3,
"minConfirmationsToWithdraw": 3
}Try it out
Leave empty to use default
Request Body
Headers
Documentation
Gibt Rückerstattungsinformationen für eine bestimmte Order zurück.
Wird nach dem Erstellen einer Rückerstattungsanfrage verwendet, um die Details zu prüfen (Betrag, Rückerstattungsadresse, Status).
URL
https://quickex.io/api/v2/orders/order-refund-info
Request Parameters (Query)
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
orderId |
string | ja | Die Kennung der Order, für die Rückerstattungsdaten abgerufen werden sollen. |
curl -X GET \
'https://quickex.io/api/v1/orders/order-refund-info?orderId=1234' \
-H 'Accept: application/json'
Responses
| Code | Beschreibung |
|---|---|
200 OK |
Gibt JSON mit Rückerstattungsinformationen zurück (Betrag, Adresse, Status, Gebühren). |
400 Bad Request |
Validierungsfehler oder ungültige Order-Daten ({"status":"ERR_BAD_REQUEST","message":"Unknown liquidity provider title: ..."}). |
404 Not Found |
Order nicht gefunden. |
5xx |
Interner Serverfehler. |
Notes
- Die Methode gibt Daten nur für Orders zurück, bei denen eine Rückerstattung initiiert wurde.
- In einer erfolgreichen
200-Antwort kann das JSON den Rückerstattungsbetrag, die Rückerstattungsadresse und Netzwerkgebühren enthalten.- Bei Validierungsfehlern (
400) gibt der Server den Grund im Feldmessagean.
Code Sample
curl -X 'GET' \
'https://quickex.io/api/v2/orders/info?orderId=3038' \
-H 'accept: application/json' \
-H 'X-Api-Public-Key: {YOUR_PUBLIC_KEY}' \
-H 'X-Api-Timestamp: {UNIX_MS_TIMESTAMP}' \
-H 'X-Api-Signature: {SIGNATURE}'Response Example
{
"orderId": 3038,
"legacyOrderId": "4602ddf9-e516-4c3a-9146-7bc748edd89b",
"pair": {
"instrumentFrom": {
"currencyTitle": "BTC",
"networkTitle": "BTC",
"precisionDecimals": 7,
"slug": "btc",
"liquidityProviderCurrencies": [
{
"minConfirmationsToTrade": 3,
"minConfirmationsToWithdraw": 3
}
]
},
"instrumentTo": {
"currencyTitle": "USDT",
"networkTitle": "TRC20",
"precisionDecimals": 5,
"slug": "usdttrc20",
"liquidityProviderCurrencies": [
{
"minConfirmationsToTrade": 3,
"minConfirmationsToWithdraw": 3
}
]
}
},
"createdAt": "2025-04-28T13:15:03.006Z",
"instrumentFromCurrencyTitle": "BTC",
"instrumentFromNetworkTitle": "BTC",
"instrumentToCurrencyTitle": "USDT",
"instrumentToNetworkTitle": "TRC20",
"feeMode": "FLOATING",
"userId": 229,
"userEmail": "qa@support.quickex.io",
"isPlatformEmail": false,
"refundAddress": null,
"refundAddressMemo": null,
"destinationAddress": "TFjfHBiDcL6B5S5W8g9b6gU2tbvnTR52ya",
"destinationAddressMemo": null,
"claimedNetworkFee": "1.5",
"rateMode": "FLOATING",
"claimedDepositAmount": "0.034268",
"amountToGet": "3263.05",
"platformFee": null,
"redirectUrl": null,
"orderEvents": [
{
"createdAt": "2025-04-28T13:15:03.021Z",
"kind": "CREATION_END"
}
],
"depositAddress": {
"instrument": {
"currencyTitle": "BTC",
"networkTitle": "BTC"
},
"depositAddress": "3LpR1ZKEVysoi6sxFqoGtB49638RsxzKSh",
"depositAddressMemo": null
},
"deposits": [],
"withdrawals": [],
"KYCFormLink": null,
"liquidityProviderPublicCode": "hat",
"possibleRefferalAccrualAmount": "3.01",
"possibleCashbackAmountUSDT": "0",
"actualCashbackAmountUSDT": null,
"claimedPublicRate": {
"claimedAmountToReceive": "3259.38",
"finalNetworkFeeAmount": "1.5",
"price": "95158.1",
"quotes": {
"sellQuote": {
"baseValue": "1",
"quoteValue": "95114.32743505127"
},
"buyQuote": {
"baseValue": "95158",
"quoteValue": "0.9995400016924599"
}
},
"updatedAt": "2025-04-28T13:11:30.251Z",
"instrumentFrom": {
"currencyTitle": "BTC",
"networkTitle": "BTC",
"precisionDecimals": 7,
"slug": "btc",
"liquidityProviderCurrencies": [
{
"minConfirmationsToTrade": 3,
"minConfirmationsToWithdraw": 3
}
]
},
"instrumentTo": {
"currencyTitle": "USDT",
"networkTitle": "TRC20",
"precisionDecimals": 5,
"slug": "usdttrc20",
"liquidityProviderCurrencies": [
{
"minConfirmationsToTrade": 3,
"minConfirmationsToWithdraw": 3
}
]
}
},
"completed": false,
"minConfirmationsToTrade": 3,
"minConfirmationsToWithdraw": 3
}Try it out
Leave empty to use default
Query Parameters
Headers
Documentation
Confirme le changement du mode de taux (rate mode) pour une commande. Cette méthode est utilisée lorsque la commande a été créée avec un taux fixe,
mais qu’au cours du processus d’échange elle a été basculée vers un taux flottant (par exemple, en raison d’un dépassement de limites ou d’une forte volatilité).
La méthode permet à l’utilisateur d’accepter le nouveau mode et de poursuivre le traitement de la commande.
URL
https://quickex.io/api/v2/orders/public/accept-rate-mode-change
Headers
Accept: application/jsonContent-Type: application/json
Request Body (JSON)
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
orderId |
number | oui | L’identifiant de la commande pour laquelle le changement de mode de taux doit être confirmé. |
destinationAddress |
string | oui | L’adresse de destination associée à la commande (utilisée comme vérification supplémentaire). |
{
"orderId": 123456,
"destinationAddress": "0xdeadbeef"
}
Request Example (cURL)
curl -X POST \
'https://quickex.io/api/v1/orders/public/accept-rate-mode-change' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"orderId": 123456,
"destinationAddress": "0xdeadbeef"
}'
Responses
| Code | Description |
|---|---|
201 Created |
Le changement du mode de taux a été confirmé et la commande poursuit son traitement. |
404 Not Found |
Commande introuvable ({"status":"ERR_NOT_FOUND","message":"Order not found"}). |
400 Bad Request |
Erreur de validation (par exemple, données d’entrée invalides). |
5xx |
Erreur interne du serveur. |
Notes
- Cette méthode n’est appelée que si la commande a changé de mode de taux (par exemple, de FIXED à FLOATING).
- Sans confirmation, le traitement de la commande sera suspendu.
- En cas de succès, la réponse renvoie le statut 201 et la commande passe à l’état de traitement continu.
Code Sample
curl -X 'POST' \
'https://quickex.io/api/v1/orders/public/accept-rate-mode-change' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"orderId": {},
"destinationAddress": "string"
}'Try it out
Leave empty to use default
Request Body
Headers
Documentation
Demande un remboursement pour une commande. Utilisé dans les situations où l’échange n’a pas été finalisé ou lorsque les fonds doivent être retournés à l’utilisateur.
Pour réussir, le montant du remboursement et l’adresse de remboursement doivent être indiqués.
URL
https://quickex.io/api/v2/orders/public/request-refund
Headers
Accept: application/jsonContent-Type: application/json
Request Body (JSON)
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
orderId |
number | oui | L’identifiant de la commande pour laquelle un remboursement est demandé. |
destinationAddress |
string | oui | L’adresse de destination spécifiée dans la commande d’origine (utilisée comme vérification supplémentaire). |
refundAmount |
string | oui | Le montant à rembourser à l’utilisateur. |
refundAddress |
string | oui | L’adresse du portefeuille de l’utilisateur où les fonds seront remboursés. |
claimedNetworkFee |
string | non | Le montant des frais réseau que l’utilisateur accepte de payer pour le remboursement. |
{
"orderId": 123456,
"destinationAddress": "0xdeadbeef",
"refundAmount": "10.00",
"refundAddress": "0xuserrefundwallet",
"claimedNetworkFee": "0.50"
}
Request Example (cURL)
curl -X POST \
'https://quickex.io/api/v1/orders/public/request-refund' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"orderId": 123456,
"destinationAddress": "0xdeadbeef",
"refundAmount": "10.00",
"refundAddress": "0xuserrefundwallet",
"claimedNetworkFee": "0.50"
}'
Responses
| Code | Description |
|---|---|
201 Created |
La demande de remboursement a été acceptée et sera traitée. |
404 Not Found |
Commande introuvable ({"status":"ERR_NOT_FOUND","message":"Order not found"}). |
400 Bad Request |
Erreur de validation (par exemple, montant de remboursement inférieur au minimum autorisé ou refundAddress invalide). |
5xx |
Erreur interne du serveur. |
Notes
- Cette méthode est utilisée uniquement pour les commandes qui ne peuvent pas être finalisées.
- Le remboursement est effectué vers l’adresse indiquée dans
refundAddress, déduction faite des frais réseau applicables.- Après soumission, le remboursement peut nécessiter une vérification manuelle par l’équipe support.
Code Sample
curl -X 'POST' \
'https://quickex.io/api/v1/orders/public/request-refund' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"orderId": {},
"destinationAddress": "string",
"refundAmount": "10.00",
"refundAddress": "string",
"claimedNetworkFee": "10.00"
}'Try it out
Leave empty to use default
Request Body
Headers
Documentation
Renvoie les informations de remboursement pour une commande spécifique.
Utilisé après la création d’une demande de remboursement pour vérifier les détails (montant, adresse de remboursement, statut).
URL
https://quickex.io/api/v2/orders/order-refund-info
Request Parameters (Query)
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
orderId |
string | oui | L’identifiant de la commande pour laquelle les données de remboursement doivent être récupérées. |
curl -X GET \
'https://quickex.io/api/v1/orders/order-refund-info?orderId=1234' \
-H 'Accept: application/json'
Responses
| Code | Description |
|---|---|
200 OK |
Renvoie un JSON avec les informations de remboursement (montant, adresse, statut, frais). |
400 Bad Request |
Erreur de validation ou données de commande invalides ({"status":"ERR_BAD_REQUEST","message":"Unknown liquidity provider title: ..."}). |
404 Not Found |
Commande introuvable. |
5xx |
Erreur interne du serveur. |
Notes
- La méthode ne renvoie des données que pour les commandes dont un remboursement a été initié.
- Dans une réponse
200réussie, le JSON peut inclure le montant du remboursement, l’adresse de remboursement et les frais réseau.- Pour les erreurs de validation (
400), le serveur fournit la raison dans le champmessage.
Code Sample
curl -X 'GET' \
'https://quickex.io/api/v1/orders/order-refund-info?orderId={YOUR_ORDERID}' \
-H 'accept: */*'Try it out
Leave empty to use default