{"info":{"_postman_id":"314c91b8-624c-4189-a3bb-7bd5331329a0","name":"Heropayments API deposits/payouts flow","description":"<html><head></head><body><p>Here you can find the workflow and detailed explanation of API requests that let you process crypto payments on your platform.</p>\n<h3 id=\"we-are-partnered-with-cashiers-like\"><strong>We are partnered with cashiers like:</strong></h3>\n<ul>\n<li><p>Devcode/Payments IQ: <a href=\"https://payments-iq.com\">https://payments-iq.com</a></p>\n</li>\n<li><p>Praxis: <a href=\"https://praxis.tech\">https://praxis.tech</a></p>\n</li>\n</ul>\n<p>And others like Corefy, FXbo and etc.</p>\n<p>If you have any questions or you want to test our solution, feel free to reach out to us via <a href=\"https://mailto:support@heropayments.io\">support@heropayments.io</a></p>\n<h1 id=\"authentication\">Authentication</h1>\n<p>To use Heropayments API, you should do the following:</p>\n<ul>\n<li><p>Sign up at <a href=\"https://app.heropayments.io/\">https://app.heropayments.io/</a> or at <a href=\"http://app.heropayments.io/my.heropayments.io\">my.heropayments.io</a>;</p>\n</li>\n<li><p>Import our collection of API methods in Postman;</p>\n</li>\n<li><p>Insert API keys in Postman;</p>\n</li>\n<li><p>Send a request.</p>\n</li>\n</ul>\n<p><strong>DO NOT SHARE YOUR API/SECRET KEY WITH ANY 3RD PARTIES!</strong></p>\n<h1 id=\"recommended-integration-flow\">Recommended integration flow</h1>\n<h3 id=\"deposit-flow\">DEPOSIT FLOW</h3>\n<p>A user wants to top up the account:</p>\n<ol>\n<li><p>UI - Add a \"top up with crypto\" method to your platform;</p>\n</li>\n<li><p>UI - Ask your user to choose a cryptocurrency for the deposit and specify the amount to create a deposit transaction in the user's account currency (transaction amount is optional);</p>\n</li>\n<li><p>API - To get estimated deposit amount for the selected cryptocurrency use <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#434f0b85-7d59-407c-994b-4455dfef82df\">GET \"Get estimated price\"</a> and to get minimum deposit amount use <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#74245569-2457-46f7-bbce-55df4d9d4229\">GET \"Minimum payment amount (V2)'</a>;</p>\n</li>\n<li><p>UI - Display the minimum deposit amount to your user and inform them that a lower amount won't be processed;</p>\n</li>\n<li><p>API - To create the transaction for deposit and to generate a deposit address call the POST <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#412c5848-dbed-42c5-980b-a3060e9e8c46\">\"Create a deposit (V2)\" </a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#20b9f2a0-936b-4909-980f-9b7ca72ed6c8\">\"Create a deposit (Custody)\"</a>;</p>\n</li>\n<li><p>UI - Show the generated deposit address to your user and ask to send the payment there. Once Heropayments accepts the deposit, it will be automatically converted into your balance currency and credited to your Merchant's account in our system.</p>\n</li>\n<li><p>API - Get the transaction status either via our callbacks or manually via GET <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">\"Payment status check by id (V2)\" </a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">\"Payment status check by id (Custody)\"</a>;</p>\n</li>\n<li><p>All deposits are accumulated on your Merchant's account USDT wallet in our system. Call <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#51715a30-cf5e-4237-8815-2d3228311cd7\">GET \"Get balance\"</a> method to check the balance. You can get a settlement upon the request.</p>\n</li>\n</ol>\n<p>Our <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#multiple-deposit-processing\">multiple deposit processing feature </a> increases the conversion rate of deposits. It will let your users pay twice or more to the same deposit address without visiting the cashier.</p>\n<p><a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#automated-mistaken-deposits-processing\">Automated mistaken deposits processing </a> will allow us to accept deposits if users mistakenly send a currency different from the one specified in the invoice.</p>\n<h3 id=\"withdrawal-flow-payouts-to-users\">WITHDRAWAL FLOW (PAYOUTS TO USERS)</h3>\n<p>First, you can view the available balance using GET <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#51715a30-cf5e-4237-8815-2d3228311cd7\">“Get balance (V2)” </a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#8b8de6a1-fec5-4255-a087-1dece185ba01\">\"Get balance (Custody)\"</a>.</p>\n<p>To create a withdrawal, use POST <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#a4e3c2d9-c88d-417e-90eb-947fc8eb9c10\">“Create a withdrawal (V2)\"</a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#bb5ca6c4-abbe-4bc3-b2ff-4f7425cac02a\">\"Create a withdrawal (Custody)\"</a> request method. Specify the address, currency and amount for the withdrawal.</p>\n<p>You can monitor transaction status via our callbacks or manually, using GET <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">\"Payment status check by id (V2)\"</a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">\"Payment status check by id (Custody)\"</a>.</p>\n<ol>\n<li><p>UI - Add the withdrawal with crypto option to your platform;</p>\n</li>\n<li><p>UI - Ask your user to choose a cryptocurrency for withdrawal;</p>\n</li>\n<li><p>API - Get the estimated amount for the selected currency by using <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#434f0b85-7d59-407c-994b-4455dfef82df\">POST \"Get estimated price\"</a> and minimum withdrawal amount by using <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#74245569-2457-46f7-bbce-55df4d9d4229\">\"Minimum payment amount (V2)\"</a>;</p>\n</li>\n<li><p>UI - Display the minimum withdrawal amount to your user and make clear that a lower amount won't be processed;</p>\n</li>\n<li><p>UI - Ask the user to specify a crypto wallet address to receive a withdrawal;</p>\n</li>\n<li><p>API - Call POST <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#a4e3c2d9-c88d-417e-90eb-947fc8eb9c10\">\"Create a withdrawal (V2)\"</a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#bb5ca6c4-abbe-4bc3-b2ff-4f7425cac02a\">\"Create a withdrawal (Custody)\"</a>;</p>\n</li>\n<li><p>API - Get the transaction status via our callbacks or manually, by calling GET <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b4efb371-d1c9-48f6-b47b-5f8622accbdc\">\"Payment status check by id (V2)\" </a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">\"Payment status check by id (Custody)\"</a> method to receive actual information about the withdrawal request.</p>\n</li>\n</ol>\n<p><strong>Daily withdrawal limits:</strong></p>\n<p>To elaborate on this, withdrawal limits are made to prevent situations when a merchant's account might accidentally run out of funds or overpay to a particular user.</p>\n<p>We have 2 types of daily limits:</p>\n<ul>\n<li><p>Merchant withdrawal limit – for the entire merchant account per day</p>\n</li>\n<li><p>Customer withdrawal limit – for each customerID per day</p>\n</li>\n</ul>\n<p>To set up the limits, reach us via <a href=\"https://mailto:partners@heropayments.io\">partners@heropayments.io</a> or contact your personal account manager.</p>\n<h1 id=\"api-request-signing\"><strong>API Request signing</strong></h1>\n<p>In order to sign API requests, you will have to use your API Secret (which can be found in your admin panel - <a href=\"https://app.heropayments.io/api\">https://app.heropayments.io/api</a> or <a href=\"https://my.heropayments.io/settings/api-keys\">https://my.heropayments.io/settings/api-keys)</a> to calculate the request signature using the <strong>HMAC-SHA512</strong> algorithm.</p>\n<p>You have to pass the request body as the data parameter and your API Secret as <strong>secretKey</strong> parameter. After calculating the signature, you have to attach it to the <strong>x-api-sign</strong> header.</p>\n<h3 id=\"post\">POST</h3>\n<p>For all requests with body - you should sign body and specify it to <strong>x-api-sign</strong> header.</p>\n<h3 id=\"get\">GET</h3>\n<p>For all GET requests - you should sign query string without question mark(?). For example:<br><a href=\"https://api.heropayments.io/v2/currencies?foo=bar\"><code>https://api.heropayments.io/v2/method?foo=bar</code></a> should be signed string <code>foo=bar</code></p>\n<p>If a request doesn't have a query string, you should sign an empty string:</p>\n<p><code>yourSigningFunction('')</code></p>\n<p>Then specify it to <strong>x-api-sign</strong> header.</p>\n<p><strong>PLEASE NOTE</strong></p>\n<p>To make sure you calculate the correct signature, you have to normalize the JSON data:</p>\n<ul>\n<li><p>it should not contain any spaces or newlines in it.</p>\n</li>\n<li><p>it should not have any zero-padded numbers (from both sides) unless they're quoted strings (e.g. 001.10 is invalid, \"001.10\" is valid)</p>\n</li>\n</ul>\n<p>Easiest way to do this automatically with Javascript:<br><code>JSON.stringify(JSON.parse(yourJsonString))</code></p>\n<p>You can check if the created signature is valid or not via our signature validation tool - <a href=\"https://codepen.io/ethan-reynolds-9823/full/jEOVRbV\">https://codepen.io/ethan-reynolds-9823/full/jEOVRbV</a></p>\n<h3 id=\"examples\">Examples</h3>\n<p>Postman pre-request script (V2):</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-typescript\">const crypto = require('crypto-js');\nlet payload = '';\nconst secret = pm.environment.has('api-secret')\n    ? pm.environment.get('api-secret')\n    : pm.variables.has('api-secret')\n        ? pm.variables.get('api-secret')\n        : pm.globals.has('api-secret')\n            ? pm.globals.get('api-secret')\n            : pm.collectionVariables.has('api-secret')\n                ? pm.collectionVariables.get('api-secret')\n                : console.error(new Error('api-secret is missing'));\ntry {\n    switch (pm.request.method) {\n        case 'POST': \n            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));\n            break;\n        case 'GET':\n            payload = pm.request.url.query.toString();\n            break;\n    }\n} catch {\n    console.error(new Error('Cant decode JSON body'))\n}\nconsole.log('payload', payload);\nconst sign = crypto.HmacSHA512(payload, secret).toString();\npm.request.headers.upsert({\n    key: 'x-api-sign',\n    value: sign,\n});\n\n</code></pre>\n<p>Postman pre-request script (Custody):</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-typescript\">const crypto = require('crypto-js');\nlet payload = '';\nconst secret = pm.environment.has('api-secret-custody')\n? pm.environment.get('api-secret-custody')\n: pm.variables.has('api-secret-custody')\n? pm.variables.get('api-secret-custody')\n: pm.globals.has('api-secret-custody')\n? pm.globals.get('api-secret-custody')\n: pm.collectionVariables.has('api-secret-custody')\n? pm.collectionVariables.get('api-secret-custody')\n: console.error(new Error('api-secret-custody is missing'));\ntry {\npayload = JSON.stringify(JSON.parse(pm.request.body.toString()));\n} catch {\nconsole.error(new Error('Cant decode JSON body'))\n}\nconst sign = crypto.HmacSHA512(payload, secret).toString();\n// console.log(secret, sign);\npm.request.headers.upsert({\nkey: 'x-api-sign',\nvalue: sign,\n});\n\n</code></pre>\n<p>An example in node.js (backend):</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-typescript\">import crypto from 'crypto';\nfunction calculateSignature (data: string | Buffer, secretKey: string | Buffer): string {\n    return crypto\n      .createHmac('SHA512', secretKey.toString())\n      .update(data.toString())\n      .digest('hex');\n}\n\n</code></pre>\n<p>An example in C#:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-csharp\">using System;\nusing System.Security.Cryptography;\nusing System.Text;\npublic class HmacHelper\n{\n    public static string CalculateSignature(object data, object secretKey)\n    {\n        byte[] dataBytes;\n        byte[] secretKeyBytes;\n        if (data is string dataString)\n        {\n            dataBytes = Encoding.UTF8.GetBytes(dataString);\n        }\n        else if (data is byte[] dataBuffer)\n        {\n            dataBytes = dataBuffer;\n        }\n        else\n        {\n            throw new ArgumentException(\"Data must be a string or byte array\");\n        }\n        if (secretKey is string secretKeyString)\n        {\n            secretKeyBytes = Encoding.UTF8.GetBytes(secretKeyString);\n        }\n        else if (secretKey is byte[] secretKeyBuffer)\n        {\n            secretKeyBytes = secretKeyBuffer;\n        }\n        else\n        {\n            throw new ArgumentException(\"Secret key must be a string or byte array\");\n        }\n        using (var hmac = new HMACSHA512(secretKeyBytes))\n        {\n            var hashBytes = hmac.ComputeHash(dataBytes);\n            return BitConverter.ToString(hashBytes).Replace(\"-\", \"\").ToLower();\n        }\n    }\n    public static void testStrings()\n    {\n        string data = \"example data\";\n        string secretKey = \"your-secret-key\";\n        string signature = CalculateSignature(data, secretKey);\n        Console.WriteLine(\"Signature: \" + signature);\n    }\n    public static void testBytes()\n    {\n        byte[] data = System.Text.Encoding.UTF8.GetBytes(\"example data\"); // Data in buffer form\n        byte[] secretKey = System.Text.Encoding.UTF8.GetBytes(\"your-secret-key\"); // Key as a buffer\n        string signature = CalculateSignature(data, secretKey);\n        Console.WriteLine(\"Signature: \" + signature);\n    }\n    public static void Main()\n    {\n        testStrings();\n        testBytes();\n    }\n}\n\n</code></pre>\n<p>An example in PHP:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-php\">  $apiKey = 'YOUR_KEY';\n  $apiSecret = 'YOUR_SECRET';\n  $apiUrl = 'https://api.heropayments.io/v2/payments';\n  $message = json_encode(\n    array(\n        'payCurrency' =&gt; 'trx',\n        'priceCurrency' =&gt; 'usd',\n        'priceAmount' =&gt; '1000',\n        'customerId' =&gt; '123',\n        'customerEmail' =&gt; 'test@test.com',\n        'externalOrderId' =&gt; '100500',\n        'callbackUrl' =&gt; 'https://example.com/callback?orderId=100500'\n    ),\n    JSON_UNESCAPED_SLASHES\n  );\n  $sign = hash_hmac('sha512', $message, $apiSecret);\n  $requestHeaders = [\n    'x-api-key:' . $apiKey,\n    'x-api-sign:' . $sign,\n    'Content-type: application/json'\n  ];\n  $ch = curl_init($apiUrl);\n  curl_setopt($ch, CURLOPT_POST, 1);\n  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\n  curl_setopt($ch, CURLOPT_POSTFIELDS, $message);\n  curl_setopt($ch, CURLOPT_HTTPHEADER, $requestHeaders);\n  $response = curl_exec($ch);\n  curl_close($ch);\n  var_dump($response);\n\n</code></pre>\n<p>An example in Python:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-python\"> #Python 3.8\nimport requests\nimport json\nimport hashlib\nimport hmac\nurl = \"https://api.heropayments.io/v2/payments\"\ndef generate_signature(data):\n  key = \"YOUR_SECRET\" \n  key_bytes= key.encode() \n  data_bytes = data.encode()\n  return hmac.new(key_bytes, data_bytes, hashlib.sha512).hexdigest()\npayload = {\n    \"payCurrency\":\"trx\",\n    \"priceCurrency\":\"usd\",\n    \"priceAmount\":1000,\n    \"customerId\":\"123\",\n    \"externalOrderId\":\"100500\",\n    \"customerEmail\":\"test@test.com\",\n    \"callbackUrl\":\"https://example.com/callback?orderId=100500\",\n    \"fiat\": True,\n}\npayload = json.dumps(payload, separators=(',', ':'))\nheaders = {\n  'x-api-key': 'YOUR_KEY',\n  'Content-Type': 'application/json',\n  'x-api-sign': generate_signature(payload)\n}\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\n</code></pre>\n<p>An example in browser:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-typescript\">import hmacSHA512 from 'crypto-js/hmac-sha512';\nfunction calculateSignature (data: string | Buffer, secretKey: string | Buffer): string {\n    return hmacSHA512(data.toString(), secretKey.toString());\n}Also you can use Postman pre-request script:\n\n</code></pre>\n<h1 id=\"callbacks\">Callbacks</h1>\n<p>Callbacks are used for notifications when transaction status is changed. To use them, you should complete the following steps:</p>\n<ol>\n<li><p>Get the secret key in \"API\" section at the admin panel;</p>\n</li>\n<li><p>When you call POST <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#412c5848-dbed-42c5-980b-a3060e9e8c46\">\"Create a deposit (V2)\"</a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#20b9f2a0-936b-4909-980f-9b7ca72ed6c8\">\"Create a deposit (Custody)\"</a> or POST <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#a4e3c2d9-c88d-417e-90eb-947fc8eb9c10\">\"Сreate a withdrawal (V2)\"</a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#bb5ca6c4-abbe-4bc3-b2ff-4f7425cac02a\">\"Create a withdrawal (Custody)\" </a> request, insert your URL address in \"callbackUrl\" field to get notifications.</p>\n</li>\n<li><p>You will receive all the parameters at the URL address you specified in (2) by POST request. The POST request will contain x-api-sign parameter in the header. The body of the request is similar to GET <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">“Payment status check by id (V2)”</a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">\"Payment status check by id (Custody)\"</a> response body, but not identical;</p>\n</li>\n<li><p>Convert the response body to string using <a href=\"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify\">JSON.stringify</a>;</p>\n</li>\n<li><p>Sign a string with a secret key with <strong>HMAC-SHA512</strong> algorithm;</p>\n</li>\n<li><p>Compare the signed string from the previous step with the x-api-sign stored in the header of the callback request. If these strings are identical, the system works properly. Otherwise, contact us via <a href=\"https://mailto:support@nowpayments.io\">support@heropayments.io</a> to solve the problem.</p>\n</li>\n</ol>\n<h3 id=\"callback-notification-examples\">Callback notification examples</h3>\n<h4 id=\"v2-deposit-callback\">V2 deposit Callback</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">\"id\": \"f5529a76-cb68-4d19-a97b-12dcd6712c02\", // Heropayments payment ID.\n      \"fiat\": true, // parameter to specify for priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation.\n      \"status\": \"finished\", // status of the transaction.\n      \"feeUSDT\": 0.02694825, // Heropayments processing fee (clientAmountUsdt * feePercent)\n\"invoice\": {\n            \"id\": \"9852d8c1-fca6-45d8-aa55-99e0050c2d94\", // invoice ID, not recommended to use it as payment identificator, as it does not appear in the report.\n            \"orderId\": \"1454445333244115\", // merchant's custom order ID.\n            \"customerId\": \"123\", //  ID of the customer.\n            \"priceAmount\": 100, //  amount specified by the user for the deposit in priceCurrency. The estimated amount to complete the payment, is not equal to the sent amount.\n            \"priceCurrency\": \"usd\" // user's account currency: fiat or cryptocurrency (USD, EUR, BTC,DOGE etc.)\n           },\n            \"payHash\": \"0x4fee71ad6617f18cfd0e75a9a349496f8bab04d4bbab44944a47376f40ead6a\", // transaction hash to the deposit address.\n            \"payRate\": 598.85, //  payCurrency to outcomeCurrency ratio.\n            \"payExtra\": null, // additional Id which is necessary for identifying a recipient of the transaction (memo, destination tag). Obligatory for deposits in XRP, XLM, HBAR.\n            \"sequence\": \"original\", // as soon as each payment has to have its own unique externalOrderId, we add an additional field \"sequence\" to differentiate the subsequent payments.\nUse case: after finishing the first payment, the customer saves the payAddress and sends the funds again to this address without creating an invoice on the site.\nExample for the first payment:\nexternalOrderID: 1254435345456456\nsequence: original\nExample for the second and further payments:\nexternalOrderID: 1254435345456456\nsequence (2nd payment): 4fb7defa35a056ecc64fc74ea97ef90f (new unique ID)\nsequence (3rd payment: 4fb7d453566545623ав2343455(new unique ID)\netc.\n        \"createdAt\": \"2025-05-02T19:56:13.000Z\", // time, when the transaction was created.\n        \"payAmount\": 0.1678591, // expected amount to pay by the user in crypto (payCurrency) to finish the transaction.\n        \"priceRate\": 0.9996, // priceCurrency to outcomeCurrency ratio.\n        “userNotes” : null, // technical field, not used.\n        \"feePercent\": 0.5, // Heropayments processing fee (%).\n        \"networkFee\": 0,5, // network fee deducted for processing the blockchain transaction.\n        \"paidAmount\": 0.009, //  amount that was actually sent in crypto (payCurrency) in the transaction.\n        \"payAddress\": \"0x2d7e23d8f9e04110d1c6d255b40841a8585d6662\", //  deposit address for crypto assets, used to process the deposit.\n        \"callbackUrl\": \"https://example.com/callback\", // HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update.\n        \"outcomeHash\": \"0x4fa6f8ca917de24ddf289a997de597657f48b1c9a2f5ffae96847e8e6c36595\", //  transaction hash to the merchant’s balance wallet.\n        \"payCurrency\": \"bnbbsc\", // cryptocurrency sent by the user to finish the deposit\n        \"payHashLink\": \"https://bscscan.com/tx/0x4fee71ad664f18cfffd0e75a9a3494696f8bab0d4bbab44944a4376f40ea56a\", //  link to the transaction hash.\n        \"clientAmount\": 5.39, //  fiat equivalent of clientAmountUsdt in priceCurrency. Shows the amount to be credited to user’s account. \n        \"payinSenders\": [\n            \"0x3b3cfe3336b6accf2044274cf3c4825c4b644cb\" // customer’s wallet, used to process the deposit.\n        ],\n        \"customerEmail\": \"TestEmail.com\", // user’s email address (not required).\n        \"outcomeAmount\": 4.86270175, // amount credited to the merchant’s wallet.\n        \"outcomeAddress\": \"0x8a466fc4c95dd97d51fa5532890dea7fff0cfbf\",\n        \"externalOrderId\": \"1454445333244115\", // merchant's custom order ID\n        \"outcomeCurrency\": \"usdt20\", // merchant’s balance currency.\n        \"outcomeHashLink\": \"https://etherscan.io/token/0xdac17f958d2ee523a22006994597c13d831ec7?a=0x4fa6f8ca917de24ddf28cc9a997de597657f8b1c9a2f5ffae96847e84e6c36595\", // transaction hash link after the exchange to merchant’s wallet.\n        \"transactionType\": \"deposit\", // always deposit or withdrawal\n        \"clientAmountUsdt\": 5.38965 // deposit amount  received from the  user and converted to USDT. Calculated as “merchantAmountUsdt” + network fee + processing fee.\n        \"merchantAmountUsdt\": 4.86270175 // amount credited to Merchant’s wallet in USDT. Calculated as ClienttAmountUsdt” - network fee - processing fee.\n\n</code></pre>\n<p><strong>V2 withdrawal Callback</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\"> \"id\": \"536d0fcf-beb3-4b6b-b752-4ec5b16e02e8\", // Heropayments payment ID.\n        \"fiat\": true, // // parameter to specify priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation, if the user's account is in crypto.\n        \"status\": \"finished\", //  // status of the transaction.\n        \"feeUSDT\": 0.03933199, // Heropayments processing fee (clientAmountUsdt * feePercent).\n        \"invoice\": {\n            \"id\": \"b4d98885-f83e-42d9-a5b2-fec6f868f5cb\", // invoice ID, not recommended to use it as payment identificator, as it does not appear in the report.\n            \"orderId\": null, // always null\n            \"customerId\": \"12312\", //  ID of the customer.\n            \"priceAmount\": 600, //  amount specified by the user for the withdrawal in priceCurrency. The estimated amount to complete the payment, is not equal to the sent sum.\n            \"priceCurrency\": \"rub\" // user's account currency: fiat or cryptocurrency (ex. USD, EUR, BTC,DOGE etc.)\n        \"payHash\": \"0x0f248ffd2874c0def2b15141eb1409603a9ed24a870c948d13644402f84fd\", // transaction hash from the merchant's balance address to an exchange address.\n        \"payRate\": 1, // payCurrency to outcomeCurrency ratio.\n        \"payExtra\": null, // additional Id which is necessary for identifying a recipient of the transaction. Also known as additional address, memo or destination tag. Users must enter it while withdrawing XRP, BNB, XLM and some other currencies\n        \"sequence\": \"original\", //used for deposits only, for withdrawals remains \"original\".\n        \"createdAt\": \"2025-03-06T10:57:22.000Z\", // time, when the transaction was created.\n        \"payAmount\": 6.85714285, //  the amount that must be deducted from the merchant's account to process a withdrawal.\n        \"priceRate\": 0.01086, // priceCurrency to outcomeCurrency ratio.\n        \"userNotes\": null, // technical field, not used.\n        \"feePercent\": 0.6, // Heropayments processing fee (%).\n        \"networkFee\": 0.3, // network fee deducted for processing the blockchain transaction.\n        \"paidAmount\": 6.85714285, // the amount deducted from the balance to process the payment.\n        \"callbackUrl\": \"https://webhook.site/07e09722-fc19-4d0d-b81f-f36a8c65850\", // HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update.\n        \"outcomeHash\": \"0x98a839528e39a1d4c1472fcc878df6aa62f41ca5bf9ffd902035b9402cfe8f\", // transaction hash to the user's wallet\n        \"payCurrency\": \"usdtbsc\", // merchant's balance currency.\n        \"payHashLink\": \"https://bscscan.com/tx/0x0f248ffd2874c0d2b15141eb141b09603a9ed624a870c948d13644402f84fd\", // transaction hash from the merchant's balance address to an exchange address.\n        \"clientAmount\": 600, // equivalent of priceAmount in priceCurrency. This amount that user should receive for a withdrawal.\n        \"customerEmail\": \"test@test.com\", //  user's email address (not required).\n        \"outcomeAmount\": 6.516, // the amount that a user received for a withdrawal\n        \"outcomeAddress\": \"0x3b3cfe3336b6accf2044274cf3c5c25c4b64cb\", //  user's address to receive the withdrawal.\n        \"outcomeExtraId\": null, // the same as payExtra.\n        \"externalOrderId\": \"112434321\", // merchant's custom order ID.\n        \"outcomeCurrency\": \"usdtbsc\", // a currency that the user chose for the withdrawal.\n        \"outcomeHashLink\": \"https://bscscan.com/tx/0x98a839528e39a4c1472fcc878df6aa62f41ca5bb9f9ffd902035b9402cfe8f\", // transaction hash  link to the user's wallet.\n        \"transactionType\": \"withdrawal\", // always deposit or withdrawal.\n        \"clientAmountUsdt\": 6.51781086, //  USDT equivalent of a withdrawal amount sent to the user. Calculated as \"merchantAmountUsdt\" -  network fee -  processing fee.\n        \"merchantAmountUsdt\": 6.85714285 // the amount deducted from the balance to process the payment. Calculated as \"ClienttAmountUsdt\" + network fee + processing fee.\n\n</code></pre>\n<p><strong>Custody deposit Callback</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">\"id\": \"f3748917-d4ae-4dae-bec1-c00e269be990\", // Heropayments payment ID.\n        \"hash\": \"0xc81b15173d536f5063ec4c11cfd37aa5cfbfd668ac2433d175efea100bfd25234\", // deposit hash\n        \"amount\": \"4\", // deposited amount.\n        \"status\": \"finished\", // status of the transaction.\n        \"address\": \"0xfc9ca35f6296cadfc5f925145acd55abfd0eafae8\", //  deposit address for crypto assets.\n        \"comment\": null, //  additional information about the deposit.\n        \"currency\": \"usdtbsc\", // deposited currency.\n        \"hashLink\": null,\n        \"sequence\": \"original\", //  helps to differentiate between the subsequent payments. Please read multiple deposit processing.\n        \"subEmail\": null, //  if a payment was created by a subuser of the main account, the field reflects the name of the subaccount.\n        \"createdAt\": \"2025-03-13T14:16:53.315Z\", // time, when the deposit was created.\n        \"feeAmount\": \"0.02\", // Heropayments processing fee in the Currency equivalent.\n        \"updatedAt\": \"2025-03-13T14:21:22.163Z\", // time, when the deposit was updated.\n        \"customerId\": \"new_test_user\",\n        \"feePercent\": 0.5, //  Heropayments processing fee (%).\n        \"networkFee\": \"0.3\", // network fee deducted for processing the blockchain transaction. Estimated in a payment currency equivalent\n        \"callbackUrl\": \"https://webhook.site/07e09722-fc19-4d0d-b81f-f5236a8c65850\", //  HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries.\n        \"addressExtra\": null, // additional Id which is necessary for identifying a recipient of the transaction (memo, destination tag). Obligatory for deposits in XRP, XLM, HBAR.\n        \"clientAmount\": \"4\", // amount of crypto received from a user to a created deposit address.\n        \"confirmations\": 23, //  number of confirmations on the blockchain. We need to wait until the payment gets at least several confirmations to process it.\n        \"merchantAmount\": \"3.68\", //amount credited to Merchant's wallet in Currency\n        \"externalOrderId\": \"mercha56564554n2t_44o5rder_id_123123\", // merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction.\n        \"transactionType\": \"deposit\" // always deposit or withdrawal.\n\n</code></pre>\n<h2 id=\"fallbacks\">Fallbacks</h2>\n<p>We strongly recommend you to back up callback services by using GET <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">\"Payment status check by id (V2)”</a> / <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">\"Payment status check by id (Custody)\"</a> to receive the same info about payments as you get from the callback notification.</p>\n<h2 id=\"callbackurl-recommendations\"><strong>CallbackUrl recommendations</strong></h2>\n<p>We highly recommend setting static callBackUrls both for deposit and withdrawals. Using static callBackUrls will facilitate the process of changing callback URLs if a need arises.</p>\n<p>Example of static callBackUrls (recommended flow)</p>\n<ul>\n<li><p><strong>Deposit:</strong> <a href=\"https://m54543qin7.com/deposit/hero_payments\"><b>https://m54543qin7.com/deposit/hero_payments</b></a> <strong>(for all deposit transactions one callBackUrl)</strong></p>\n</li>\n<li><p><strong>Withdrawal:</strong> <a href=\"https://m54543qin7.com/withdrawal/hero_payments\"><b>https://m54543qin7.com/withdrawal/hero_payments</b></a> <strong>(for all withdrawal transactions one callBackUrl)</strong></p>\n</li>\n</ul>\n<p>Example of dynamic callBackUrls (not recommended flow)</p>\n<ul>\n<li><p>Deposit:<br>  <a href=\"https://m54543qin7.com/deposit/hero_payments\"><b>https://m54543qin7.com/deposit/hero_payments</b></a>/payment_1<br>  <a href=\"https://m54543qin7.com/deposit/hero_payments\"><b>https://m54543qin7.com/deposit/hero_payments</b></a>/payment_2<br>  <a href=\"https://m54543qin7.com/deposit/hero_payments\"><b>https://m54543qin7.com/deposit/hero_payments</b></a>/payment_3<br>  etc.</p>\n</li>\n<li><p>Withdrawal:<br>  <a href=\"https://m54543qin7.com/deposit/hero_payments\"><b>https://m54543qin7.com/withdwaral/hero_payments</b></a>/payment_1<br>  <a href=\"https://m54543qin7.com/deposit/hero_payments\"><b>https://m54543qin7.com/withdwaral/hero_payments</b></a>/payment_2<br>  <a href=\"https://m54543qin7.com/deposit/hero_payments\"><b>https://m54543qin7.com/withdwaral/hero_payments</b></a>/payment_3<br>  etc.</p>\n</li>\n</ul>\n<h1 id=\"payment-statuses-v2-flow\">Payment Statuses - (V2 flow)</h1>\n<p>The transaction's status describes what is happening to the funds at any given moment and their current state.</p>\n<p>For the detailed description of the statuses, please refer to the <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b4efb371-d1c9-48f6-b47b-5f8622accbdc\">GET \"Payment status check by id (V2)”</a> method.</p>\n<h4 id=\"deposit-statuses\">Deposit statuses</h4>\n<p>In progress:</p>\n<ul>\n<li><p>waiting</p>\n</li>\n<li><p>confirming</p>\n</li>\n<li><p>exchanging</p>\n</li>\n<li><p>hold</p>\n</li>\n</ul>\n<p>Failed or unsuccessful (suspend the transaction on your end):</p>\n<ul>\n<li><p>failed</p>\n</li>\n<li><p>refunded</p>\n</li>\n<li><p>expired</p>\n</li>\n</ul>\n<p>Successful (complete the deposit on your end by updating the balances, etc.):</p>\n<ul>\n<li><p>sending</p>\n</li>\n<li><p>finished</p>\n</li>\n</ul>\n<h4 id=\"withdrawal-statuses\">Withdrawal statuses</h4>\n<p>In progress:</p>\n<ul>\n<li><p>waiting</p>\n</li>\n<li><p>confirming</p>\n</li>\n<li><p>exchanging</p>\n</li>\n<li><p>hold</p>\n</li>\n<li><p>sending</p>\n</li>\n</ul>\n<p>Failed or unsuccessful (suspend the transaction on your end):</p>\n<ul>\n<li><p>failed</p>\n</li>\n<li><p>refunded</p>\n</li>\n</ul>\n<p>Success (complete the withdrawal on your end by updating the balances, etc.):</p>\n<ul>\n<li>finished</li>\n</ul>\n<h2 id=\"faster-top-ups-with-the-confirming-status\">Faster Top-Ups with the \"Confirming\" Status</h2>\n<p>How to implement user balance top-up at the <strong>Confirming</strong> status?</p>\n<p>In the confirming callback, we send the value of the <code>paidAmount</code> field — this is the actual amount of cryptocurrency the user transferred to the deposit address.</p>\n<h3 id=\"top-up-options\">Top-up options:</h3>\n<p><strong>1) Balance currency: USD — payment in stablecoin</strong><br>If the user’s balance currency is USD and they pay in a stablecoin (USDT TRC20, USDT ERC20, etc.), you can use the <code>paidAmount</code> value and credit the equivalent amount in fiat.</p>\n<p><strong>2) Balance currency is not USD</strong><br>To estimate how much fiat should be credited to the user, we recommend using the endpoint:<br><a href=\"https://api.heropayments.io/v2/rate\">https://api.heropayments.io/v2/rate</a></p>\n<hr>\n<h3 id=\"risk\">Risk:</h3>\n<p>Sometimes a transaction does not reach the <code>finished</code> status and, after <code>confirming</code>, receives the <code>failed</code> status (meaning the funds never reached us). In this case, the user’s balance would be credited even though the funds were not actually received.</p>\n<h3 id=\"why-might-a-transaction-not-reach-the-finished-status\">Why might a transaction not reach the <code>finished</code> status?</h3>\n<p>The client may:</p>\n<ul>\n<li><p>Set a network fee that is too low, causing the transaction to fail because miners do not include it in a block (relevant for Ethereum).</p>\n</li>\n<li><p>Send a transaction to the network and then cancel it immediately (BTC, ETH). Some wallets, such as Trezor, allow this.</p>\n</li>\n<li><p>Send a transaction with a low network fee, cancel it, and then resend it to the same deposit address with a higher fee. In this case, we will mark the first transaction as failed and create a new one, processing the payment as a multi-deposit.</p>\n</li>\n</ul>\n<hr>\n<p>Before using the <strong>confirming</strong> status to credit user balances, please contact our team for additional information.</p>\n<h1 id=\"payments-statuses-custody-flow\">Payments statuses - (Custody flow)</h1>\n<p>For the detailed description of the statuses, please refer to the <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">GET \"Get custody payment status”</a> method.</p>\n<h4 id=\"deposit-statuses-1\">Deposit statuses</h4>\n<p>In progress:</p>\n<ul>\n<li><p>new</p>\n</li>\n<li><p>pending</p>\n</li>\n<li><p>processing</p>\n</li>\n<li><p>hold</p>\n</li>\n</ul>\n<p>Failed or unsuccessful (suspend the transaction on your end):</p>\n<ul>\n<li><p>failed</p>\n</li>\n<li><p>expired</p>\n</li>\n</ul>\n<p>Success (complete the withdrawal on your end by updating the balances, etc.):</p>\n<ul>\n<li>finished</li>\n</ul>\n<h4 id=\"withdrawal-statuses-1\"><strong>Withdrawal statuses</strong></h4>\n<p>In progress:</p>\n<ul>\n<li><p>pending</p>\n</li>\n<li><p>processing</p>\n</li>\n<li><p>hold</p>\n</li>\n</ul>\n<p>Failed or unsuccessful (suspend the transaction on your end):</p>\n<ul>\n<li><p>failed</p>\n</li>\n<li><p>refunded</p>\n</li>\n</ul>\n<p>Success (complete the withdrawal on your end by updating the balances, etc.):</p>\n<ul>\n<li>finished</li>\n</ul>\n<h1 id=\"multiple-deposit-processing\">Multiple deposit processing</h1>\n<p>In case a customer deposits to the same payAddress twice or more, it will still be processed.</p>\n<p>Each customer’s transfer is a new payment. As soon as each payment has to have its own unique externalOrderId, we add a new field \"sequence\" to differentiate the subsequent payments.</p>\n<p>The initial payment receives an original externalOrderId and the \"sequence\" field remains unchanged.</p>\n<p>For the subsequent payments, \"sequence\" field gets a value.</p>\n<p>Example for the first payment:</p>\n<ul>\n<li><p>externalOrderID: 1254435345456456</p>\n</li>\n<li><p>sequence: original</p>\n</li>\n</ul>\n<p>Example for the second and further payments:</p>\n<ul>\n<li><p>externalOrderID: 1254435345456456</p>\n</li>\n<li><p>sequence: 4fb7defa35a056ecc64fc74ea97ef90f (new unique ID)</p>\n</li>\n</ul>\n<p>A customer may save the deposit address on their side and send the funds without going through the process all over again.</p>\n<p>In cases of multiple deposits, callbacks are sent to the callbackUrl of the initial payment. Our support may also notify you in case of multiple deposits.</p>\n<p>Deposit status:</p>\n<p>A new generated deposit-transaction remains in the status “waiting” for 4 hours (TTL) after the creation. If the transaction is not completed within this period, it receives status “expired”. If there is no new empty “waiting” transaction, we will generate a multi-deposit for an incoming payment.</p>\n<p>Action required: adjust your system to field sequence to handle the callbacks of multiple deposits.</p>\n<h1 id=\"automated-mistaken-deposits-processing\">Automated mistaken deposits processing</h1>\n<p><strong>Flow description:</strong></p>\n<p>1. A user creates a deposit request in USDT (TRC20) (<strong>payCurrency</strong>: <strong>usdttrc20</strong>), but sends TRX instead (<strong>payCurrency</strong>: <strong>trx</strong>).</p>\n<p>2. We will automatically detect the incorrect currency and credit the funds to your balance.</p>\n<p>Since we process the deposit for the user in priceCurrency, we will send a callback to the same URL with the same <strong>externalOrderId</strong> and the field <strong>sequence</strong>: <strong>original</strong>, but with the updated <strong>payCurrency</strong>: <strong>trx</strong>.</p>\n<h2 id=\"original-deposit\">Original deposit:</h2>\n<p>payCurrency: <strong>usdttrc20</strong><br>externalOrderId: <strong>order_id123</strong><br>sequence: <strong>original</strong><br>callbackUrl: <strong>webhook</strong>.url/<strong>merchant123</strong></p>\n<h2 id=\"automatically-processed-incorrect-deposit\">Automatically processed incorrect deposit:</h2>\n<p>payCurrency: <strong>trx</strong><br>externalOrderId: <strong>order_id123</strong><br>sequence: <strong>original</strong><br>callbackUrl: <strong>webhook.url/merchant123</strong></p>\n<p><strong>Important notes:</strong></p>\n<ol>\n<li><p>The <strong>payCurrency</strong> of the newly processed incorrect deposit contains the actual deposited currency (as shown above).</p>\n</li>\n<li><p>The <strong>externalOrderId</strong> of the processed deposit is taken from the original payment.</p>\n</li>\n<li><p>We support processing incorrect deposits only within the same blockchain network.</p>\n</li>\n<li><p>The feature does not work on the Solana blockchain.</p>\n</li>\n</ol>\n<h1 id=\"static-deposit-address-per-each-customer\">Static deposit address per each customer</h1>\n<p>Methods to generate a deposit transaction:</p>\n<p><strong>V2 flow</strong>: <code>v2/payments</code>, <code>v2/payments-address</code></p>\n<p><strong>Custody flow</strong>: <code>custody/deposit</code></p>\n<p>We generate a deposit address for each unique customerId. The next time you create a deposit, your customer will receive the same deposit address.</p>\n<p>If a customer sends a deposit without creating an order on your side, it will be considered as a <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#multiple-deposit-processing\">multiple deposit</a><strong>.</strong></p>\n<h1 id=\"api-errors-code-description\">API errors code description</h1>\n<p>V2:</p>\n<p><a href=\"https://docs.google.com/spreadsheets/d/16R_DIBU_3TIwKG7j6e2Iq6smyWXvSK5kWRYPpyPwym4/edit?gid=0#gid=0\">https://docs.google.com/spreadsheets/d/16R_DIBU_3TIwKG7j6e2Iq6smyWXvSK5kWRYPpyPwym4/edit?gid=0#gid=0</a></p>\n<p>Custody:</p>\n<p><a href=\"https://docs.google.com/spreadsheets/d/16R_DIBU_3TIwKG7j6e2Iq6smyWXvSK5kWRYPpyPwym4/edit?gid=1669444698#gid=1669444698\">https://docs.google.com/spreadsheets/d/16R_DIBU_3TIwKG7j6e2Iq6smyWXvSK5kWRYPpyPwym4/edit?gid=1669444698#gid=1669444698</a></p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Authentication","slug":"authentication"},{"content":"Recommended integration flow","slug":"recommended-integration-flow"},{"content":"API Request signing","slug":"api-request-signing"},{"content":"Callbacks","slug":"callbacks"},{"content":"Payment Statuses - (V2 flow)","slug":"payment-statuses-v2-flow"},{"content":"Payments statuses - (Custody flow)","slug":"payments-statuses-custody-flow"},{"content":"Multiple deposit processing","slug":"multiple-deposit-processing"},{"content":"Automated mistaken deposits processing","slug":"automated-mistaken-deposits-processing"},{"content":"Static deposit address per each customer","slug":"static-deposit-address-per-each-customer"},{"content":"API errors code description","slug":"api-errors-code-description"}],"owner":"17469357","collectionId":"314c91b8-624c-4189-a3bb-7bd5331329a0","publishedId":"UVyvwv7a","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2022-04-07T15:34:54.000Z"},"item":[{"name":"V2 Flow","item":[{"name":"Common","item":[{"name":"Rates","event":[{"listen":"prerequest","script":{"id":"07e75beb-0df3-472e-821b-27328cfea014","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript"}}],"id":"516cd862-ec92-4849-8773-1a01515f84a5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/rate?currencyFrom=usd&currencyTo=sol&transactionType=deposit","description":"<p>This method allows you to get crypto to crypto or fiat to crypto exchange rate.</p>\n<ul>\n<li><p>currencyFrom - fiat or cryptocurrency;</p>\n</li>\n<li><p>currencyTo - cryptocurrency;</p>\n</li>\n<li><p>transactionType - always deposit or withdrawal.</p>\n</li>\n</ul>\n<p>Response fields:</p>\n<ul>\n<li><p>rate - shows an amount of currencyTo per 1 currencyFrom;</p>\n</li>\n<li><p>reverseRate - shows an amount of currencyFrom per 1 currencyTo.</p>\n</li>\n</ul>\n<p>Get available crypto and fiat currencies by using the method <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#699875a1-914c-4a63-ae69-204f7ab5626d\">GET \"Supported currencies\"</a>.</p>\n","urlObject":{"protocol":"https","path":["v2","rate"],"host":["api","heropayments","io"],"query":[{"key":"currencyFrom","value":"usd"},{"key":"currencyTo","value":"sol"},{"key":"transactionType","value":"deposit"}],"variable":[]}},"response":[{"id":"bee6f6db-0333-4a86-b90f-064bf55bac87","name":"Exchange rate","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"currencyFrom\": \"usd\",\r\n    \"currencyTo\": \"sol\",\r\n    \"transactionType\": \"deposit\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/rate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx"},{"key":"Date","value":"Tue, 03 May 2022 14:10:09 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"132"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"X-Request-ID","value":"42bcc76d3f16ee8e7e34089d3b60d2e3"}],"cookie":[],"responseTime":null,"body":"{\n    \"currencyFrom\": \"usd\",\n    \"currencyTo\": \"sol\",\n    \"transactionType\": \"deposit\",\n    \"rate\": \"0.009344788065158223162995988\",\n    \"reverseRate\": \"107.4502406750799836205991875\"\n}"}],"_postman_id":"516cd862-ec92-4849-8773-1a01515f84a5"},{"name":"Supported currencies","event":[{"listen":"prerequest","script":{"id":"dfce1d4c-f35b-416d-9e25-ccc550b2890d","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript"}}],"id":"699875a1-914c-4a63-ae69-204f7ab5626d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/v2/currencies","description":"<p>By using this method, you can see the list of supported cryptocurrencies.</p>\n<p>You can also set <code>?fiat=true</code> to get the list of supported fiat currencies.</p>\n<p><strong>ticker -</strong> shortened name of the currency<br /><strong>fullName -</strong> name of the currency<br /><strong>extraIdName -</strong> extra id of the currency, if it has one<br /><strong>isStable -</strong> shows if the currency is a stablecoin or not<br /><strong>confirmations -</strong> shows the number of confirmation blocks of the currency<br /><strong>blockchain -</strong> shows the blockchain currency is operated on<br /><strong>image -</strong> svg icon of the currency</p>\n","urlObject":{"protocol":"https","path":["v2","currencies"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"3bae0f82-f0f0-4c78-ad8a-4da5666a9c1e","name":"Supported cryptocurrencies","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/v2/currencies"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Sep 2023 10:09:23 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"x-request-id","value":"edbeb069dff5aaf101f95df73fa0f60a"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=QL%2FY12nfsWyeSpx0glwOgUtBVTST%2B7TU1UMrmYoJpbV2tY0uuDqO68PG9nT3z90DvTHgYqAlFkijn5Ae7rNibpUd9kCPfoCrctqVZaANXJZloT6o0WEzBCu82C2%2BbT2An2T8lzOp\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"807012e47af32d28-IAD"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"ticker\": \"1inch\",\n        \"fullName\": \"1INCH\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/1inch_077dc72ed1_d4c0a684d7.svg\"\n    },\n    {\n        \"ticker\": \"aave\",\n        \"fullName\": \"Aave\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/aave_f6d4703da3_84a8243efb.svg\"\n    },\n    {\n        \"ticker\": \"ada\",\n        \"fullName\": \"Cardano\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 6,\n        \"blockchain\": \"cardano\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ada_8f49f35d8f_512e32062e.svg\"\n    },\n    {\n        \"ticker\": \"adabsc\",\n        \"fullName\": \"Cardano\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ada_8f49f35d8f_512e32062e.svg\"\n    },\n    {\n        \"ticker\": \"alicebsc\",\n        \"fullName\": \"Alice\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ALICE_66c3b77148.svg\"\n    },\n    {\n        \"ticker\": \"alpaca\",\n        \"fullName\": \"Alpaca Finance\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ALPACA_60515686c5.svg\"\n    },\n    {\n        \"ticker\": \"ankr\",\n        \"fullName\": \"ANKR\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ankr_b15d085c30_36f4b6798c.svg\"\n    },\n    {\n        \"ticker\": \"ape\",\n        \"fullName\": \"ApeCoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_APE_7c8970a590.svg\"\n    },\n    {\n        \"ticker\": \"arbarb\",\n        \"fullName\": \"Arbitrum\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"arbitrum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ARB_d58e0e5674.svg\"\n    },\n    {\n        \"ticker\": \"arberc\",\n        \"fullName\": \"Arbitrum\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ARB_d58e0e5674.svg\"\n    },\n    {\n        \"ticker\": \"ardr\",\n        \"fullName\": \"Ardor\",\n        \"extraIdName\": \"Message\",\n        \"isStable\": false,\n        \"confirmations\": 20,\n        \"blockchain\": \"ardor\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ardr_55d9259082_34d8477076.svg\"\n    },\n    {\n        \"ticker\": \"arkm\",\n        \"fullName\": \"Arkham\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ARKM_9538b4e0fb.svg\"\n    },\n    {\n        \"ticker\": \"arpa\",\n        \"fullName\": \"ARPA Chain\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ARPA_a0bdf0dd0f.svg\"\n    },\n    {\n        \"ticker\": \"atom\",\n        \"fullName\": \"Cosmos (ATOM)\",\n        \"extraIdName\": \"Memo\",\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"cosmos\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/atom_9ce32d6d37_c8ffd7c373.svg\"\n    },\n    {\n        \"ticker\": \"avaxc\",\n        \"fullName\": \"Avalanche C-Chain\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"avalanche_(c-chain)\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/avax_066241b39c_12499fd024.svg\"\n    },\n    {\n        \"ticker\": \"axs\",\n        \"fullName\": \"Axie Infinity Shard\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_AXS_912606b54a.svg\"\n    },\n    {\n        \"ticker\": \"bal\",\n        \"fullName\": \"Balancer\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/bal_22d4f1e3cd_9fb3538d46.svg\"\n    },\n    {\n        \"ticker\": \"bat\",\n        \"fullName\": \"Basic Attention Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/bat_5725a928b8_6f27ffe3e1.svg\"\n    },\n    {\n        \"ticker\": \"bch\",\n        \"fullName\": \"Bitcoin Cash\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"bitcoin_cash\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/bch_79fc555396_85d306a96a.svg\"\n    },\n    {\n        \"ticker\": \"benjibase\",\n        \"fullName\": \"Basenji\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"base\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/benji_bdf6b52df9.svg\"\n    },\n    {\n        \"ticker\": \"biaosol\",\n        \"fullName\": \"BIAO\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_BIAO_db8f5b08f5.svg\"\n    },\n    {\n        \"ticker\": \"blur\",\n        \"fullName\": \"Blur\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/BLUR_16080750d3.svg\"\n    },\n    {\n        \"ticker\": \"bnbbsc\",\n        \"fullName\": \"Binance Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/bnb_070f978b45_ca21a973dd.svg\"\n    },\n    {\n        \"ticker\": \"bnt\",\n        \"fullName\": \"Bancor Network Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/bnt_b01ddd50d8_788a3cba87.svg\"\n    },\n    {\n        \"ticker\": \"boboerc\",\n        \"fullName\": \"BOBO\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_BOBO_13ca9bdd53.svg\"\n    },\n    {\n        \"ticker\": \"bonksol\",\n        \"fullName\": \"BONK\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/Bonk_y_bceeada91a_2fa18c31c0.png\"\n    },\n    {\n        \"ticker\": \"brettbase\",\n        \"fullName\": \"Brett\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"base\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/brett_c711073b53.svg\"\n    },\n    {\n        \"ticker\": \"bsv\",\n        \"fullName\": \"Bitcoin SV\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 100,\n        \"blockchain\": \"bitcoin_sv\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/bsv_845433fca3_8d054f6b3c.svg\"\n    },\n    {\n        \"ticker\": \"btc\",\n        \"fullName\": \"Bitcoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"bitcoin\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/btc_607160f243_2f3129064d.svg\"\n    },\n    {\n        \"ticker\": \"btt\",\n        \"fullName\": \"BitTorrent-New\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 15,\n        \"blockchain\": \"tron\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_BTTOLD_4cc9ede435.svg\"\n    },\n    {\n        \"ticker\": \"cake\",\n        \"fullName\": \"CAKE\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/cake_ef990e3064_811a788de5.svg\"\n    },\n    {\n        \"ticker\": \"chrbsc\",\n        \"fullName\": \"Chromia\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_CHR_ef405fa4ce.svg\"\n    },\n    {\n        \"ticker\": \"chrerc\",\n        \"fullName\": \"Chromia\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_CHR_ef405fa4ce.svg\"\n    },\n    {\n        \"ticker\": \"comp\",\n        \"fullName\": \"Compound\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/comp_dbe2486e67_307cc8c6cd.svg\"\n    },\n    {\n        \"ticker\": \"cro\",\n        \"fullName\": \"Crypto.com Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/cro_d7023a0338_ce746829c8.svg\"\n    },\n    {\n        \"ticker\": \"crv\",\n        \"fullName\": \"Curve DAO Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/crv_3152873c63_c08ca99c3d.svg\"\n    },\n    {\n        \"ticker\": \"dai\",\n        \"fullName\": \"Dai\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/dai_208a29da19_f43829c0cd.svg\"\n    },\n    {\n        \"ticker\": \"daipolygon\",\n        \"fullName\": \"DAI\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"polygon\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/dai_208a29da19_f43829c0cd.svg\"\n    },\n    {\n        \"ticker\": \"dash\",\n        \"fullName\": \"Dash\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 5,\n        \"blockchain\": \"dash\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/dash_70dbdea2cb_5f8fc076b8.svg\"\n    },\n    {\n        \"ticker\": \"dodobsc\",\n        \"fullName\": \"DODO bird\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_DODO_0e4c48274f.svg\"\n    },\n    {\n        \"ticker\": \"dodoerc\",\n        \"fullName\": \"DODO bird\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_DODO_0e4c48274f.svg\"\n    },\n    {\n        \"ticker\": \"doge\",\n        \"fullName\": \"Dogecoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 4,\n        \"blockchain\": \"doge\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/doge_bd64fd1d91_7d1aaec51e.svg\"\n    },\n    {\n        \"ticker\": \"dogston\",\n        \"fullName\": \"DOGS\",\n        \"extraIdName\": \"comment\",\n        \"isStable\": false,\n        \"confirmations\": 20,\n        \"blockchain\": \"ton\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/dogs_e58d3f15dc.svg\"\n    },\n    {\n        \"ticker\": \"dot\",\n        \"fullName\": \"Polkadot\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 30,\n        \"blockchain\": \"polkadot\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/dot_e136039340_9e72c627a1.svg\"\n    },\n    {\n        \"ticker\": \"elixsol\",\n        \"fullName\": \"Elixir Games\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/elix_2cdb7daabc.svg\"\n    },\n    {\n        \"ticker\": \"ens\",\n        \"fullName\": \"Ethereum Name Service\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ENS_e63c4ce1af.svg\"\n    },\n    {\n        \"ticker\": \"etc\",\n        \"fullName\": \"Ethereum Classic\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 100,\n        \"blockchain\": \"ethereum_classic\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/etc_102c5c5349_46a1e5f827.svg\"\n    },\n    {\n        \"ticker\": \"eth\",\n        \"fullName\": \"Ethereum\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/eth_0256f3e38a_ad4a76fcb7.svg\"\n    },\n    {\n        \"ticker\": \"etharb\",\n        \"fullName\": \"EthereumArbitrum\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"arbitrum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/eth_0256f3e38a_ad4a76fcb7.svg\"\n    },\n    {\n        \"ticker\": \"ethbase\",\n        \"fullName\": \"EthereumBase\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"base\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/eth_0256f3e38a_ad4a76fcb7.svg\"\n    },\n    {\n        \"ticker\": \"ethbsc\",\n        \"fullName\": \"Wrapped ETH\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/eth_0256f3e38a_ad4a76fcb7.svg\"\n    },\n    {\n        \"ticker\": \"ethop\",\n        \"fullName\": \"EthereumOptimism\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"optimism\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/eth_0256f3e38a_ad4a76fcb7.svg\"\n    },\n    {\n        \"ticker\": \"fidasol\",\n        \"fullName\": \"Solana Name Service\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/fidasol_2a611068a2.svg\"\n    },\n    {\n        \"ticker\": \"floki\",\n        \"fullName\": \"FLOKI\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/floki_inu_floki_logo_e5e8ba6d48.svg\"\n    },\n    {\n        \"ticker\": \"flr\",\n        \"fullName\": \"FLARE\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"flare\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/flare_a87247be95_52b982a8a3.svg\"\n    },\n    {\n        \"ticker\": \"fluxbsc\",\n        \"fullName\": \"FLUX\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_FLUX_f0091b2542.svg\"\n    },\n    {\n        \"ticker\": \"fluxerc\",\n        \"fullName\": \"Flux\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_FLUX_f0091b2542.svg\"\n    },\n    {\n        \"ticker\": \"ftt\",\n        \"fullName\": \"FTX Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ftt_cb7d134150_fef8e6b7c4.svg\"\n    },\n    {\n        \"ticker\": \"gigasol\",\n        \"fullName\": \"Gigachad\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/giga_617d971aa0.svg\"\n    },\n    {\n        \"ticker\": \"glm\",\n        \"fullName\": \"Golem\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_GLM_4abd3049e6.svg\"\n    },\n    {\n        \"ticker\": \"gmt\",\n        \"fullName\": \"STEPN\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_GMT_d03d48fda0.svg\"\n    },\n    {\n        \"ticker\": \"gno\",\n        \"fullName\": \"Gnosis\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_GNO_d6c90ff7e4.svg\"\n    },\n    {\n        \"ticker\": \"grt\",\n        \"fullName\": \"The Graph\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_GRT_dff23204f1.svg\"\n    },\n    {\n        \"ticker\": \"gterc\",\n        \"fullName\": \"GateToken\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/gt_db28707938_e1d47b4d97.svg\"\n    },\n    {\n        \"ticker\": \"hbar\",\n        \"fullName\": \"Hedera Hashgraph\",\n        \"extraIdName\": \"Memo\",\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"hedera\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/hbar_445739b210_e696438a06.svg\"\n    },\n    {\n        \"ticker\": \"highbsc\",\n        \"fullName\": \"Highstreet\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/highbsc_b5eae295e6.svg\"\n    },\n    {\n        \"ticker\": \"icp\",\n        \"fullName\": \"ICP\",\n        \"extraIdName\": \"Memo\",\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"icp\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ICP_bbdcb8293b.svg\"\n    },\n    {\n        \"ticker\": \"injbsc\",\n        \"fullName\": \"Injective\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_INJ_6a211f3140.svg\"\n    },\n    {\n        \"ticker\": \"iotabsc\",\n        \"fullName\": \"IOTA\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_MIOTA_d0f63535af.svg\"\n    },\n    {\n        \"ticker\": \"iotxbsc\",\n        \"fullName\": \"IoTeX\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/iotx_681235caf0_3c04642645.svg\"\n    },\n    {\n        \"ticker\": \"jasmyerc\",\n        \"fullName\": \"JasmyCoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_JASMY_f10f0e12c2.svg\"\n    },\n    {\n        \"ticker\": \"jsttrc20\",\n        \"fullName\": \"JUST\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 15,\n        \"blockchain\": \"tron\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/jst_97454d489e_d30f649b75.svg\"\n    },\n    {\n        \"ticker\": \"jupsol\",\n        \"fullName\": \"Jupiter\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/jupiter_b_65914260f1_53e5373c60.svg\"\n    },\n    {\n        \"ticker\": \"kas\",\n        \"fullName\": \"Kaspa\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 500,\n        \"blockchain\": \"kaspa\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_KASPA_b4df314af3.svg\"\n    },\n    {\n        \"ticker\": \"key\",\n        \"fullName\": \"SelfKey\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_KEY_69cc15fb55.svg\"\n    },\n    {\n        \"ticker\": \"klauserc\",\n        \"fullName\": \"Klaus\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_KLAUS_88dddd5830.svg\"\n    },\n    {\n        \"ticker\": \"knc\",\n        \"fullName\": \"Kyber Network\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_KNC_2ec174bf6c.svg\"\n    },\n    {\n        \"ticker\": \"ldoerc\",\n        \"fullName\": \"Lido DAO\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_LDO_5120f4cead.svg\"\n    },\n    {\n        \"ticker\": \"limebsc\",\n        \"fullName\": \"iMe Lab\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_LIME_fc13f7e667.svg\"\n    },\n    {\n        \"ticker\": \"link\",\n        \"fullName\": \"Chainlink\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/link_c3b1eec131_39a05d1118.svg\"\n    },\n    {\n        \"ticker\": \"loom\",\n        \"fullName\": \"Loom Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/loom_abc74424ee_7bb0e62bf0.svg\"\n    },\n    {\n        \"ticker\": \"lrc\",\n        \"fullName\": \"LoopringCoin V2\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/lrc_7afa9dcf6e_644d6e4e1d.svg\"\n    },\n    {\n        \"ticker\": \"ltc\",\n        \"fullName\": \"Litecoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 2,\n        \"blockchain\": \"litecoin\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ltc_bfb24b2d9e_f06a3187f4.svg\"\n    },\n    {\n        \"ticker\": \"magicarb\",\n        \"fullName\": \"Treasure\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"arbitrum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/magic_3a58745a1d_7a18e1412c.svg\"\n    },\n    {\n        \"ticker\": \"mana\",\n        \"fullName\": \"Decentraland\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_MANA_a88b2c6317.svg\"\n    },\n    {\n        \"ticker\": \"maskerc\",\n        \"fullName\": \"Mask Network\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_MASK_633240706f.svg\"\n    },\n    {\n        \"ticker\": \"mdxbsc\",\n        \"fullName\": \"Mdex\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_MDX_b2b74ee10c.svg\"\n    },\n    {\n        \"ticker\": \"melaniasol\",\n        \"fullName\": \"Official Melania Meme\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_MELANIA_f487fd3760.svg\"\n    },\n    {\n        \"ticker\": \"mesol\",\n        \"fullName\": \"Magic Eden\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ME_7aa65e8b3d.svg\"\n    },\n    {\n        \"ticker\": \"metiserc\",\n        \"fullName\": \"MetisDAO\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_METIS_7edf0da7e9.svg\"\n    },\n    {\n        \"ticker\": \"mkr\",\n        \"fullName\": \"Maker\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/mkr_efea0fb999_8471e70f22.svg\"\n    },\n    {\n        \"ticker\": \"nano\",\n        \"fullName\": \"Nano\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"nano\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_NANO_0db1fdf139.svg\"\n    },\n    {\n        \"ticker\": \"near\",\n        \"fullName\": \"NEAR Protocol\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 5,\n        \"blockchain\": \"near\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_NEAR_d995509c0a.svg\"\n    },\n    {\n        \"ticker\": \"nearbsc\",\n        \"fullName\": \"NEAR Protocol\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_NEAR_d995509c0a.svg\"\n    },\n    {\n        \"ticker\": \"neiroerc\",\n        \"fullName\": \"Neiro Ethereum\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/neiro_1_5f7b0a3bc1.svg\"\n    },\n    {\n        \"ticker\": \"nexo\",\n        \"fullName\": \"NEXO\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/nexo_a95551672b_cd643b517d.svg\"\n    },\n    {\n        \"ticker\": \"nim\",\n        \"fullName\": \"Nimiq\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 25,\n        \"blockchain\": \"nimiq\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/nim_9a1cbc4ede_cef71ef776.svg\"\n    },\n    {\n        \"ticker\": \"notton\",\n        \"fullName\": \"Notcoin\",\n        \"extraIdName\": \"comment\",\n        \"isStable\": false,\n        \"confirmations\": 20,\n        \"blockchain\": \"ton\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_NOT_23265f5098.svg\"\n    },\n    {\n        \"ticker\": \"ondoerc\",\n        \"fullName\": \"ONDO\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ONDO_9e8f92c4aa.svg\"\n    },\n    {\n        \"ticker\": \"op\",\n        \"fullName\": \"Optimism\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"optimism\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_OP_770c162eeb.svg\"\n    },\n    {\n        \"ticker\": \"ordererc\",\n        \"fullName\": \"Orderly Network\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/order_14277e5b16.svg\"\n    },\n    {\n        \"ticker\": \"pax\",\n        \"fullName\": \"Paxos Standard Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/pax_c57f62c17e_fc98626078.svg\"\n    },\n    {\n        \"ticker\": \"paxgerc\",\n        \"fullName\": \"PAX Gold\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_PAXG_b2a239bafa.svg\"\n    },\n    {\n        \"ticker\": \"peipeierc\",\n        \"fullName\": \"PeiPei\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/peipei_ed7089ab73.svg\"\n    },\n    {\n        \"ticker\": \"pengusol\",\n        \"fullName\": \"Pudgy Penguins\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_PENGU_406dbad792.svg\"\n    },\n    {\n        \"ticker\": \"pepeerc\",\n        \"fullName\": \"PEPE\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_PEPE_12df9bf37d.svg\"\n    },\n    {\n        \"ticker\": \"pnutsol\",\n        \"fullName\": \"Peanut the Squirrel\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/pnut_a0068b7656.svg\"\n    },\n    {\n        \"ticker\": \"polerc\",\n        \"fullName\": \"POL\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/pol_1_403d1cec20.svg\"\n    },\n    {\n        \"ticker\": \"polygon\",\n        \"fullName\": \"POL\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"polygon\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/pol_1_403d1cec20.svg\"\n    },\n    {\n        \"ticker\": \"ponkesol\",\n        \"fullName\": \"Ponke\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ponke_30b17d373e.svg\"\n    },\n    {\n        \"ticker\": \"powrerc\",\n        \"fullName\": \"Powerledger\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/powr_a62d6a5b60.svg\"\n    },\n    {\n        \"ticker\": \"qnt\",\n        \"fullName\": \"Quant\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/qnt_6661b731ee_fb0aac5ae5.svg\"\n    },\n    {\n        \"ticker\": \"qtum\",\n        \"fullName\": \"Qtum\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 4,\n        \"blockchain\": \"qtum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/qtum_1c41afe59f_1648ecf05b.svg\"\n    },\n    {\n        \"ticker\": \"racabsc\",\n        \"fullName\": \"Radio Caca V2\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_RACA_0e348e5c9f.svg\"\n    },\n    {\n        \"ticker\": \"rareerc\",\n        \"fullName\": \"SuperRare\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_RARE_a7fb7cef3e.svg\"\n    },\n    {\n        \"ticker\": \"ray\",\n        \"fullName\": \"Raydium\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_RAY_f98185b2ca.svg\"\n    },\n    {\n        \"ticker\": \"rbcerc\",\n        \"fullName\": \"Rubic\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/rbc_alt_30647448be.svg\"\n    },\n    {\n        \"ticker\": \"rdnterc\",\n        \"fullName\": \"Radiant Capital\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/rdnt_82c930d489.svg\"\n    },\n    {\n        \"ticker\": \"sand\",\n        \"fullName\": \"The Sandbox\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SAND_1bc3b08f00.svg\"\n    },\n    {\n        \"ticker\": \"santosbsc\",\n        \"fullName\": \"Santos FC Fan Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SANTOS_17720dfd50.svg\"\n    },\n    {\n        \"ticker\": \"sfpbsc\",\n        \"fullName\": \"SafePal\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SFP_397a1d68ce.svg\"\n    },\n    {\n        \"ticker\": \"sgb\",\n        \"fullName\": \"Songbird\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"songbird\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SGB_e1a62958be.svg\"\n    },\n    {\n        \"ticker\": \"shib\",\n        \"fullName\": \"SHIBA INU\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SHIB_41c3eeb873.svg\"\n    },\n    {\n        \"ticker\": \"shiroerc\",\n        \"fullName\": \"Shiro Neko\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SHIRO_5216c83364.svg\"\n    },\n    {\n        \"ticker\": \"snt\",\n        \"fullName\": \"Status\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SNT_f4c7d10c31.svg\"\n    },\n    {\n        \"ticker\": \"snx\",\n        \"fullName\": \"Synthetix\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/snx_8f269017a6_3fa9077262.svg\"\n    },\n    {\n        \"ticker\": \"sol\",\n        \"fullName\": \"SOL\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/sol_e03e30f083_fe0c0397c9.svg\"\n    },\n    {\n        \"ticker\": \"stmxerc\",\n        \"fullName\": \"StormX\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/stmx_5270106940_e756c87f7a.svg\"\n    },\n    {\n        \"ticker\": \"sui\",\n        \"fullName\": \"Sui\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 30,\n        \"blockchain\": \"sui\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SUI_0e800a981c.svg\"\n    },\n    {\n        \"ticker\": \"suntrc20\",\n        \"fullName\": \"Sun\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 15,\n        \"blockchain\": \"tron\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/sun_6c02e6a895_a879a47075.svg\"\n    },\n    {\n        \"ticker\": \"super\",\n        \"fullName\": \"SuperFarm\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SUPER_ab6fc685c9.svg\"\n    },\n    {\n        \"ticker\": \"supra\",\n        \"fullName\": \"SUPRA\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"supra\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SUPRA_20456cb556.svg\"\n    },\n    {\n        \"ticker\": \"sys\",\n        \"fullName\": \"Syscoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"syscoin utxo\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_SYS_01d462d5d8.svg\"\n    },\n    {\n        \"ticker\": \"teterc\",\n        \"fullName\": \"Tectum\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/tet_5ad23b7523.svg\"\n    },\n    {\n        \"ticker\": \"ton\",\n        \"fullName\": \"The Open Network\",\n        \"extraIdName\": \"comment\",\n        \"isStable\": false,\n        \"confirmations\": 20,\n        \"blockchain\": \"ton\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/ton_ebae1444e3.svg\"\n    },\n    {\n        \"ticker\": \"toshibase\",\n        \"fullName\": \"Toshi\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"base\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/toshi_0d0dce054a.svg\"\n    },\n    {\n        \"ticker\": \"treaterc\",\n        \"fullName\": \"Shiba Inu Treat\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_TREAT_e8195a6cfe.svg\"\n    },\n    {\n        \"ticker\": \"trumpsol\",\n        \"fullName\": \"OFFICIAL TRUMP\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_TRUMP_ec186d510a.svg\"\n    },\n    {\n        \"ticker\": \"trx\",\n        \"fullName\": \"Tron\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 15,\n        \"blockchain\": \"tron\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/trx_6f812e2521_003fdeb126.svg\"\n    },\n    {\n        \"ticker\": \"turboerc\",\n        \"fullName\": \"Turbo\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/turbo_ed93d58dc6.svg\"\n    },\n    {\n        \"ticker\": \"tusd\",\n        \"fullName\": \"TrueUSD\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/tusd_1708b3ab51_249af2e70c.svg\"\n    },\n    {\n        \"ticker\": \"twtbsc\",\n        \"fullName\": \"Trust Wallet Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_TWT_1df11eab18.svg\"\n    },\n    {\n        \"ticker\": \"uma\",\n        \"fullName\": \"UMA Voting Token v1\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/uma_33573e5660_b5c55e31fe.svg\"\n    },\n    {\n        \"ticker\": \"uni\",\n        \"fullName\": \"Uniswap\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/uni_540a9f82e8_4da3346aaa.svg\"\n    },\n    {\n        \"ticker\": \"usdc\",\n        \"fullName\": \"USD Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcalgo\",\n        \"fullName\": \"USD Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"algorand\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcarb\",\n        \"fullName\": \"USD Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"arbitrum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcavaxc\",\n        \"fullName\": \"USD coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"avalanche_(c-chain)\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcbase\",\n        \"fullName\": \"USDC\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"base\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcbsc\",\n        \"fullName\": \"USD Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcop\",\n        \"fullName\": \"USD Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"optimism\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcpolygon\",\n        \"fullName\": \"USD Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"polygon\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdcsol\",\n        \"fullName\": \"USD Coin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdc_a29ee98bbe_3e17718547.svg\"\n    },\n    {\n        \"ticker\": \"usdt20\",\n        \"fullName\": \"Tether\",\n        \"extraIdName\": null,\n        \"isStable\": true,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdt20_9a8c677b99_c67aed2f04.svg\"\n    },\n    {\n        \"ticker\": \"usdtavaxc\",\n        \"fullName\": \"Tether\",\n        \"extraIdName\": null,\n        \"isStable\": true,\n        \"confirmations\": 3,\n        \"blockchain\": \"avalanche_(c-chain)\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdt20_9a8c677b99_c67aed2f04.svg\"\n    },\n    {\n        \"ticker\": \"usdtbsc\",\n        \"fullName\": \"Tether\",\n        \"extraIdName\": null,\n        \"isStable\": true,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdt20_9a8c677b99_c67aed2f04.svg\"\n    },\n    {\n        \"ticker\": \"usdtpolygon\",\n        \"fullName\": \"Tether\",\n        \"extraIdName\": null,\n        \"isStable\": true,\n        \"confirmations\": 3,\n        \"blockchain\": \"polygon\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdt20_9a8c677b99_c67aed2f04.svg\"\n    },\n    {\n        \"ticker\": \"usdtsol\",\n        \"fullName\": \"Tether\",\n        \"extraIdName\": null,\n        \"isStable\": true,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdt20_9a8c677b99_c67aed2f04.svg\"\n    },\n    {\n        \"ticker\": \"usdtton\",\n        \"fullName\": \"Tether\",\n        \"extraIdName\": \"comment\",\n        \"isStable\": true,\n        \"confirmations\": 20,\n        \"blockchain\": \"ton\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdt20_9a8c677b99_c67aed2f04.svg\"\n    },\n    {\n        \"ticker\": \"usdttrc20\",\n        \"fullName\": \"Tether\",\n        \"extraIdName\": null,\n        \"isStable\": true,\n        \"confirmations\": 15,\n        \"blockchain\": \"tron\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/usdt20_9a8c677b99_c67aed2f04.svg\"\n    },\n    {\n        \"ticker\": \"vet\",\n        \"fullName\": \"VeChain\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"vechainthor\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/vet_9a86564fa7_f0d9a379ab.svg\"\n    },\n    {\n        \"ticker\": \"vgx\",\n        \"fullName\": \"Voyager Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/vgx_fff25ec7a6_b72b551fd8.svg\"\n    },\n    {\n        \"ticker\": \"vraerc\",\n        \"fullName\": \"Verasity\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_VRA_ea26e41ec4.svg\"\n    },\n    {\n        \"ticker\": \"vtho\",\n        \"fullName\": \"VeThor Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"vtho\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_VTHO_dc20f5fcb2.svg\"\n    },\n    {\n        \"ticker\": \"wbtcerc\",\n        \"fullName\": \"Wrapped Bitcoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/wbtc_4ba5cfe223_fe0e410c1f.svg\"\n    },\n    {\n        \"ticker\": \"wifsol\",\n        \"fullName\": \"dogwifhat\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/dogwifhat_wif_logo_svg_2f46a5a9ac.svg\"\n    },\n    {\n        \"ticker\": \"wld\",\n        \"fullName\": \"Worldcoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/wld_c8f6699c9b.svg\"\n    },\n    {\n        \"ticker\": \"wldop\",\n        \"fullName\": \"Worldcoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 40,\n        \"blockchain\": \"optimism\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/wld_c8f6699c9b.svg\"\n    },\n    {\n        \"ticker\": \"wooerc\",\n        \"fullName\": \"WOO Network\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_WOO_dd8fa22fc8.svg\"\n    },\n    {\n        \"ticker\": \"xcnerc\",\n        \"fullName\": \"Onyxcoin\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/XCN_7bcf4a9191_09c7af6824.svg\"\n    },\n    {\n        \"ticker\": \"xdc\",\n        \"fullName\": \"XDC Network\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"xdc\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_XDC_28dd211cfb.svg\"\n    },\n    {\n        \"ticker\": \"xlm\",\n        \"fullName\": \"Stellar\",\n        \"extraIdName\": \"Memo\",\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"stellar\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/stellar_xlm_logo_b65ce2f66d_947904175d.svg\"\n    },\n    {\n        \"ticker\": \"xmr\",\n        \"fullName\": \"Monero\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 8,\n        \"blockchain\": \"monero\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/xmr_2a7ecbf601_5c38f71cfb.svg\"\n    },\n    {\n        \"ticker\": \"xrp\",\n        \"fullName\": \"XRP\",\n        \"extraIdName\": \"Destination Tag\",\n        \"isStable\": false,\n        \"confirmations\": 1,\n        \"blockchain\": \"ripple\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/xrp_1636b75675_7944e3492e.svg\"\n    },\n    {\n        \"ticker\": \"xtz\",\n        \"fullName\": \"Tezos\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 15,\n        \"blockchain\": \"tezos\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/xtz_1ea77b2969_c16f6cbfe4.svg\"\n    },\n    {\n        \"ticker\": \"yfi\",\n        \"fullName\": \"yearn.finance\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/yfi_18f5ac2fc5_c1e239a14c.svg\"\n    },\n    {\n        \"ticker\": \"yfibsc\",\n        \"fullName\": \"yearn.finance\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/yfi_18f5ac2fc5_c1e239a14c.svg\"\n    },\n    {\n        \"ticker\": \"zbcnsol\",\n        \"fullName\": \"Zebec Network\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"solana\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/zbcn_d393c2a3c8.svg\"\n    },\n    {\n        \"ticker\": \"zilbsc\",\n        \"fullName\": \"Zilliqa\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 3,\n        \"blockchain\": \"binance_smart_chain\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ZIL_3b9f33d136.svg\"\n    },\n    {\n        \"ticker\": \"zkjerc\",\n        \"fullName\": \"Polyhedra Network\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/TICKER_ZKJ_24fe56b0da.svg\"\n    },\n    {\n        \"ticker\": \"zrx\",\n        \"fullName\": \"0x Protocol Token\",\n        \"extraIdName\": null,\n        \"isStable\": false,\n        \"confirmations\": 10,\n        \"blockchain\": \"ethereum\",\n        \"image\": \"https://pretty-picture-g2.s3.eu-central-1.amazonaws.com/zrx_8dcd14024e_537ec4a218.svg\"\n    }\n]"},{"id":"682b7234-f353-43d3-aa50-40f0371636ec","name":"Supported fiat currencies","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":{"raw":"https://api.heropayments.io/v2/currencies?fiat=true","protocol":"https","host":["api","heropayments","io"],"path":["v2","currencies"],"query":[{"key":"fiat","value":"true"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 23 May 2022 16:31:37 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"X-Request-ID","value":"0d65ec6b117b09a3d5d65756da61aae7"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=yhEc3VQcP4fgGNJ5MRAyuPM3rr%2FtVGQHR%2BO5sh6FByIVfG9zcx53i14x5O4SJjfAUoBDDujCUCI5yOpiCYsu7rBmfvcOAPtwvEltzT1jxNyJAvxY2Vdhd7SvjgO4tzzrquq8ffXZ\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"70ff2ed068ef977f-AMS"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"ticker\": \"usd\",\n        \"fullName\": \"US Dollar\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/usd.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"eur\",\n        \"fullName\": \"Euro\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/eur.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"rub\",\n        \"fullName\": \"Russian ruble\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/rub.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"idr\",\n        \"fullName\": \"Indonesian Rupiah\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/idr.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"krw\",\n        \"fullName\": \"South Korean won\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/krw.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"jpy\",\n        \"fullName\": \"Japanese Yen\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/jpy.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"try\",\n        \"fullName\": \"Turkish lira\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/try.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"gbp\",\n        \"fullName\": \"Pound sterling\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/gbp.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"uah\",\n        \"fullName\": \"Ukrainian hryvnia\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/uah.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"ars\",\n        \"fullName\": \"Argentine Peso\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/ars.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"brl\",\n        \"fullName\": \"Brazilian Real\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/brl.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"vnd\",\n        \"fullName\": \"Vietnamese dong\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/vnd.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"kgs\",\n        \"fullName\": \"Kyrgyz som\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/kgs.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"ngn\",\n        \"fullName\": \"Nigerian naira\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/ngn.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"sek\",\n        \"fullName\": \"Swedish krona\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/sek.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"mdl\",\n        \"fullName\": \"Moldovan Leu\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/mdl.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"aud\",\n        \"fullName\": \"Australian dollar\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/aud.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"thb\",\n        \"fullName\": \"Thai baht\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/thb.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"byn\",\n        \"fullName\": \"Belarusian ruble\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/byn.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"nok\",\n        \"fullName\": \"Norwegian krone\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/nok.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"myr\",\n        \"fullName\": \"Malaysian ringgit\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/myr.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"chf\",\n        \"fullName\": \"Swiss franc\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/chf.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"pen\",\n        \"fullName\": \"Peruvian sol\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/pen.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"ils\",\n        \"fullName\": \"Israeli new shekel\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/ils.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"clp\",\n        \"fullName\": \"Chilean peso\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/clp.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"gel\",\n        \"fullName\": \"Georgian lari\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/gel.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"cny\",\n        \"fullName\": \"Chinese Yuan\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/cny.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"kzt\",\n        \"fullName\": \"Kazakhstani tenge\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/kzt.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"huf\",\n        \"fullName\": \"Hungarian forint\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/huf.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"bdt\",\n        \"fullName\": \"Bangladeshi taka\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/bdt.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"nzd\",\n        \"fullName\": \"New Zealand dollar\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/nzd.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"czk\",\n        \"fullName\": \"Czech koruna\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/czk.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"npr\",\n        \"fullName\": \"Nepalese Rupee\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/npr.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"mxn\",\n        \"fullName\": \"Mexican peso\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/mxn.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"pln\",\n        \"fullName\": \"Polish zloty\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/pln.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"lkr\",\n        \"fullName\": \"Sri Lankan Rupee\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/lkr.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"zar\",\n        \"fullName\": \"South African rand\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/zar.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"cad\",\n        \"fullName\": \"Canadian dollar\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/cad.svg\",\n        \"type\": \"FIAT\"\n    },\n    {\n        \"ticker\": \"inr\",\n        \"fullName\": \"Indian rupee\",\n        \"active\": true,\n        \"image\": \"https://changehero.io/static/images/coins/inr.svg\",\n        \"type\": \"FIAT\"\n    }\n]"}],"_postman_id":"699875a1-914c-4a63-ae69-204f7ab5626d"},{"name":"Minimum payment amount (V2)","event":[{"listen":"prerequest","script":{"id":"f8d16b2a-859d-4fb5-9e8a-bfb1525ec47c","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript"}}],"id":"74245569-2457-46f7-bbce-55df4d9d4229","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"x-api-key","value":"your_api_key"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.heropayments.io/v2/min-amount?currency=eth","description":"<p>To retrieve minimum amounts for all supported cryptocurrencies in bulk, call <code>v2/min-amount</code>.</p>\n<p>To get the minimum amount for a specific cryptocurrency, use the currency query parameter, for example: <code>?currency=btc</code>.</p>\n<p>To retrieve minimum amounts for all cryptocurrencies estimated in fiat, call<br /><code>v2/min-amount?baseCurrency=usd</code>.</p>\n<p>Response fields:</p>\n<ul>\n<li><p><code>minDeposit</code> — minimum amount required for a deposit transaction</p>\n</li>\n<li><p><code>minWithdrawal</code> — minimum amount required to create a withdrawal transaction</p>\n</li>\n<li><p><code>currency</code> — cryptocurrency</p>\n</li>\n<li><p><code>baseCurrency</code> — fiat currency</p>\n</li>\n</ul>\n<p>The list of supported cryptocurrencies and fiat currencies can be obtained via the <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#699875a1-914c-4a63-ae69-204f7ab5626d\">GET \"Supported currencies\"</a>.</p>\n","urlObject":{"protocol":"https","path":["v2","min-amount"],"host":["api","heropayments","io"],"query":[{"key":"currency","value":"eth"},{"disabled":true,"key":"","value":""}],"variable":[]}},"response":[{"id":"a87a30a4-0712-4938-873b-c92d4ddbf199","name":"Get the minimum payment amount","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":{"raw":"https://api.heropayments.io/v2/min-amount?currency=eth","protocol":"https","host":["api","heropayments","io"],"path":["v2","min-amount"],"query":[{"key":"currency","value":"eth"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 13:05:18 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"X-Request-ID","value":"1192e721b53d30b074480b84423f556a"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2F7pmmziJSpfut6Zxz6t%2FHZIL6nIVzln4c%2BFZXI3%2BcH8WNCWWjAHsr9vLwsXAUH9f6ECdf0YccVI7WlqEwDt%2FsYEBSf0%2FY7BHYrUaKBtrYrXek4lCQNrHhQbhJcvQpolDM%2Fvykaoh\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"71715bdabab30afe-OSL"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"minDeposit\": 0.07679,\n    \"minWithdrawal\": 0.07679,\n    \"currency\": \"eth\"\n}"}],"_postman_id":"74245569-2457-46f7-bbce-55df4d9d4229"},{"name":"Payment status check by id (V2)","event":[{"listen":"prerequest","script":{"id":"741259d5-b6d5-48af-860c-a9348fa196da","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript"}}],"id":"f850d90d-7926-46f6-bcbf-4b90369cbbf8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"x-api-key","value":"your_api_key"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.heropayments.io/v2/payments/:id","description":"<p>To get information about the status of a deposit/withdrawal, you need to provide a payment ID.</p>\n<p><em>NOTE!</em> <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">GET \"Payment status check by id (V2)\"</a> <em>request should be made with the same API key that you used to create a deposit/withdrawal\"request.</em></p>\n<p>Possible statuses:</p>\n<ul>\n<li><p><strong>waiting</strong> - the initial status of each deposit and withdrawal. Waiting for a transaction to appear in a blockchain;</p>\n</li>\n<li><p><strong>confirming</strong> - waiting for confirmations in a blockchain. There is a minimum required amount of confirmations to consider a crypto transaction finished;</p>\n</li>\n<li><p><strong>exchanging</strong> - crypto exchange process. In case of deposits: from a client's payCurrency to the merchant's balance currency. In case of withdrawals: from the merchant's balance currency to the client's payoutCurrency;</p>\n</li>\n<li><p><strong>sending</strong> - crypto is on its way to the merchant’s wallet (deposit scenario) or the user’s wallet (withdrawal scenario). Considered as a \"success\" status for deposits only;</p>\n</li>\n<li><p><strong>finished</strong> - the transaction is processed successfully. Considered as a \"success\" status;</p>\n</li>\n<li><p><strong>failed</strong> - the transaction is failed due to an error;</p>\n</li>\n<li><p><strong>refunded</strong> - the funds were refunded back to the user’s/Merchant’s wallet;</p>\n</li>\n<li><p><strong>hold</strong> - the transaction is marked as suspicious and the user must pass KYC procedure;</p>\n</li>\n<li><p><strong>expired</strong> - the user didn't send the funds to the specified address in the 4 hour time window, and the created payment expired.</p>\n</li>\n</ul>\n<p>More information could be found in <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#payment-statuses-v2-flow\">Payments statuses - (V2 flow)</a></p>\n<p>PLEASE NOTE!</p>\n<p>We recommend setting up 2 \"success\" statuses: finished and sending as well. Sending - means “money is on our side, and we are transferring it to your balance”.</p>\n<p>Response fields:</p>\n<ul>\n<li><p><strong>Id</strong> – payment ID;</p>\n</li>\n<li><p><strong>status</strong> – status of the transaction;</p>\n</li>\n<li><p><strong>id</strong> – invoice ID;</p>\n</li>\n<li><p><strong>customerID</strong> – ID of the customer;</p>\n</li>\n<li><p><strong>orderID</strong> – the value is identical to externalOrderId;</p>\n</li>\n<li><p><strong>priceCurrency</strong> - user's account currency: fiat or cryptocurrency (ex. USD, EUR, BTC, etc.);</p>\n</li>\n<li><p><strong>priceAmount</strong> - amount specified by user for a deposit/withdrawal in priceCurrency;</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>sequence</strong> - helps to differentiate between the subsequent payments. More information could be found in <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#multiple-deposit-processing\">multiple deposit processing</a>;</p>\n</li>\n<li><p><strong>customerEmail</strong> - user’s email address;</p>\n</li>\n<li><p><strong>transactionType</strong> - always deposit or withdrawal;</p>\n</li>\n<li><p><strong>payCurrency</strong> - cryptocurrency for the transaction (specified by user);</p>\n</li>\n<li><p><strong>payAmount</strong>:<br />  - for deposits - how much the user must pay to complete a deposit;<br />  - for withdrawals - the amount that will be deducted from the merchant's balance to process a withdrawal;</p>\n</li>\n<li><p><strong>payAddress</strong> - deposit address for crypto assets;</p>\n</li>\n<li><p><strong>payExtra</strong> - additional Id which is necessary for identifying a recipient of the transaction. Also known as additional address, memo or destination tag. Users must enter it while withdrawing XRP, BNB, XLM and some other currencies;</p>\n</li>\n<li><p><strong>payHash</strong>:<br />  - for deposits - transaction hash to the deposit address;<br />  - for withdrawals - transaction hash from the merchant’s balance address to an exchange address;</p>\n</li>\n<li><p><strong>payHashLink</strong> - link to transaction hash;</p>\n</li>\n<li><p><strong>userNotes</strong> - notes left by user;</p>\n</li>\n<li><p><strong>createdAt</strong> - time, when the transaction was created;</p>\n</li>\n<li><p><strong>paidAmount</strong> - amount that was actually sent in the transaction;</p>\n</li>\n<li><p><strong>outcomeHash</strong>:<br />  - for deposits - transaction hash from an exchange address to the merchant’s balance address;<br />  - for withdrawals - transaction hash from an exchange address to user’s wallet address;</p>\n</li>\n<li><p><strong>outcomeHashLink</strong> - link to transaction hash;</p>\n</li>\n<li><p><strong>outcomeAmount</strong>:<br />  - for deposits - amount credited to the merchant’s wallet.<br />  - for withdrawals - amount received by user in specified cryptocurrency;</p>\n</li>\n<li><p><strong>outcomeAddress</strong>:<br />  - for deposits - merchant's crypto wallet, which is used to сollect deposits;<br />  - for withdrawals - user’s address to receive the withdrawal;</p>\n</li>\n<li><p><strong>payinSenders</strong> - customer's wallet, used to process a deposit or merchant’s wallet to proceed a withdrawal;</p>\n</li>\n<li><p><strong>fiat</strong> - parameter to specify in priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation, if the user's account is in crypto.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["v2","payments",":id"],"host":["api","heropayments","io"],"query":[],"variable":[{"type":"any","value":null,"key":"id"}]}},"response":[{"id":"995817f6-6004-462c-afab-a1cce9fc8c38","name":"Status check by id","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":{"raw":"https://api.heropayments.io/v2/payments/:id","protocol":"https","host":["api","heropayments","io"],"path":["v2","payments",":id"],"variable":[{"key":"id","value":"2d97cc2c-4804-41ed-a303-0b37bcb2766ee"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 13:05:18 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"X-Request-ID","value":"1192e721b53d30b074480b84423f556a"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2F7pmmziJSpfut6Zxz6t%2FHZIL6nIVzln4c%2BFZXI3%2BcH8WNCWWjAHsr9vLwsXAUH9f6ECdf0YccVI7WlqEwDt%2FsYEBSf0%2FY7BHYrUaKBtrYrXek4lCQNrHhQbhJcvQpolDM%2Fvykaoh\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"71715bdabab30afe-OSL"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"2d97cc2c-4804-41ed-a303-0b37bcb2766ee\",\n    \"status\": \"waiting\",\n    \"invoice\": {\n        \"id\": \"8d767275-cc59-4743-839c-3bd729f212460\",\n        \"customerId\": \"testuser\",\n        \"orderId\": \"453453453453\",\n        \"priceCurrency\": \"usd\",\n        \"priceAmount\": 34\n    },\n    \"externalOrderId\": \"453453453453\",\n    \"sequence\": \"original\",\n    \"customerEmail\": \"test@gmail.com\",\n    \"transactionType\": \"deposit\",\n    \"payCurrency\": \"usdttrc20\",\n    \"payAmount\": 34.54795216,\n    \"payAddress\": \"THqRUngDUejfE6TwM9XhynBAA6qhW6ZWit\",\n    \"payExtra\": null,\n    \"payHash\": null,\n    \"userNotes\": null,\n    \"createdAt\": \"2025-04-09T13:08:54.000Z\",\n    \"paidAmount\": 0,\n    \"outcomeAmount\": 0,\n    \"outcomeCurrency\": \"usdt20\",\n    \"feePercent\": 0.5,\n    \"feeUSDT\": 0,\n    \"networkFee\": 0.5,\n    \"priceRate\": 1.001,\n    \"payRate\": 0.99959615,\n    \"clientAmountUsdt\": 0,\n    \"clientAmount\": 0,\n    \"merchantAmountUsdt\": 0,\n    \"callbackUrl\": null,\n    \"payinSenders\": [],\n    \"fiat\": true\n}"}],"_postman_id":"f850d90d-7926-46f6-bcbf-4b90369cbbf8"},{"name":"Payment status check by Order id (V2)","event":[{"listen":"test","script":{"id":"e16e9f32-7dac-4296-926b-f6db9dbf12ed","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"fa7c9e0f-d411-4dcb-9fea-8e358958b6a9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/v2/payments/order/:orderId","description":"<p>To get information about the status of a deposit/withdrawal, you need to provide an Order ID (externalOrderId).</p>\n<p>Statuses and response fields are identical to <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">Payment status check by id (V2)</a></p>\n","urlObject":{"protocol":"https","path":["v2","payments","order",":orderId"],"host":["api","heropayments","io"],"query":[],"variable":[{"type":"any","value":"","key":"orderId"}]}},"response":[{"id":"59cb3653-70d2-46e4-b057-fc01cfcda59e","name":"Payment status check by Order id (V2)","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":{"raw":"https://api.heropayments.io/v2/payments/order/:orderId","protocol":"https","host":["api","heropayments","io"],"path":["v2","payments","order",":orderId"],"variable":[{"key":"orderId","value":"100244503"}]}},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"5e31fc03-3d19-4448-f33-0655f53dfdc4\",\n    \"status\": \"finished\",\n    \"invoice\": {\n        \"id\": \"113099ab-66c7-4db6-a438-f9a361467177\",\n        \"customerId\": \"Jean105\",\n        \"orderId\": \"100244503\",\n        \"priceCurrency\": \"usd\",\n        \"priceAmount\": 55\n    },\n    \"externalOrderId\": \"100244503\",\n    \"sequence\": \"original\",\n    \"customerEmail\": null,\n    \"transactionType\": \"deposit\",\n    \"payCurrency\": \"doge\",\n    \"payAmount\": 301.84996815,\n    \"payAddress\": \"DJZheBRYjn2jgrdroh4VY7LkLPmxvaj\",\n    \"payExtra\": null,\n    \"payHash\": \"9509f5c326e4894668ea714f8f9d7bc590417d1c762e318d591fcb90b90c62\",\n    \"payHashLink\": \"https://dogechain.info/tx/9509f5c326e4894668ea714f8f9d7bc590417d1c762e318d591fcb90b90c62\",\n    \"userNotes\": null,\n    \"createdAt\": \"2025-03-24T14:22:53.000Z\",\n    \"paidAmount\": 20,\n    \"outcomeHash\": \"0xef965649b6b292d24530b3c0753de2feafce2fe090988465f6f9b565b7196\",\n    \"outcomeHashLink\": \"https://bscscan.com/tx/0xef965649b6b292d24530b3c0753de2feafce2fe090988465f6f9b565b7196\",\n    \"outcomeAmount\": 3.2928841,\n    \"outcomeAddress\": \"0x0952900601c6864b8027fde1d061ef03d62fa3\",\n    \"outcomeCurrency\": \"usdtbsc\",\n    \"feePercent\": 0.5,\n    \"feeUSDT\": 0.01805469,\n    \"networkFee\": 0.3,\n    \"priceRate\": 0.9998,\n    \"payRate\": 0.18054694,\n    \"clientAmountUsdt\": 3.6109388,\n    \"clientAmount\": 3.61,\n    \"merchantAmountUsdt\": 3.2928841,\n    \"callbackUrl\": \"https://webhook.site/03adbbc2-df75-48-b33-10b84255c74f\",\n    \"payinSenders\": [\n        \"D6jRFkAtSS57iMW66BpxYebMDg6oDJqm\"\n    ],\n    \"fiat\": true\n}"}],"_postman_id":"fa7c9e0f-d411-4dcb-9fea-8e358958b6a9"},{"name":"List of payments (V2)","event":[{"listen":"prerequest","script":{"id":"741259d5-b6d5-48af-860c-a9348fa196da","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"1d076c4d-e496-462e-b153-7f9e57b7f9e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"x-api-key","value":"your_api_key"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://api.heropayments.io/v2/payments?search","description":"<p>Returns the entire list of all transactions, created with a certain API key. The list of optional parameters:</p>\n<ul>\n<li><p><strong>limit</strong> - limits amount of transactions on a page;</p>\n</li>\n<li><p><strong>offset</strong> - specified to exclude a number of entries from the query;</p>\n</li>\n<li><p><strong>status</strong> - payment statuses: \"waiting\", \"exchanging\", \"sending\", \"finished\";</p>\n</li>\n<li><p><strong>transactionType</strong> - always \"deposit\" or \"withdrawal\";</p>\n</li>\n<li><p><strong>id</strong> - payment ID;</p>\n</li>\n<li><p><strong>invoiceId</strong> - invoice ID;</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>customerEmail</strong> - user’s email address;</p>\n</li>\n<li><p><strong>customerId</strong> - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>payAddress</strong> - deposit address for crypto assets;</p>\n</li>\n<li><p><strong>payCurrency</strong> - chosen cryptocurrency for a deposit/withdrawal;</p>\n</li>\n<li><p><strong>priceCurrency</strong> - user's account currency: fiat or cryptocurrency;</p>\n</li>\n<li><p><strong>dateFrom</strong> - select the displayed period start date (date format: YYYY-MM-DD or yy-MM-ddTHH:mm:ss.SSSZ);</p>\n</li>\n<li><p><strong>dateTo</strong> - select the displayed period end date (date format: YYYY-MM-DD or yy-MM-ddTHH:mm:ss.SSSZ).</p>\n</li>\n</ul>\n<p>Additionally, there is possibility to find transactions via <em>\"search\"</em> parameter, where you can write in: <strong>id, invoiceId, externalOrderId, customerEmail, payAddress, hash.</strong></p>\n","urlObject":{"protocol":"https","path":["v2","payments"],"host":["api","heropayments","io"],"query":[{"disabled":true,"key":"limit","value":"40"},{"disabled":true,"key":"status","value":"finished"},{"disabled":true,"key":"dateFrom","value":"2022-11-07"},{"disabled":true,"key":"dateTo","value":"2022-11-29"},{"disabled":true,"key":"transactionType","value":"deposit"},{"key":"search","value":null}],"variable":[]}},"response":[],"_postman_id":"1d076c4d-e496-462e-b153-7f9e57b7f9e2"},{"name":"Get balance (V2)","event":[{"listen":"prerequest","script":{"id":"fa204e06-2931-4938-963b-4a1f1e75e53f","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript"}}],"id":"51715a30-cf5e-4237-8815-2d3228311cd7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/v2/balance","description":"<p>This method returns your balance.</p>\n","urlObject":{"protocol":"https","path":["v2","balance"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"bfe810f0-e600-4bdb-aff2-2e8193cdd04e","name":"Get balance","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/balance"},"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"walletAddress\": \"THqRUngDUejfE6TwM9XhynBAA6qhW6ZWit\",\n    \"walletCurrency\": \"usdttrc20\",\n    \"balance\": \"333.80103\"\n}"}],"_postman_id":"51715a30-cf5e-4237-8815-2d3228311cd7"},{"name":"Network fees (V2)","event":[{"listen":"prerequest","script":{"id":"4701aa82-b94d-4497-bc46-db5d5cf7210f","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"1331dffb-239f-4da4-8042-6d05ee882da8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://api.heropayments.io/v2/network-fees","description":"<p>This method returns current network fees (bulk) associated with deposits and withdrawals for various cryptocurrencies.</p>\n<ul>\n<li><p><strong>networkfee –</strong> network Fee to perform the blockchain transaction in USDT equivalent;</p>\n</li>\n<li><p><strong>ticker</strong> – API currency symbols;</p>\n</li>\n<li><p><strong>type</strong> – the type of transaction, which can be either \"deposit\" or \"withdrawal\".</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["v2","network-fees"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"575b06c4-9e5c-4183-905d-1473daf1df95","name":"Network fees","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.heropayments.io/v2/network-fees?x-api-key=your_api_key&x-api-sign=calculated_sign_for_query_string","protocol":"https","host":["api","heropayments","io"],"path":["v2","network-fees"],"query":[{"key":"x-api-key","value":"your_api_key"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}]}},"_postman_previewlanguage":"","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[   {\n        \"networkfee\": \"0.0002500000000000000000\",\n        \"ticker\": \"eth\",\n        \"type\": \"deposit\"\n    },\n    {\n        \"networkfee\": \"0.0002500000000000000000\",\n        \"ticker\": \"eth\",\n        \"type\": \"withdrawal\"\n    }\n]"}],"_postman_id":"1331dffb-239f-4da4-8042-6d05ee882da8"}],"id":"c8a3df1c-7b56-4d56-8882-d8078f46f1ad","_postman_id":"c8a3df1c-7b56-4d56-8882-d8078f46f1ad","description":""},{"name":"Deposits (API and widget)","item":[{"name":"Create a deposit (V2)","event":[{"listen":"prerequest","script":{"id":"efddf46c-7e2a-4a77-a2e9-0aa6af42069a","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"412c5848-dbed-42c5-980b-a3060e9e8c46","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"payCurrency\": \"usdttrc20\",\n    \"priceCurrency\": \"usd\",\n    \"priceAmount\": \"34\",\n    \"customerId\": \"123\",\n    \"customerEmail\": \"test@te34st.com\",\n    \"externalOrderId\": \"14545332115\",\n    \"callbackUrl\": \"https://example.com/callback\"","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/payments","description":"<p>Use this method to create a deposit transaction. Please provide your data as a JSON-object payload.</p>\n<p>Request fields:</p>\n<ul>\n<li><p><strong>payCurrency</strong> (required) - cryptocurrency for the deposit (specified by user);</p>\n</li>\n<li><p><strong>priceCurrency</strong> (required) - the currency in user’s player account;</p>\n</li>\n<li><p><strong>priceAmount</strong> (required) - amount specified by user for deposit in a priceCurrency;</p>\n</li>\n<li><p><strong>customerId</strong> (required) - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>customerEmail</strong> (optional) - user’s email address;</p>\n</li>\n<li><p><strong>externalOrderId</strong> (required) - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>callbackUrl</strong> (optional) - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n<li><p><strong>fiat</strong> - parameter to specify in priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation, if the user's player account is in crypto.</p>\n</li>\n</ul>\n<p>Response fields:</p>\n<ul>\n<li><p><strong>id</strong> - payment ID;</p>\n</li>\n<li><p><strong>status</strong> - status of the transaction;</p>\n</li>\n<li><p><strong>id</strong> - invoice ID;</p>\n</li>\n<li><p><strong>customerID</strong> - ID of the customer;</p>\n</li>\n<li><p><strong>orderID</strong> - the value is identical to externalOrderId;</p>\n</li>\n<li><p><strong>priceCurrency</strong> - user's account currency: fiat or cryptocurrency (ex. USD, EUR, BTC, etc);</p>\n</li>\n<li><p><strong>priceAmount</strong> - amount specified by user for the deposit in priceCurrency.</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>sequence</strong> - helps to differentiate between the subsequent payments. Please read multiple deposit processing;</p>\n</li>\n<li><p><strong>customerEmail</strong> - user’s email address;</p>\n</li>\n<li><p><strong>transactionType</strong> - always deposit or withdrawal, in this case deposit;</p>\n</li>\n<li><p><strong>payCurrency</strong> - cryptocurrency for the transaction (specified by user);</p>\n</li>\n<li><p><strong>payAmount</strong> - expected amount to pay by the user;</p>\n</li>\n<li><p><strong>payAddress</strong> - deposit address for crypto assets;</p>\n</li>\n<li><p><strong>payHash</strong> - transaction hash to the deposit address;</p>\n</li>\n<li><p><strong>payHashLink</strong> - link to transaction hash;</p>\n</li>\n<li><p><strong>userNotes</strong> - notes left by user;</p>\n</li>\n<li><p><strong>createdAt</strong> - time, when the transaction was created;</p>\n</li>\n<li><p><strong>paidAmount</strong> - amount that was actually sent in the transaction;</p>\n</li>\n<li><p><strong>outcomeAmount</strong> - amount credited to the merchant’s wallet;</p>\n</li>\n<li><p><strong>outcomeCurrency</strong> - all deposits are accumulated in the merchant's balance currency;</p>\n</li>\n<li><p><strong>feePercent</strong> - Heropayments processing fee;</p>\n</li>\n<li><p><strong>feeUSDT</strong> - Heropayments processing fee in USDT equivalent;</p>\n</li>\n<li><p><strong>networkFee</strong> - network fee deducted for processing the blockchain transaction;</p>\n</li>\n<li><p><strong>priceRate</strong> - priceCurrency to outcomeCurrency ratio;</p>\n</li>\n<li><p><strong>payRate</strong> - payCurrency to outcomeCurrency ratio;</p>\n</li>\n<li><p><strong>clientAmountUsdt</strong> - deposit amount received from a user and converted to USDT;</p>\n</li>\n<li><p><strong>clientAmount</strong> - fiat equivalent of clientAmountUsdt in priceCurrency. Shows the amount to be credited to users' account;</p>\n</li>\n<li><p><strong>merchantAmountUsdt</strong> - amount credited to Merchant’s wallet in USDT. Equals to outcomeAmount; </p>\n</li>\n<li><p><strong>callbackUrl</strong> - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n<li><p><strong>payinSenders -</strong> the address from which the funds were originally sent (the customer’s wallet address);</p>\n</li>\n<li><p><strong>fiat</strong> - parameter to specify in priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation, if the user's account is in crypto.</p>\n</li>\n</ul>\n<p>You can check the status of the payment via <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">GET \"Payment status check by id (V2)\"</a></p>\n","urlObject":{"protocol":"https","path":["v2","payments"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"b47a6629-7bd6-410e-8f91-594a8150fd7c","name":"Create deposit","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"},{"key":"Content-Type","value":"application/json","type":"text","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"payCurrency\": \"usdttrc20\",\r\n    \"priceCurrency\": \"usd\",\r\n    \"priceAmount\": \"34\",\r\n    \"customerId\": \"123\",\r\n    \"customerEmail\": \"test@te34st.com\",\r\n    \"externalOrderId\": \"145432115\",\r\n    \"callbackUrl\": \"https://example.com/callback\"","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 02 Jun 2022 08:23:01 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"X-Request-ID","value":"97fca46a545874cc7ee3b0aba50417b4"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=i1CV4jpvwrK31XIw08VrdthFnr6%2FQbjIcekV8kgc3KwJD4aU9SKYIlnTzE2yKQ67S5YYEFtIFSj3ghX6fl30jB47pAY%2BDxwA6E8KCxdNzAllG6PXb6F7p0ZNxNvRFgYCOH0mwEKv\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"714ec8d269694151-HAM"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"2d97cc2c-4804-41ed-a303-0b37bcb2766ee\",\n    \"status\": \"waiting\",\n    \"invoice\": {\n        \"id\": \"8d767275-cc59-4743-839c-3bd729f212460\",\n        \"customerId\": \"testuser\",\n        \"orderId\": \"453453453453\",\n        \"priceCurrency\": \"usd\",\n        \"priceAmount\": 34\n    },\n    \"externalOrderId\": \"453453453453\",\n    \"sequence\": \"original\",\n    \"customerEmail\": \"test@gmail.com\",\n    \"transactionType\": \"deposit\",\n    \"payCurrency\": \"usdttrc20\",\n    \"payAmount\": 34.54795216,\n    \"payAddress\": \"THqRUngDUejfE6TwM9XhynBAA6qhW6ZWit\",\n    \"payExtra\": null,\n    \"payHash\": null,\n    \"userNotes\": null,\n    \"createdAt\": \"2025-04-09T13:08:54.000Z\",\n    \"paidAmount\": 0,\n    \"outcomeAmount\": 0,\n    \"outcomeCurrency\": \"usdt20\",\n    \"feePercent\": 0.5,\n    \"feeUSDT\": 0,\n    \"networkFee\": 0.5,\n    \"priceRate\": 1.001,\n    \"payRate\": 0.99959615,\n    \"clientAmountUsdt\": 0,\n    \"clientAmount\": 0,\n    \"merchantAmountUsdt\": 0,\n    \"callbackUrl\": null,\n    \"payinSenders\": [],\n    \"fiat\": true\n}"}],"_postman_id":"412c5848-dbed-42c5-980b-a3060e9e8c46"},{"name":"Create a deposit (address only)","event":[{"listen":"prerequest","script":{"id":"2d30c647-6813-4979-a836-bcb6e6a28334","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"8b0e55de-3557-494e-bdc1-c7cc28234288","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"payCurrency\": \"usdttrc20\",\n    \"priceCurrency\": \"usd\",\n    \"customerId\": \"123\",\n    \"customerEmail\": \"test@test.com\",\n    \"externalOrderId\": \"1245411536\",\n    \"callbackUrl\": \"https://example.com/callback\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/payments-address","description":"<p>This method provides a streamlined way to generate a deposit address without performing amount or exchange rate calculations.</p>\n<p>The <code>v2/payments-address</code> endpoint behaves identically to <code>v2/payments</code> in terms of statuses and supported features, but offers a faster response time.</p>\n<p>Use cases: gambling deposits, donations, and other scenarios where the deposit amount does not need to be converted to a local fiat currency. You simply display the generated deposit address (<code>payAddress</code>) to the user to receive funds.</p>\n<p>Once the payment is completed, a callback is sent containing the actual deposited amount.</p>\n","urlObject":{"protocol":"https","path":["v2","payments-address"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"d45b032a-3ca1-4ad2-8b39-280a36cccd7a","name":"Create deposit","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"},{"key":"Content-Type","value":"application/json","type":"text","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"payCurrency\": \"usdttrc20\",\r\n    \"priceCurrency\": \"usd\",\r\n    \"customerId\": \"123\",\r\n    \"customerEmail\": \"test@test.com\",\r\n    \"externalOrderId\": \"1245411536\",\r\n    \"callbackUrl\": \"https://example.com/callback\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/payments"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 02 Jun 2022 08:23:01 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"X-Request-ID","value":"97fca46a545874cc7ee3b0aba50417b4"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=i1CV4jpvwrK31XIw08VrdthFnr6%2FQbjIcekV8kgc3KwJD4aU9SKYIlnTzE2yKQ67S5YYEFtIFSj3ghX6fl30jB47pAY%2BDxwA6E8KCxdNzAllG6PXb6F7p0ZNxNvRFgYCOH0mwEKv\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"714ec8d269694151-HAM"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"9753658a-3b9d-4a14-b931-bbec23da345\",\n    \"status\": \"waiting\",\n    \"invoice\": {\n        \"id\": \"34a40436-12e5-46b2-b0ab-89ae76b872b\",\n        \"customerId\": \"123\",\n        \"orderId\": null,\n        \"priceCurrency\": \"usd\",\n        \"priceAmount\": 0\n    },\n    \"externalOrderId\": \"1245411536\",\n    \"sequence\": \"original\",\n    \"customerEmail\": \"test@test.com\",\n    \"transactionType\": \"deposit\",\n    \"payCurrency\": \"usdttrc20\",\n    \"payAmount\": 0,\n    \"payAddress\": \"THqRUngDUejfE6TwM9XhynBAA6qhW6ZWit\",\n    \"payExtra\": null,\n    \"payHash\": null,\n    \"userNotes\": null,\n    \"createdAt\": \"2025-04-10T10:49:52.000Z\",\n    \"paidAmount\": 0,\n    \"outcomeAmount\": 0,\n    \"outcomeCurrency\": \"usdt20\",\n    \"feePercent\": 0.5,\n    \"feeUSDT\": 0,\n    \"networkFee\": 0.5,\n    \"priceRate\": 1,\n    \"payRate\": 1,\n    \"clientAmountUsdt\": 0,\n    \"clientAmount\": 0,\n    \"merchantAmountUsdt\": 0,\n    \"callbackUrl\": \"https://example.com/callback\",\n    \"fiat\": true\n}"}],"_postman_id":"8b0e55de-3557-494e-bdc1-c7cc28234288"},{"name":"Create an invoice (widget)","event":[{"listen":"prerequest","script":{"id":"a0c98327-848b-47a2-9f2b-aeb03f6e4452","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"7f594c26-bdfe-4a0d-a7c8-007efe82a797","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"priceCurrency\": \"usdttrc20\",\r\n    \"priceAmount\": \"34\",\r\n    \"customerId\": \"123\",\r\n    \"externalOrderId\": \"64536456\",\r\n    \"successUrl\": \"https://www.google.com/?hl=en\",\r\n    \"failUrl\": \"https://en.wikipedia.org/wiki/Main_Page\",\r\n    \"callbackUrl\": \"https://example.com/callback\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/invoices","description":"<p>The customer must open the generated <code>invoiceUrl</code> to complete the deposit. On the payment widget, the customer selects the cryptocurrency to use for the payment.</p>\n<p>Depending on the payment outcome, the customer is redirected to either <code>successUrl</code> or <code>failUrl</code>.</p>\n<p><strong>Payment widget DEMO VIDEO -</strong><br /><a href=\"https://drive.google.com/file/d/1zpgT5U34Ysc7Wq83zWpinldic2yji0qc/view?usp=drive_link\">https://drive.google.com/file/d/1zpgT5U34Ysc7Wq83zWpinldic2yji0qc/view?usp=drive_link</a></p>\n<p>Request fields:</p>\n<ul>\n<li><p><strong>priceCurrency</strong> (required) - the currency in user’s player account in which the priceAmount is specified and displayed on the widget;</p>\n</li>\n<li><p><strong>priceAmount</strong> (required) - amount specified by user for the deposit in priceCurrency;</p>\n</li>\n<li><p><strong>customerId</strong> (required) - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>externalOrderId</strong> (required) - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>successUrl</strong> (optional) - merchant's URL after a successful payment. Also known as \"thank-you page\";</p>\n</li>\n<li><p><strong>failUrl</strong> (optional) - merchant's URL when the customer cancels the order. Also known as \"cancel page\";</p>\n</li>\n<li><p><strong>callbackUrl</strong> (optional) - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n</ul>\n<p>Response fields:</p>\n<ul>\n<li><p><strong>id</strong> - invoice ID</p>\n</li>\n<li><p><strong>customerId</strong> - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>priceAmount</strong> - amount specified by user for the deposit in priceCurrency;</p>\n</li>\n<li><p><strong>priceCurrency</strong> - user's account currency: fiat or cryptocurrency (ex. USD, EUR, BTC, etc.);</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>orderDescription</strong> - notes about the order;</p>\n</li>\n<li><p><strong>successUrl</strong> (optional) - redirects to Merchant's URL after successful payment. Also known as \"thank-you page\";</p>\n</li>\n<li><p><strong>failUrl</strong> (optional) - redirects to Merchant's URL when a customer cancels the order. Also known as \"cancel page\";</p>\n</li>\n<li><p><strong>invoiceUrl</strong> - Heropayments hosted URL to redirect customers to proceed the deposit;</p>\n</li>\n<li><p><strong>callbackUrl</strong> - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n<li><p><strong>createdAt</strong> - time, when the invoice was created;</p>\n</li>\n<li><p><strong>fiat</strong> - parameter to specify in priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation, if the user's account is in crypto.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["v2","invoices"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"7f08d426-5cc9-4dea-9268-b70eba20b825","name":"Create an invoice (widget)","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"},{"key":"Content-Type","value":"application/json","type":"text","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"priceCurrency\": \"usdttrc20\",\r\n    \"priceAmount\": \"34\",\r\n    \"customerId\": \"123\",\r\n    \"externalOrderId\": \"64536456\",\r\n    \"successUrl\": \"https://www.google.com/?hl=en\",\r\n    \"failUrl\": \"https://en.wikipedia.org/wiki/Main_Page\",\r\n    \"callbackUrl\": \"https://example.com/callback\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/invoices"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 02 Jun 2022 08:23:01 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"X-Request-ID","value":"97fca46a545874cc7ee3b0aba50417b4"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=i1CV4jpvwrK31XIw08VrdthFnr6%2FQbjIcekV8kgc3KwJD4aU9SKYIlnTzE2yKQ67S5YYEFtIFSj3ghX6fl30jB47pAY%2BDxwA6E8KCxdNzAllG6PXb6F7p0ZNxNvRFgYCOH0mwEKv\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"714ec8d269694151-HAM"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"55043fdf-bf9a-49d7-8021-33434d65112\",\n    \"customerId\": \"123\",\n    \"priceAmount\": \"34\",\n    \"priceCurrency\": \"usdttrc20\",\n    \"externalOrderId\": \"64536456\",\n    \"orderDescription\": null,\n    \"successUrl\": \"https://www.google.com/?hl=en\",\n    \"failUrl\": \"https://en.wikipedia.org/wiki/Main_Page\",\n    \"invoiceUrl\": \"https://pay.heropayments.io/pay/55043fdf-bf9a-49d7-8021-33434d65112c\",\n    \"callbackUrl\": \"https://example.com/callback\",\n    \"createdAt\": \"2025-04-10T11:41:44.000Z\",\n    \"fiat\": false\n}"}],"_postman_id":"7f594c26-bdfe-4a0d-a7c8-007efe82a797"},{"name":"Create an invoice (widget - chosen currency)","event":[{"listen":"prerequest","script":{"id":"8db43839-6d86-4a30-88f8-e0cae0a1fe72","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"849d8eb4-1f33-4e59-b442-a9f70093ca19","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"priceCurrency\": \"doge\",\n    \"priceAmount\": \"50\",\n    \"customerId\": \"123\",\n    \"payCurrency\":\"usdttrc20\",\n    \"externalOrderId\": \"64456545645\",\n    \"successUrl\": \"https://www.google.com/?hl=en\",\n    \"failUrl\": \"https://en.wikipedia.org/wiki/Main_Page\",\n    \"callbackUrl\": \"https://example.com/callback\"\n}\n","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/invoices","description":"<p>In addition to creating an invoice (widget), this method supports creating an invoice with a predefined cryptocurrency. In this case, the user skips the initial step of selecting a payment currency, as it is already specified.</p>\n<p>Enter the right cryptocurrency in payCurrency to redirect your user to the payment.</p>\n","urlObject":{"protocol":"https","path":["v2","invoices"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"ef57f7ce-54ec-45b6-a4b9-399195ff095a","name":"Create an invoice (widget - chosen currency)","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"},{"key":"Content-Type","value":"application/json","type":"text","disabled":true}],"body":{"mode":"raw","raw":"{\n    \"priceCurrency\": \"doge\",\n    \"priceAmount\": \"50\",\n    \"customerId\": \"123\",\n    \"payCurrency\":\"usdttrc20\",\n    \"externalOrderId\": \"64456545645\",\n    \"successUrl\": \"https://www.google.com/?hl=en\",\n    \"failUrl\": \"https://en.wikipedia.org/wiki/Main_Page\",\n    \"callbackUrl\": \"https://example.com/callback\"\n}\n","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/invoices"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"fdaf664c-6ce4-4e45-b56b-ab402ecb3d6e\",\n    \"customerId\": \"123\",\n    \"priceAmount\": \"50\",\n    \"priceCurrency\": \"doge\",\n    \"externalOrderId\": \"64456545645\",\n    \"orderDescription\": null,\n    \"successUrl\": \"https://www.google.com/?hl=en\",\n    \"failUrl\": \"https://en.wikipedia.org/wiki/Main_Page\",\n    \"invoiceUrl\": \"https://pay.heropayments.io/pay/fdaf664c-6ce4-4e45-b56b-ab402ecb3d6e\",\n    \"callbackUrl\": \"https://example.com/callback\",\n    \"createdAt\": \"2025-04-10T11:58:41.000Z\",\n    \"fiat\": false\n}"}],"_postman_id":"849d8eb4-1f33-4e59-b442-a9f70093ca19"}],"id":"3b30d83d-5046-40bd-a6f9-d074bf93c9c3","_postman_id":"3b30d83d-5046-40bd-a6f9-d074bf93c9c3","description":""},{"name":"Withdrawals","item":[{"name":"Create a withdrawal (V2)","event":[{"listen":"prerequest","script":{"id":"8c3ee447-3cd2-4150-bb3e-58bd42a78867","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"a4e3c2d9-c88d-417e-90eb-947fc8eb9c10","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"123\",\r\n    \"payoutAddress\": \"0x846CD889507F93E8E077E4813B9341ABA9fBA3B2\",\r\n    \"payoutCurrency\": \"usdt20\",\r\n    \"priceCurrency\":\"usd\",\r\n    \"priceAmount\": \"3\",\r\n    \"payoutExtraId\": \"\",\r\n    \"customerEmail\": \"test@test.com\",\r\n    \"externalOrderId\": \"123453356744123a\",\r\n    \"callbackUrl\": \"https://example.com/callback\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/withdrawal","description":"<p>Use this method to create a withdrawal (payout) transaction. Please provide your data as a JSON-object payload.</p>\n<p>Request fields:</p>\n<ul>\n<li><p><strong>customerId</strong> (required) - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>payoutAddress</strong> (required) - your user’s address to receive the withdrawal;</p>\n</li>\n<li><p><strong>payoutCurrency</strong> (required) - chosen cryptocurrency for the withdrawal;</p>\n</li>\n<li><p><strong>priceCurrency</strong> (required) - how much will receive a user in estimated value;</p>\n</li>\n<li><p><strong>priceAmount</strong> (required) - amount specified by user for withdrawal in priceCurrency;</p>\n</li>\n<li><p><strong>customerEmail</strong> (optional) - user’s email;</p>\n</li>\n<li><p><strong>payoutExtraId</strong> (optional) - additional Id which is necessary for identifying a recipient of the transaction. Also known as additional address, memo or destination tag. Users must enter it while withdrawing XRP, BNB, XLM and some other currencies;</p>\n</li>\n<li><p><strong>externalOrderId</strong> (required) - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>callbackUrl</strong> (optional) - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n<li><p><strong>fiat</strong> - parameter to specify in priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation, if the user's account is in crypto.</p>\n</li>\n</ul>\n<p>Response fields:</p>\n<ul>\n<li><p><strong>id</strong> - payment ID;</p>\n</li>\n<li><p><strong>status</strong> - status of the transaction;</p>\n</li>\n<li><p><strong>id</strong> - invoice ID;</p>\n</li>\n<li><p><strong>customerID</strong> - ID of the customer;</p>\n</li>\n<li><p><strong>priceCurrency</strong> - user's account currency: fiat or cryptocurrency (ex. USD, EUR, BTC, etc.);</p>\n</li>\n<li><p><strong>priceAmount</strong> - amount specified by user for the deposit in priceCurrency;</p>\n</li>\n<li><p><strong>customerEmail</strong> - user’s email address;</p>\n</li>\n<li><p><strong>sequence</strong> - used for deposits only, for withdrawals remains \"original\";</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>transactionType</strong> - always deposit or withdrawal, in this case withdrawal;</p>\n</li>\n<li><p><strong>payCurrency</strong> - cryptocurrency for the transaction (specified by user);</p>\n</li>\n<li><p><strong>payAmount</strong> - the amount that must be deducted from the merchant's account to process a withdrawal;</p>\n</li>\n<li><p><strong>outcomeAddress</strong> - user’s address to receive the withdrawal’</p>\n</li>\n<li><p><strong>payExtra</strong> - additional Id which is necessary for identifying a recipient of the transaction. Also known as additional address, memo or destination tag. Users must enter it while withdrawing XRP, BNB, XLM and some other currencies;</p>\n</li>\n<li><p><strong>payHash</strong> - transaction hash from the merchant’s balance address to an exchange address;</p>\n</li>\n<li><p><strong>createdAt</strong> - time, when the transaction was created;</p>\n</li>\n<li><p><strong>paidAmount</strong> - amount that was actually sent in the transaction;</p>\n</li>\n<li><p><strong>outcomeAmount</strong> - the amount that a user must receive for a withdrawal;</p>\n</li>\n<li><p><strong>outcomeCurrency</strong> - a currency that the user chose for the withdrawal;</p>\n</li>\n<li><p><strong>feePercent</strong> - Heropayments processing fee (%);</p>\n</li>\n<li><p><strong>feeUSDT</strong> - Heropayments processing fee in the Currency equivalent;</p>\n</li>\n<li><p><strong>networkFee</strong> - network fee deducted for processing the blockchain transaction;</p>\n</li>\n<li><p><strong>priceRate</strong> - priceCurrency to outcomeCurrency ratio;</p>\n</li>\n<li><p><strong>payRate</strong> - payCurrency to outcomeCurrency ratio;</p>\n</li>\n<li><p><strong>clientAmountUsdt</strong> - USDT equivalent of a withdrawal amount sent to the user;</p>\n</li>\n<li><p><strong>clientAmount</strong> - equivalent of priceAmount in priceCurrency. This amount that user should receive for a withdrawal;</p>\n</li>\n<li><p><strong>merchantAmountUsdt</strong> - USDT amount deducted from the mechant's balance to process a withdrawal for user;</p>\n</li>\n<li><p><strong>payinSenders</strong> - merchant’s wallet to proceed a withdrawal;</p>\n</li>\n<li><p>fiat - parameter to specify in priceCurrency. True is set by default. Pass false to create a transaction with crypto estimation, if the user's account is in crypto.</p>\n</li>\n</ul>\n<p>You can check the status of the payment via <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#f850d90d-7926-46f6-bcbf-4b90369cbbf8\">GET \"Payment status check by id (V2)\"</a></p>\n<p>We have 2 types of daily limits:</p>\n<ul>\n<li><p>Merchant withdrawal limit – for the entire merchant account per day;</p>\n</li>\n<li><p>Customer withdrawal limit – for each customerId per day.</p>\n</li>\n</ul>\n<p>To set up the limits, reach us via <a href=\"https://mailto:partners@heropayments.io/\">partners@heropayments.io</a> or contact your personal account manager.</p>\n<p>In case of an infrastructural error, the withdrawal goes to the <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#abe7f3cd-0d6c-43b1-8719-ed448a0f8340\">withdrawal queue</a>, if this option is turned on for your account.</p>\n","urlObject":{"protocol":"https","path":["v2","withdrawal"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"d8938945-6676-472b-938c-f565f943a09d","name":"Create withdrawal","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_body","type":"text"},{"key":"Content-Type","value":"application/json","type":"text","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"123\",\r\n    \"payoutAddress\": \"0x846CD889507F93E8E077E4813B9341ABA9fBA3B2\",\r\n    \"payoutCurrency\": \"usdt20\",\r\n    \"priceCurrency\":\"usd\",\r\n    \"priceAmount\": \"3\",\r\n    \"payoutExtraId\": \"\",\r\n    \"customerEmail\": \"test@test.com\",\r\n    \"externalOrderId\": \"123453356744123a\",\r\n    \"callbackUrl\": \"https://example.com/callback\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/v2/withdrawal"},"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"30d0e936-178e-4781-9133-abaab5318dca\",\n    \"status\": \"waiting\",\n    \"invoice\": {\n        \"id\": \"4e25ebe9-a0aa-4979-b8b6-313ecd18c81e\",\n        \"customerId\": \"123\",\n        \"orderId\": null,\n        \"priceCurrency\": \"usd\",\n        \"priceAmount\": 3\n    },\n    \"externalOrderId\": \"123453356744123a\",\n    \"sequence\": \"original\",\n    \"customerEmail\": \"test@test.com\",\n    \"transactionType\": \"withdrawal\",\n    \"payCurrency\": \"usdt20\",\n    \"payAmount\": 3.521126,\n    \"payExtra\": null,\n    \"payHash\": null,\n    \"userNotes\": null,\n    \"createdAt\": \"2025-04-10T12:55:05.000Z\",\n    \"paidAmount\": 0,\n    \"outcomeAmount\": 0,\n    \"outcomeAddress\": \"0x846CD889507F93E8E077E4813B9341ABA9fBA3B2\",\n    \"outcomeExtraId\": null,\n    \"outcomeCurrency\": \"usdt20\",\n    \"feePercent\": 0.6,\n    \"feeUSDT\": 0.01810865,\n    \"networkFee\": 0.5,\n    \"priceRate\": 1,\n    \"payRate\": 1,\n    \"clientAmountUsdt\": 3.00301735,\n    \"clientAmount\": 3,\n    \"merchantAmountUsdt\": 3.521126,\n    \"callbackUrl\": \"https://example.com/callback\",\n    \"fiat\": true\n}"}],"_postman_id":"a4e3c2d9-c88d-417e-90eb-947fc8eb9c10"}],"id":"d9200fe3-376e-4cd1-a951-ce07c42ffdb5","_postman_id":"d9200fe3-376e-4cd1-a951-ce07c42ffdb5","description":""}],"id":"f51161d4-5cba-459f-a3ce-ba7e7d631f0d","_postman_id":"f51161d4-5cba-459f-a3ce-ba7e7d631f0d","description":""},{"name":"Custody flow","item":[{"name":"Common","item":[{"name":"Payment status check by id (Custody)","event":[{"listen":"prerequest","script":{"id":"5b2fe1d8-1ed4-476c-b761-7a6936d8caba","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret-custody')","    ? pm.environment.get('api-secret-custody')","    : pm.variables.has('api-secret-custody')","        ? pm.variables.get('api-secret-custody')","        : pm.globals.has('api-secret-custody')","            ? pm.globals.get('api-secret-custody')","            : pm.collectionVariables.has('api-secret-custody')","                ? pm.collectionVariables.get('api-secret-custody')","                : console.error(new Error('api-secret-custody is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","const sign = crypto.HmacSHA512(payload, secret).toString();","// console.log(secret, sign);","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"b62b5946-51fe-4d79-b818-4ff427dcf727","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/payments/:id","description":"<p>To get information about the status of a deposit/withdrawal, you need to provide a payment ID.</p>\n<p><em>NOTE!</em> <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">GET \"Payment status check by id (Custody)\"</a> <em>request should be made with the same API key that you used to create a deposit/withdrawal request.</em></p>\n<p>Possible statuses:</p>\n<ul>\n<li><p><strong>new</strong> - the transaction was just created;</p>\n</li>\n<li><p><strong>pending</strong> - the transaction is waiting to be processed;</p>\n</li>\n<li><p><strong>processing</strong> - the transaction is being processed;</p>\n</li>\n<li><p><strong>finished</strong> - the transaction is processed successfully. Considered as a \"success\" status;</p>\n</li>\n<li><p><strong>failed</strong> - the transaction is failed due to an error;</p>\n</li>\n<li><p><strong>refunded</strong> - the funds were refunded back to the user’s/Merchant’s wallet;</p>\n</li>\n<li><p><strong>hold</strong> - the transaction is marked as suspicious and the user must pass KYC procedure;</p>\n</li>\n<li><p><strong>expired</strong> - the user didn't send the funds to the specified address during 4 hours and therefore the payment expired.</p>\n</li>\n</ul>\n<p>More information could be found in <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#payments-statuses-custody-flow\">Payments statuses - (Custody flow)</a></p>\n<p>Response fields:</p>\n<ul>\n<li><p><strong>id</strong> – payment ID;</p>\n</li>\n<li><p><strong>subEmail</strong> - if a payment was created by a subuser of the main account, the field reflects the name of the subaccount;</p>\n</li>\n<li><p><strong>currency</strong> - currency of the transaction;</p>\n</li>\n<li><p><strong>amount</strong> - amount specified by user for the deposit/withdrawal in Currency</p>\n</li>\n<li><p><strong>feePercent</strong> - Heropayments processing fee (%);</p>\n</li>\n<li><p><strong>feeAmount</strong> - Heropayments processing fee in the Currency equivalent;</p>\n</li>\n<li><p><strong>clientAmount</strong>:<br />  - for deposits - amount of crypto received from a user to a created deposit address<br />  - for withdrawals - amount sent to the user;</p>\n</li>\n<li><p><strong>merchantAmount</strong>:<br />  - for deposits - amount credited to the merchant’s wallet in Currency;<br />  - for withdrawals - amount deducted from the merchant's balance to process the withdrawal for the user;</p>\n</li>\n<li><p><strong>networkFee</strong> - network fee deducted for processing the blockchain transaction;</p>\n</li>\n<li><p><strong>customerId</strong> - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>sequence</strong> - helps to differentiate between the subsequent payments. More information could be found in <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#multiple-deposit-processing\">multiple deposit </a> <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#multiple-deposit-processing\">processing</a>;</p>\n</li>\n<li><p><strong>callbackUrl</strong> - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n<li><p><strong>transactionType</strong> - always deposit or withdrawal;</p>\n</li>\n<li><p><strong>address</strong>:<br />  - for deposits - deposit address for crypto assets<br />  - for withdrawals - destination address of your user where the crypto was withdrawn to;</p>\n</li>\n<li><p><strong>addressExtra</strong> - additional Id which is necessary for identifying a recipient of the transaction. Also known as additional address, memo or destination tag. Users must enter it while withdrawing XRP, BNB, XLM and some other currencies;</p>\n</li>\n<li><p><strong>status</strong> - status of the payment;</p>\n</li>\n<li><p><strong>confirmations</strong> - number of confirmations on the blockchain. We need to wait until the payment gets at least several confirmations to process it;</p>\n</li>\n<li><p><strong>hash</strong> - transaction blockchain hash;</p>\n</li>\n<li><p><strong>hashLink</strong> - link to hash;</p>\n</li>\n<li><p><strong>comment</strong> - additional information about the payment;</p>\n</li>\n<li><p><strong>createdAt</strong> - time, when the transaction was created;</p>\n</li>\n<li><p><strong>updatedAt­­</strong> - time, when the transaction was updated.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["custody","payments",":id"],"host":["api","heropayments","io"],"query":[],"variable":[{"type":"any","value":"","key":"id"}]}},"response":[{"id":"076a067a-7a14-49aa-a996-1c89e91e69a3","name":"Status check by id","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/payments/f4a71706-60d3-444c-8e5d-ffe1111edc07"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sat, 21 Oct 2023 19:35:07 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"x-request-id","value":"84fbfa31b212e290addfdcd6e622391b"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=X3qqhzQMmg6DXMJHD2cClum0HFFJ0pL2Li8iMm5VNwkf9TX9uIlweIKzxXqQj0d%2BkBKOb3sa17IZwu2i9fj1DM0OfSqrXtmDTWoVU1mBae%2FDBO38GepAYH35IbErqhD5AjfWgGw1utAASyeT\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"819bf1215fed3b54-IAD"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"d10978f1-270d-4dd8-a8c2-391a1a6d9691\",\n    \"subEmail\": null,\n    \"currency\": \"usdttrc20\",\n    \"amount\": \"0\",\n    \"feePercent\": 0.5,\n    \"feeAmount\": \"0\",\n    \"clientAmount\": \"0\",\n    \"merchantAmount\": \"0\",\n    \"networkFee\": \"2.3\",\n    \"customerId\": \"123\",\n    \"externalOrderId\": \"4534534512312\",\n    \"sequence\": \"original\",\n    \"callbackUrl\": \"https://example.com/callback\",\n    \"transactionType\": \"deposit\",\n    \"address\": \"TH8tjabYVHKa8BWLQ1WhJPXbnfnHGb5Gau\",\n    \"addressExtra\": null,\n    \"status\": \"new\",\n    \"confirmations\": 0,\n    \"hash\": null,\n    \"hashLink\": null,\n    \"comment\": null,\n    \"createdAt\": \"2025-04-11T11:56:19.483Z\",\n    \"updatedAt\": \"2025-04-11T11:56:19.506Z\"\n}"}],"_postman_id":"b62b5946-51fe-4d79-b818-4ff427dcf727"},{"name":"Payment status check by Order id (Custody)","event":[{"listen":"prerequest","script":{"id":"df8b1efd-9dd9-4125-aa82-e385c789e409","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"ec38a124-9231-4cc6-a6be-605a41bc3b14","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/payments/order/:orderId","description":"<p>To get information about the status of a deposit/withdrawal, you need to provide an Order ID (externalOrderId).</p>\n<p>Statuses and response fields are identical to <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">Payment status check by id (Custody)</a></p>\n","urlObject":{"protocol":"https","path":["custody","payments","order",":orderId"],"host":["api","heropayments","io"],"query":[],"variable":[{"type":"any","value":"","key":"orderId"}]}},"response":[{"id":"60f1121a-b845-4238-acd8-4971e6ef048e","name":"Payment status check by Order id (Custody)","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":{"raw":"https://api.heropayments.io/custody/payments/order/:orderId","protocol":"https","host":["api","heropayments","io"],"path":["custody","payments","order",":orderId"],"variable":[{"key":"orderId","value":""}]}},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"9adb774a-75d5-4af5-8f6b-eb5654f4db\",\n    \"subEmail\": null,\n    \"currency\": \"usdtbsc\",\n    \"feePercent\": 0.5,\n    \"amount\": \"4\",\n    \"feeAmount\": \"0.02\",\n    \"clientAmount\": \"4\",\n    \"merchantAmount\": \"4.32\",\n    \"networkFee\": \"0.3\",\n    \"customerId\": \"Tony\",\n    \"externalOrderId\": \"Tony_salary_June\",\n    \"callbackUrl\": null,\n    \"transactionType\": \"withdrawal\",\n    \"address\": \"0xf69ca466ac101702b2e8fcd06d2b4a2dd2887\",\n    \"addressExtra\": \"\",\n    \"status\": \"finished\",\n    \"confirmations\": 0,\n    \"hash\": \"0xa32ba5f98d490036fb1f37c2eb637ec77103e10b5e7f7618017dbc226083f\",\n    \"hashLink\": \"https://bscscan.com/tx/0xa32ba5f98d490036fb1f37c2eb637ec77103e10b5e7f7618017dbc226083f\",\n    \"comment\": \"June_salary\",\n    \"createdAt\": \"2025-07-23T11:15:59.992Z\",\n    \"updatedAt\": \"2025-07-23T11:16:50.884Z\"\n}"}],"_postman_id":"ec38a124-9231-4cc6-a6be-605a41bc3b14"},{"name":"List of payments (Custody)","event":[{"listen":"prerequest","script":{"id":"5b2fe1d8-1ed4-476c-b761-7a6936d8caba","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret-custody')","    ? pm.environment.get('api-secret-custody')","    : pm.variables.has('api-secret-custody')","        ? pm.variables.get('api-secret-custody')","        : pm.globals.has('api-secret-custody')","            ? pm.globals.get('api-secret-custody')","            : pm.collectionVariables.has('api-secret-custody')","                ? pm.collectionVariables.get('api-secret-custody')","                : console.error(new Error('api-secret-custody is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","const sign = crypto.HmacSHA512(payload, secret).toString();","// console.log(secret, sign);","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"1ec8d006-a284-4c79-b2ae-1a7e9d5761de","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/payments?offset=0&limit=10&status=finished&dateFrom=&dateTo=&transactionType=deposit","description":"<p>Returns the entire list of all transactions, created with a certain API key. The list of optional parameters:</p>\n<ul>\n<li><p><strong>limit</strong> - limits the amount of transactions on a page;</p>\n</li>\n<li><p><strong>offset</strong> - specified to exclude a number of entries from the query;</p>\n</li>\n<li><p><strong>status</strong> - payment statuses (\"new\", \"processing\", \"pending\", \"finished\");</p>\n</li>\n<li><p><strong>transactionType</strong> - always \"deposit\" or \"withdrawal\";</p>\n</li>\n<li><p><strong>currency</strong> - currency of the transaction, the full list of supported currencies you can find here <a href=\"https://docs.google.com/spreadsheets/d/1WjpmYaSE6Fd7BnRPdris8w-mKNAEPRay0nB1BTy_6-U/edit?pli=1&amp;gid=0#gid=0\">list of supported currencies</a>;</p>\n</li>\n<li><p><strong>hash</strong> - transaction blockchain hash</p>\n</li>\n<li><p><strong>subEmail</strong> - if a payment was created by a subuser of the main account, the field reflects the name of the subaccount;</p>\n</li>\n<li><p><strong>customerId</strong> - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>address</strong>:<br />  - for deposits - deposit address for crypto assets;<br />  - for withdrawals - destination address of your user where the crypto was withdrawn to;</p>\n</li>\n<li><p><strong>dateFrom</strong> - select the start date for the displayed period (date format: YYYY-MM-DD or yy-MM-ddTHH:mm:ss.SSSZ);</p>\n</li>\n<li><p><strong>dateTo</strong> - select the end date for the displayed period (date format: YYYY-MM-DD or yy-MM-ddTHH:mm:ss.SSSZ).</p>\n</li>\n</ul>\n<p>Payments are sorted by createdAt (newest to oldest).</p>\n","urlObject":{"protocol":"https","path":["custody","payments"],"host":["api","heropayments","io"],"query":[{"key":"offset","value":"0"},{"key":"limit","value":"10"},{"key":"status","value":"finished"},{"key":"dateFrom","value":""},{"key":"dateTo","value":""},{"key":"transactionType","value":"deposit"}],"variable":[]}},"response":[],"_postman_id":"1ec8d006-a284-4c79-b2ae-1a7e9d5761de"},{"name":"Get balance (Custody)","event":[{"listen":"prerequest","script":{"id":"971c5c93-ea14-48b7-9fb8-a103add4e21d","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret-custody')","    ? pm.environment.get('api-secret-custody')","    : pm.variables.has('api-secret-custody')","        ? pm.variables.get('api-secret-custody')","        : pm.globals.has('api-secret-custody')","            ? pm.globals.get('api-secret-custody')","            : pm.collectionVariables.has('api-secret-custody')","                ? pm.collectionVariables.get('api-secret-custody')","                : console.error(new Error('api-secret-custody is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","const sign = crypto.HmacSHA512(payload, secret).toString();","// console.log(secret, sign);","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"8b8de6a1-fec5-4255-a087-1dece185ba01","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/balances","description":"<p>Returns the entire list of all balances, created with a certain API key. The list of parameters:</p>\n<ul>\n<li><p><strong>currency</strong> - balance currency;</p>\n</li>\n<li><p><strong>total</strong> - available + locked assets;</p>\n</li>\n<li><p><strong>available</strong> - amount of available assets on your balance;</p>\n</li>\n<li><p><strong>usdEstimate</strong> - balance currency to USD ratio;</p>\n</li>\n<li><p><strong>locked</strong> - temporary locked assets. To get more information, reach out to the account team.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["custody","balances"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"3b76e432-f4f9-4314-b00a-2e4c4686a197","name":"Get balance","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/balances"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sat, 21 Oct 2023 19:42:19 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"x-request-id","value":"442a13873112d2b4553ac71bbbb4c2fd"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=f%2FUO9Th0pw2uxUXsWzMRMFZnnkQVhc%2FZSum%2F0mZQFGSSWgPZeIC5wx9HpVmStvzQbvG6iMFdWpjivphW8ldWV1wPEsvnvdbBXCyo%2F%2BYi%2FAdUmJJ3DS%2FvXBhrvNQzoODMi1FX70RU%2FLCWtFnw\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"819bfba9bad1f88d-IAD"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"currency\": \"ton\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"trx\",\n        \"total\": \"5.58\",\n        \"available\": \"5.58\",\n        \"usdEstimate\": \"1.38\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"usdttrc20\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"xrp\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"usdt20\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"doge\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"bnbbsc\",\n        \"total\": \"0.000432599994897\",\n        \"available\": \"0.000432599994897\",\n        \"usdEstimate\": \"0.28\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"adabsc\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"1inch\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"usdc\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"ada\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"usdtbsc\",\n        \"total\": \"0.164\",\n        \"available\": \"0.164\",\n        \"usdEstimate\": \"0.16\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"usdtsol\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    },\n    {\n        \"currency\": \"sol\",\n        \"total\": \"0\",\n        \"available\": \"0\",\n        \"usdEstimate\": \"n/a\",\n        \"locked\": \"0\"\n    }\n]"}],"_postman_id":"8b8de6a1-fec5-4255-a087-1dece185ba01"},{"name":"Minimum payment amount (Custody)","event":[{"listen":"prerequest","script":{"id":"90844b3a-7377-4d0f-892a-e7d0d561b852","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret-custody')","    ? pm.environment.get('api-secret-custody')","    : pm.variables.has('api-secret-custody')","        ? pm.variables.get('api-secret-custody')","        : pm.globals.has('api-secret-custody')","            ? pm.globals.get('api-secret-custody')","            : pm.collectionVariables.has('api-secret-custody')","                ? pm.collectionVariables.get('api-secret-custody')","                : console.error(new Error('api-secret-custody is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","const sign = crypto.HmacSHA512(payload, secret).toString();","// console.log(secret, sign);","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"d8dae306-0798-4c8b-880b-209a9a258345","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/min-amount","description":"<p>This method returns the minimum amounts required to process deposit and withdrawal transactions.</p>\n<p>To retrieve minimum amounts for all supported cryptocurrencies in bulk, call <code>custody/min-amount</code>. To get the minimum amount for a specific cryptocurrency, use the currency query parameter, for example: <code>?currency=btc</code>.</p>\n<p>To retrieve minimum amounts for all cryptocurrencies estimated in fiat, call <code>custody/min-amount?baseCurrency=usd</code>.</p>\n<p>Response fields:</p>\n<ul>\n<li><p><code>minDeposit</code> <strong>—</strong> minimum amount required for a deposit transaction</p>\n</li>\n<li><p><code>minWithdrawal</code> <strong>—</strong> minimum amount required for a withdrawal transaction</p>\n</li>\n<li><p><code>currency</code> <strong>—</strong> cryptocurrency code</p>\n</li>\n</ul>\n<p>The list of supported cryptocurrencies is available here <strong>-</strong> <a href=\"https://docs.google.com/spreadsheets/d/1WjpmYaSE6Fd7BnRPdris8w-mKNAEPRay0nB1BTy_6-U/edit?pli=1&amp;gid=0#gid=0\"><b>List of supported currencies</b></a></p>\n","urlObject":{"protocol":"https","path":["custody","min-amount"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"1cf7b196-4e39-4ec9-80c5-d00e07cc0993","name":"Minimum payment amount","originalRequest":{"method":"GET","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"url":"https://api.heropayments.io/custody/min-amount"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 29 Jul 2024 09:06:03 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"x-request-id","value":"fa252591d28e4c083fe21f226f76fb74"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v4?s=XSND73%2FSr%2FujjKCkKjKMGVzvHCApY9rbnkm51%2B51MhFBwIy8KK4jqxxROe%2Fy1mTb0mQVH%2FVQ3COAgb%2FpTrB4uRqXVppW2aR1widX3Nn1SMDlFW7jEIsgd7RLyS%2Fh5kDEudr80eNy\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"8aabf35cde39801d-IAD"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"minDeposit\": 109.24253654,\n        \"minWithdrawal\": 95.58721947,\n        \"currency\": \"1inch\"\n    },\n    {\n        \"minDeposit\": 12.14715063,\n        \"minWithdrawal\": 12.14958055,\n        \"currency\": \"ada\"\n    },\n    {\n        \"minDeposit\": 84.99268339,\n        \"minWithdrawal\": 84.99268339,\n        \"currency\": \"algo\"\n    },\n    {\n        \"minDeposit\": 10.47862411,\n        \"minWithdrawal\": 10.47862411,\n        \"currency\": \"alicebsc\"\n    },\n    {\n        \"minDeposit\": 97.6285829,\n        \"minWithdrawal\": 97.6285829,\n        \"currency\": \"alpaca\"\n    },\n    {\n        \"minDeposit\": 1300.6645527,\n        \"minWithdrawal\": 1138.08148361,\n        \"currency\": \"ankr\"\n    },\n    {\n        \"minDeposit\": 64.11818382,\n        \"minWithdrawal\": 44.88272867,\n        \"currency\": \"ape\"\n    },\n    {\n        \"minDeposit\": 27.75185426,\n        \"minWithdrawal\": 27.75185426,\n        \"currency\": \"arbarb\"\n    },\n    {\n        \"minDeposit\": 83.25556278,\n        \"minWithdrawal\": 83.25556278,\n        \"currency\": \"arberc\"\n    },\n    {\n        \"minDeposit\": 278.07955042,\n        \"minWithdrawal\": 278.07955042,\n        \"currency\": \"ardr\"\n    },\n    {\n        \"minDeposit\": 27.89654364,\n        \"minWithdrawal\": 13.94827182,\n        \"currency\": \"arkm\"\n    },\n    {\n        \"minDeposit\": 730.01441973,\n        \"minWithdrawal\": 851.68348969,\n        \"currency\": \"arpa\"\n    },\n    {\n        \"minDeposit\": 0.43362807,\n        \"minWithdrawal\": 0.43362807,\n        \"currency\": \"avax\"\n    },\n    {\n        \"minDeposit\": 0.180317,\n        \"minWithdrawal\": 0.18067836,\n        \"currency\": \"avaxc\"\n    },\n    {\n        \"minDeposit\": 6.64593896,\n        \"minWithdrawal\": 5.81519659,\n        \"currency\": \"axs\"\n    },\n    {\n        \"minDeposit\": 15.64169921,\n        \"minWithdrawal\": 13.68648681,\n        \"currency\": \"bal\"\n    },\n    {\n        \"minDeposit\": 201.7624521,\n        \"minWithdrawal\": 176.54214559,\n        \"currency\": \"bat\"\n    },\n    {\n        \"minDeposit\": 0.03792893,\n        \"minWithdrawal\": 0.03792893,\n        \"currency\": \"bch\"\n    },\n    {\n        \"minDeposit\": 262.34628671,\n        \"minWithdrawal\": 183.6424007,\n        \"currency\": \"blur\"\n    },\n    {\n        \"minDeposit\": 0.00862066,\n        \"minWithdrawal\": 0.00862066,\n        \"currency\": \"bnbbsc\"\n    },\n    {\n        \"minDeposit\": 84.32147762,\n        \"minWithdrawal\": 59.02503433,\n        \"currency\": \"bnt\"\n    },\n    {\n        \"minDeposit\": 21.79527368,\n        \"minWithdrawal\": 10.89763684,\n        \"currency\": \"bonderc\"\n    },\n    {\n        \"minDeposit\": 46331.34070624,\n        \"minWithdrawal\": 46331.34070624,\n        \"currency\": \"bonksol\"\n    },\n    {\n        \"minDeposit\": 0.26627192,\n        \"minWithdrawal\": 0.22189326,\n        \"currency\": \"bsv\"\n    },\n    {\n        \"minDeposit\": 0.00029608,\n        \"minWithdrawal\": 0.00007402,\n        \"currency\": \"btc\"\n    },\n    {\n        \"minDeposit\": 17027983.36864314,\n        \"minWithdrawal\": 39731961.19350067,\n        \"currency\": \"btt\"\n    },\n    {\n        \"minDeposit\": 6.13474063,\n        \"minWithdrawal\": 7.66842578,\n        \"currency\": \"cake\"\n    },\n    {\n        \"minDeposit\": 132.29766347,\n        \"minWithdrawal\": 66.14883173,\n        \"currency\": \"chrbsc\"\n    },\n    {\n        \"minDeposit\": 220.49610579,\n        \"minWithdrawal\": 154.34727405,\n        \"currency\": \"chrerc\"\n    },\n    {\n        \"minDeposit\": 573.26983908,\n        \"minWithdrawal\": 501.6111092,\n        \"currency\": \"chz\"\n    },\n    {\n        \"minDeposit\": 0.983066,\n        \"minWithdrawal\": 0.6881462,\n        \"currency\": \"comp\"\n    },\n    {\n        \"minDeposit\": 220.82751221,\n        \"minWithdrawal\": 220.82751221,\n        \"currency\": \"cro\"\n    },\n    {\n        \"minDeposit\": 187.28143797,\n        \"minWithdrawal\": 131.09700658,\n        \"currency\": \"crv\"\n    },\n    {\n        \"minDeposit\": 29.96461288,\n        \"minWithdrawal\": 34.95871502,\n        \"currency\": \"dai\"\n    },\n    {\n        \"minDeposit\": 19.97640858,\n        \"minWithdrawal\": 19.97640858,\n        \"currency\": \"daipolygon\"\n    },\n    {\n        \"minDeposit\": 0.44803024,\n        \"minWithdrawal\": 1.30675488,\n        \"currency\": \"dash\"\n    },\n    {\n        \"minDeposit\": 1597.63403757,\n        \"minWithdrawal\": 4659.76594291,\n        \"currency\": \"dgb\"\n    },\n    {\n        \"minDeposit\": 92.75262358,\n        \"minWithdrawal\": 154.58770597,\n        \"currency\": \"dodobsc\"\n    },\n    {\n        \"minDeposit\": 386.46926494,\n        \"minWithdrawal\": 270.52848546,\n        \"currency\": \"dodoerc\"\n    },\n    {\n        \"minDeposit\": 9.92038386,\n        \"minWithdrawal\": 15.26212902,\n        \"currency\": \"doge\"\n    },\n    {\n        \"minDeposit\": 2.07997653,\n        \"minWithdrawal\": 0.86665688,\n        \"currency\": \"dot\"\n    },\n    {\n        \"minDeposit\": 85.84862103,\n        \"minWithdrawal\": 27.31547032,\n        \"currency\": \"dydx\"\n    },\n    {\n        \"minDeposit\": 0.15261886,\n        \"minWithdrawal\": 1.07047302,\n        \"currency\": \"egld\"\n    },\n    {\n        \"minDeposit\": 1.88188066,\n        \"minWithdrawal\": 1.31731646,\n        \"currency\": \"ens\"\n    },\n    {\n        \"minDeposit\": 0.48543222,\n        \"minWithdrawal\": 0.220651,\n        \"currency\": \"etc\"\n    },\n    {\n        \"minDeposit\": 0.00616495,\n        \"minWithdrawal\": 0.00154123,\n        \"currency\": \"eth\"\n    },\n    {\n        \"minDeposit\": 0.00493045,\n        \"minWithdrawal\": 0.00493045,\n        \"currency\": \"etharb\"\n    },\n    {\n        \"minDeposit\": 0.00369793,\n        \"minWithdrawal\": 0.00369793,\n        \"currency\": \"ethbase\"\n    },\n    {\n        \"minDeposit\": 0.0046223,\n        \"minWithdrawal\": 0.0046223,\n        \"currency\": \"ethbsc\"\n    },\n    {\n        \"minDeposit\": 0.00616321,\n        \"minWithdrawal\": 0.00616321,\n        \"currency\": \"ethop\"\n    },\n    {\n        \"minDeposit\": 284428.65614537,\n        \"minWithdrawal\": 199100.05930176,\n        \"currency\": \"floki\"\n    },\n    {\n        \"minDeposit\": 111.50030247,\n        \"minWithdrawal\": 78.05021173,\n        \"currency\": \"ftm\"\n    },\n    {\n        \"minDeposit\": 47.9510571,\n        \"minWithdrawal\": 23.97552855,\n        \"currency\": \"ftt\"\n    },\n    {\n        \"minDeposit\": 147.29961343,\n        \"minWithdrawal\": 103.1097294,\n        \"currency\": \"glm\"\n    },\n    {\n        \"minDeposit\": 79.07324955,\n        \"minWithdrawal\": 79.07324955,\n        \"currency\": \"gmt\"\n    },\n    {\n        \"minDeposit\": 0.23366977,\n        \"minWithdrawal\": 0.16356883,\n        \"currency\": \"gno\"\n    },\n    {\n        \"minDeposit\": 255.559094,\n        \"minWithdrawal\": 178.8913658,\n        \"currency\": \"grt\"\n    },\n    {\n        \"minDeposit\": 173.97653665,\n        \"minWithdrawal\": 173.97653665,\n        \"currency\": \"hbar\"\n    },\n    {\n        \"minDeposit\": 0.48555226,\n        \"minWithdrawal\": 0.48555226,\n        \"currency\": \"injbsc\"\n    },\n    {\n        \"minDeposit\": 1259.34232021,\n        \"minWithdrawal\": 629.6711601,\n        \"currency\": \"jasmyerc\"\n    },\n    {\n        \"minDeposit\": 508.67429772,\n        \"minWithdrawal\": 508.67429772,\n        \"currency\": \"jsttrc20\"\n    },\n    {\n        \"minDeposit\": 10.65834697,\n        \"minWithdrawal\": 10.65834697,\n        \"currency\": \"jupsol\"\n    },\n    {\n        \"minDeposit\": 9278.21766773,\n        \"minWithdrawal\": 6494.75236741,\n        \"currency\": \"key\"\n    },\n    {\n        \"minDeposit\": 91.59261929,\n        \"minWithdrawal\": 64.1148335,\n        \"currency\": \"knc\"\n    },\n    {\n        \"minDeposit\": 25.0053203,\n        \"minWithdrawal\": 12.50266015,\n        \"currency\": \"ldoerc\"\n    },\n    {\n        \"minDeposit\": 2.21798445,\n        \"minWithdrawal\": 2.21798445,\n        \"currency\": \"link\"\n    },\n    {\n        \"minDeposit\": 1792.59026276,\n        \"minWithdrawal\": 1140.73925812,\n        \"currency\": \"loom\"\n    },\n    {\n        \"minDeposit\": 324.73336072,\n        \"minWithdrawal\": 227.3133525,\n        \"currency\": \"lrc\"\n    },\n    {\n        \"minDeposit\": 0.01541323,\n        \"minWithdrawal\": 0.07006014,\n        \"currency\": \"ltc\"\n    },\n    {\n        \"minDeposit\": 144.7099613,\n        \"minWithdrawal\": 101.29697291,\n        \"currency\": \"mana\"\n    },\n    {\n        \"minDeposit\": 21.33833281,\n        \"minWithdrawal\": 14.93683297,\n        \"currency\": \"maskerc\"\n    },\n    {\n        \"minDeposit\": 38.6273914,\n        \"minWithdrawal\": 28.97054355,\n        \"currency\": \"matic\"\n    },\n    {\n        \"minDeposit\": 9.63753415,\n        \"minWithdrawal\": 9.65684785,\n        \"currency\": \"maticbsc\"\n    },\n    {\n        \"minDeposit\": 1386.48462244,\n        \"minWithdrawal\": 924.32308163,\n        \"currency\": \"mdxbsc\"\n    },\n    {\n        \"minDeposit\": 1.01948142,\n        \"minWithdrawal\": 0.71363699,\n        \"currency\": \"metiserc\"\n    },\n    {\n        \"minDeposit\": 0.01908428,\n        \"minWithdrawal\": 0.01335899,\n        \"currency\": \"mkr\"\n    },\n    {\n        \"minDeposit\": 5.19943942,\n        \"minWithdrawal\": 36.46901402,\n        \"currency\": \"nano\"\n    },\n    {\n        \"minDeposit\": 3.59445719,\n        \"minWithdrawal\": 3.59445719,\n        \"currency\": \"near\"\n    },\n    {\n        \"minDeposit\": 42.41731546,\n        \"minWithdrawal\": 29.69212082,\n        \"currency\": \"nexo\"\n    },\n    {\n        \"minDeposit\": 3516.61768719,\n        \"minWithdrawal\": 24665.65512062,\n        \"currency\": \"nim\"\n    },\n    {\n        \"minDeposit\": 803.10875859,\n        \"minWithdrawal\": 803.10875859,\n        \"currency\": \"notton\"\n    },\n    {\n        \"minDeposit\": 11.58909663,\n        \"minWithdrawal\": 11.58909663,\n        \"currency\": \"op\"\n    },\n    {\n        \"minDeposit\": 49.94091177,\n        \"minWithdrawal\": 34.95863824,\n        \"currency\": \"pax\"\n    },\n    {\n        \"minDeposit\": 0.02083994,\n        \"minWithdrawal\": 0.01458796,\n        \"currency\": \"paxgerc\"\n    },\n    {\n        \"minDeposit\": 5079533.98678652,\n        \"minWithdrawal\": 5079533.98678652,\n        \"currency\": \"pepeerc\"\n    },\n    {\n        \"minDeposit\": 9.63753415,\n        \"minWithdrawal\": 9.65684785,\n        \"currency\": \"polygon\"\n    },\n    {\n        \"minDeposit\": 0.69274446,\n        \"minWithdrawal\": 0.48492112,\n        \"currency\": \"qnt\"\n    },\n    {\n        \"minDeposit\": 5.47583695,\n        \"minWithdrawal\": 5.47583695,\n        \"currency\": \"qtum\"\n    },\n    {\n        \"minDeposit\": 175631.84383254,\n        \"minWithdrawal\": 117087.89588836,\n        \"currency\": \"racabsc\"\n    },\n    {\n        \"minDeposit\": 716.10242782,\n        \"minWithdrawal\": 417.72641622,\n        \"currency\": \"rareerc\"\n    },\n    {\n        \"minDeposit\": 5.07671997,\n        \"minWithdrawal\": 5.07671997,\n        \"currency\": \"ray\"\n    },\n    {\n        \"minDeposit\": 150.11967948,\n        \"minWithdrawal\": 105.08377563,\n        \"currency\": \"sand\"\n    },\n    {\n        \"minDeposit\": 1.68065718,\n        \"minWithdrawal\": 5.05207569,\n        \"currency\": \"santosbsc\"\n    },\n    {\n        \"minDeposit\": 6.348705,\n        \"minWithdrawal\": 19.08428357,\n        \"currency\": \"sfpbsc\"\n    },\n    {\n        \"minDeposit\": 1771232.25460104,\n        \"minWithdrawal\": 1771232.25460104,\n        \"currency\": \"shib\"\n    },\n    {\n        \"minDeposit\": 4390.83783241,\n        \"minWithdrawal\": 1397.08476485,\n        \"currency\": \"snt\"\n    },\n    {\n        \"minDeposit\": 29.31265813,\n        \"minWithdrawal\": 20.51886069,\n        \"currency\": \"snx\"\n    },\n    {\n        \"minDeposit\": 0.02717438,\n        \"minWithdrawal\": 0.02717438,\n        \"currency\": \"sol\"\n    },\n    {\n        \"minDeposit\": 5231.19747962,\n        \"minWithdrawal\": 3661.83823573,\n        \"currency\": \"stmxerc\"\n    },\n    {\n        \"minDeposit\": 25.81637731,\n        \"minWithdrawal\": 25.81637731,\n        \"currency\": \"sui\"\n    },\n    {\n        \"minDeposit\": 1406.99256352,\n        \"minWithdrawal\": 1406.99256352,\n        \"currency\": \"suntrc20\"\n    },\n    {\n        \"minDeposit\": 68.27264702,\n        \"minWithdrawal\": 47.79085291,\n        \"currency\": \"super\"\n    },\n    {\n        \"minDeposit\": 287.73689917,\n        \"minWithdrawal\": 335.69304903,\n        \"currency\": \"sys\"\n    },\n    {\n        \"minDeposit\": 12.38851467,\n        \"minWithdrawal\": 12.38851467,\n        \"currency\": \"sysevm\"\n    },\n    {\n        \"minDeposit\": 1.67279722,\n        \"minWithdrawal\": 1.67279722,\n        \"currency\": \"ton\"\n    },\n    {\n        \"minDeposit\": 7.99783679,\n        \"minWithdrawal\": 36.35380361,\n        \"currency\": \"trx\"\n    },\n    {\n        \"minDeposit\": 49.94091177,\n        \"minWithdrawal\": 34.95863824,\n        \"currency\": \"tusd\"\n    },\n    {\n        \"minDeposit\": 11.80520722,\n        \"minWithdrawal\": 11.80520722,\n        \"currency\": \"twtbsc\"\n    },\n    {\n        \"minDeposit\": 43.71553188,\n        \"minWithdrawal\": 13.90948741,\n        \"currency\": \"uma\"\n    },\n    {\n        \"minDeposit\": 6.59584898,\n        \"minWithdrawal\": 4.61709428,\n        \"currency\": \"uni\"\n    },\n    {\n        \"minDeposit\": 19.99634119,\n        \"minWithdrawal\": 19.99634119,\n        \"currency\": \"usdc\"\n    },\n    {\n        \"minDeposit\": 0.99981705,\n        \"minWithdrawal\": 4.99908529,\n        \"currency\": \"usdcbsc\"\n    },\n    {\n        \"minDeposit\": 1.29976217,\n        \"minWithdrawal\": 4.99908529,\n        \"currency\": \"usdcpolygon\"\n    },\n    {\n        \"minDeposit\": 1.29976217,\n        \"minWithdrawal\": 4.99908529,\n        \"currency\": \"usdcsol\"\n    },\n    {\n        \"minDeposit\": 19.99192302,\n        \"minWithdrawal\": 3.9983846,\n        \"currency\": \"usdt20\"\n    },\n    {\n        \"minDeposit\": 1.29947953,\n        \"minWithdrawal\": 2.99879892,\n        \"currency\": \"usdtbsc\"\n    },\n    {\n        \"minDeposit\": 10.99688785,\n        \"minWithdrawal\": 10.99688785,\n        \"currency\": \"usdtpolygon\"\n    },\n    {\n        \"minDeposit\": 4.9979982,\n        \"minWithdrawal\": 4.9979982,\n        \"currency\": \"usdtsol\"\n    },\n    {\n        \"minDeposit\": 10.98763832,\n        \"minWithdrawal\": 10.98763832,\n        \"currency\": \"usdtton\"\n    },\n    {\n        \"minDeposit\": 5,\n        \"minWithdrawal\": 5,\n        \"currency\": \"usdttrc20\"\n    },\n    {\n        \"minDeposit\": 702.29548508,\n        \"minWithdrawal\": 702.29548508,\n        \"currency\": \"vet\"\n    },\n    {\n        \"minDeposit\": 1514.15212516,\n        \"minWithdrawal\": 481.77567618,\n        \"currency\": \"vgx\"\n    },\n    {\n        \"minDeposit\": 8539.63685908,\n        \"minWithdrawal\": 9962.90966892,\n        \"currency\": \"vraerc\"\n    },\n    {\n        \"minDeposit\": 17.09930321,\n        \"minWithdrawal\": 8.5496516,\n        \"currency\": \"wld\"\n    },\n    {\n        \"minDeposit\": 5.12979096,\n        \"minWithdrawal\": 5.12979096,\n        \"currency\": \"wldop\"\n    },\n    {\n        \"minDeposit\": 206.33867296,\n        \"minWithdrawal\": 180.54633884,\n        \"currency\": \"wooerc\"\n    },\n    {\n        \"minDeposit\": 102.72970016,\n        \"minWithdrawal\": 102.72970016,\n        \"currency\": \"xlm\"\n    },\n    {\n        \"minDeposit\": 0.07423672,\n        \"minWithdrawal\": 0.07423672,\n        \"currency\": \"xmr\"\n    },\n    {\n        \"minDeposit\": 3.27996097,\n        \"minWithdrawal\": 11.47986341,\n        \"currency\": \"xrp\"\n    },\n    {\n        \"minDeposit\": 13.56937643,\n        \"minWithdrawal\": 14.21553721,\n        \"currency\": \"xtz\"\n    },\n    {\n        \"minDeposit\": 0.00866356,\n        \"minWithdrawal\": 0.00606449,\n        \"currency\": \"yfi\"\n    },\n    {\n        \"minDeposit\": 0.00346542,\n        \"minWithdrawal\": 0.00346542,\n        \"currency\": \"yfibsc\"\n    },\n    {\n        \"minDeposit\": 0.38365324,\n        \"minWithdrawal\": 1.11898864,\n        \"currency\": \"zec\"\n    },\n    {\n        \"minDeposit\": 1162.06356574,\n        \"minWithdrawal\": 1162.06356574,\n        \"currency\": \"zilbsc\"\n    },\n    {\n        \"minDeposit\": 132.58818538,\n        \"minWithdrawal\": 92.81172976,\n        \"currency\": \"zrx\"\n    }\n]"}],"_postman_id":"d8dae306-0798-4c8b-880b-209a9a258345"},{"name":"Supported currencies","event":[{"listen":"prerequest","script":{"id":"b28e39f5-7994-4d39-a310-acd301378e91","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret')","    ? pm.environment.get('api-secret')","    : pm.variables.has('api-secret')","        ? pm.variables.get('api-secret')","        : pm.globals.has('api-secret')","            ? pm.globals.get('api-secret')","            : pm.collectionVariables.has('api-secret')","                ? pm.collectionVariables.get('api-secret')","                : console.error(new Error('api-secret is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","console.log('payload', payload);","","const sign = crypto.HmacSHA512(payload, secret).toString();","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"0fa06254-afcf-40d4-84f1-bcc7ffa5d7f7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://api.heropayments.io/v2/currencies","description":"<p>You can get the list of available currencies either via our <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#699875a1-914c-4a63-ae69-204f7ab5626d\">V2 \"Supported currencies\"</a> method or via our public document - <a href=\"https://docs.google.com/spreadsheets/d/1WjpmYaSE6Fd7BnRPdris8w-mKNAEPRay0nB1BTy_6-U/edit?pli=1&amp;gid=0#gid=0\">\"Supported currencies\"</a>.</p>\n","urlObject":{"protocol":"https","path":["v2","currencies"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[],"_postman_id":"0fa06254-afcf-40d4-84f1-bcc7ffa5d7f7"}],"id":"dc43dc71-8479-422d-8dde-c15ebd67ba0b","_postman_id":"dc43dc71-8479-422d-8dde-c15ebd67ba0b","description":""},{"name":"Create a deposit/withdrawal","item":[{"name":"Create a deposit (Custody)","event":[{"listen":"prerequest","script":{"id":"225af2a1-e643-4d77-b3d1-7fbad6218ec8","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret-custody')","    ? pm.environment.get('api-secret-custody')","    : pm.variables.has('api-secret-custody')","        ? pm.variables.get('api-secret-custody')","        : pm.globals.has('api-secret-custody')","            ? pm.globals.get('api-secret-custody')","            : pm.collectionVariables.has('api-secret-custody')","                ? pm.collectionVariables.get('api-secret-custody')","                : console.error(new Error('api-secret-custody is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","const sign = crypto.HmacSHA512(payload, secret).toString();","// console.log(secret, sign);","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"20b9f2a0-936b-4909-980f-9b7ca72ed6c8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"amount\": 100,\n  \"currency\": \"trx\",\n  \"customerId\": \"new_test_user\",\n  \"externalOrderId\": \"merchant_order_id_1\",\n  \"callbackUrl\": \"https://webhook.site/your_callback_url\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/custody/deposit","description":"<p>Use this method to create a deposit transaction. Please provide your data as a JSON-object payload.</p>\n<p>Request fields:</p>\n<ul>\n<li><p><strong>currency</strong> (required) - the cryptocurrency for deposit specified by the user from the currency list;</p>\n</li>\n<li><p><strong>customerId</strong> (required) - the Merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>externalOrderId</strong> (required) - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>callbackUrl (optional)</strong> - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries.</p>\n</li>\n</ul>\n<p>Response fields:</p>\n<ul>\n<li><p><strong>id</strong> - payment ID;</p>\n</li>\n<li><p><strong>subEmail</strong> - if a payment was created by a subuser of the main account, the field reflects the name of the subaccount;</p>\n</li>\n<li><p><strong>currency</strong> - user's account currency: fiat or cryptocurrency (ex. USD, EUR, BTC, etc.);</p>\n</li>\n<li><p><strong>amount</strong> - paid amount;</p>\n</li>\n<li><p><strong>feePercent</strong> - Heropayments processing fee (%);</p>\n</li>\n<li><p><strong>feeAmount</strong> - Heropayments processing fee in the Currency equivalent;</p>\n</li>\n<li><p><strong>clientAmount</strong> - amount to be credited to the user’s account;</p>\n</li>\n<li><p><strong>merchantAmount</strong> - amount credited to Merchant’s wallet in Currency;</p>\n</li>\n<li><p><strong>networkFee</strong> - network fee deducted for processing the blockchain transaction. Estimated in a payment currency equivalent;</p>\n</li>\n<li><p><strong>customerId</strong> - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>sequence</strong> - helps to differentiate between the subsequent payments. Please read multiple deposit processing;</p>\n</li>\n<li><p><strong>callbackUrl</strong> - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n<li><p><strong>transactionType</strong> - always deposit or withdrawal, in this case deposit;</p>\n</li>\n<li><p><strong>address</strong> - deposit address for crypto assets;</p>\n</li>\n<li><p><strong>confirmations</strong> - number of confirmations on the blockchain. We need to wait until the payment gets at least several confirmations to process it;</p>\n</li>\n<li><p><strong>hash</strong> - deposit hash;</p>\n</li>\n<li><p><strong>hashLink</strong> - link to deposit hash;</p>\n</li>\n<li><p><strong>comment</strong> - additional information about the deposit;</p>\n</li>\n<li><p><strong>createdAt</strong> - time, when the deposit was created;</p>\n</li>\n<li><p><strong>updatedAt­­</strong> - time, when the deposit was updated.</p>\n</li>\n</ul>\n<p>You can check the status of the payment via <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">GET \"Payment status check by id (Custody)\"</a></p>\n","urlObject":{"protocol":"https","path":["custody","deposit"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"75c6ed9a-3939-4513-a95b-0406fc74a20f","name":"Create deposit","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"currency\": \"usdtbsc\",\n  \"customerId\": \"test_user\",\n  \"externalOrderId\": \"Test_deposit\",\n  \"callbackUrl\": \"https://webhook.site/07e09722-fc19-4d0d-b81f-f536a8c\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/custody/deposit"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sat, 21 Oct 2023 19:30:12 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"x-request-id","value":"02f2544b06ee4681a3701d12cc734db0"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=dB47eyPDpR8wV3FYjrMlRWOi%2FJaq1av%2BvOxhav7HlzUz1959nI3OVDg%2BRFxZkiwN4KfU3hozt4e021D9wEaOr6t4DkRzifv9pXdiUftfuOKuXoABGNUvNWwcvwmiTXJ6tK%2B46SWxnttahq1q\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"819be9e37d237fd9-IAD"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"f3748917-d4ae-4dae-bec1-c00e269be9\",\n    \"subEmail\": null,\n    \"currency\": \"usdtbsc\",\n    \"amount\": \"4\",\n    \"feePercent\": 0.5,\n    \"feeAmount\": \"0.02\",\n    \"clientAmount\": \"4\",\n    \"merchantAmount\": \"3.68\",\n    \"networkFee\": \"0.3\",\n    \"customerId\": \"test_user\",\n    \"externalOrderId\": \"Test_deposit\",\n    \"sequence\": \"original\",\n    \"callbackUrl\": \"https://webhook.site/07e09722-fc19-4d0d-b81f-f536a8c\",\n    \"transactionType\": \"deposit\",\n    \"address\": \"0xfc9ca35f6296cadfc5f95145acd55abfd0eaf\",\n    \"addressExtra\": null,\n    \"status\": \"finished\",\n    \"confirmations\": 23,\n    \"hash\": \"0xc81b15173d536f5063ec4c11cfd7aa5cfbfd668ac2433d175efea100bfd25\",\n    \"hashLink\": \"https://bscscan.com/tx/0xc81b15173d536f5063ec4c11cfd7aa5cfbfd668ac2433d175efea100bfd25\",\n    \"comment\": null,\n    \"createdAt\": \"2025-03-13T14:16:53.315Z\",\n    \"updatedAt\": \"2025-03-13T14:21:22.163Z\"\n}"}],"_postman_id":"20b9f2a0-936b-4909-980f-9b7ca72ed6c8"},{"name":"Create a withdrawal (Custody)","event":[{"listen":"prerequest","script":{"id":"225af2a1-e643-4d77-b3d1-7fbad6218ec8","exec":["const crypto = require('crypto-js');","","let payload = '';","","const secret = pm.environment.has('api-secret-custody')","    ? pm.environment.get('api-secret-custody')","    : pm.variables.has('api-secret-custody')","        ? pm.variables.get('api-secret-custody')","        : pm.globals.has('api-secret-custody')","            ? pm.globals.get('api-secret-custody')","            : pm.collectionVariables.has('api-secret-custody')","                ? pm.collectionVariables.get('api-secret-custody')","                : console.error(new Error('api-secret-custody is missing'));","","try {","    switch (pm.request.method) {","        case 'POST': ","            payload = JSON.stringify(JSON.parse(pm.request.body.toString()));","            break;","        case 'GET':","            payload = pm.request.url.query.toString();","            break;","    }","} catch {","    console.error(new Error('Cant decode JSON body'))","}","const sign = crypto.HmacSHA512(payload, secret).toString();","// console.log(secret, sign);","pm.request.headers.upsert({","    key: 'x-api-sign',","    value: sign,","});"],"type":"text/javascript","packages":{}}}],"id":"bb5ca6c4-abbe-4bc3-b2ff-4f7425cac02a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"customerId\": \"usdtbsc\",\n    \"address\": \"0x3e53A2FD8B63599B92A19458d4B01a5D74BCd125\",\n    \"currency\": \"usdtbsc\",\n    \"amount\": \"6\",\n    \"callbackUrl\": \"https://example.com/callback\",\n    \"externalOrderId\": \"100500\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/custody/withdrawal","description":"<p>Use this method to create a withdrawal (payout) transaction. Please provide your data as a JSON-object payload.</p>\n<p>Request fields:</p>\n<ul>\n<li><p><strong>amount</strong> (required) - the amount that the user will receive;</p>\n</li>\n<li><p><strong>e-mail</strong> (optional) - user’s email address;</p>\n</li>\n<li><p><strong>address</strong> (required) - your user’s address to receive the withdrawal;</p>\n</li>\n<li><p><strong>addressExtra</strong> (optional) - additional Id which is necessary for identifying a recipient of the transaction. Also known as additional address, memo or destination tag. Users must enter it while withdrawing XRP, BNB, XLM and some other currencies;</p>\n</li>\n<li><p><strong>currency</strong> (required) - cryptocurrency of a withdrawal specified by the user from a supported currency list;</p>\n</li>\n<li><p><strong>customerId</strong> (required) - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>externalOrderId</strong> (required) - merchant's custom order ID. Example: BGBRB-30020. This ID must be unique to create a transaction;</p>\n</li>\n<li><p><strong>callbackUrl</strong> (optional) - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries.</p>\n</li>\n</ul>\n<p>Response fields:</p>\n<ul>\n<li><p><strong>id</strong> – payment ID;</p>\n</li>\n<li><p><strong>subEmail</strong> - if a payment was created by a subuser of the main account, the field reflects the name of the subaccount;</p>\n</li>\n<li><p><strong>currency</strong> - cryptocurrency of the withdrawal specified by the the user from a supported currency list;</p>\n</li>\n<li><p><strong>amount</strong> - amount requested for the withdrawal;</p>\n</li>\n<li><p><strong>feePercent</strong> - Heropayments processing fee (%);</p>\n</li>\n<li><p><strong>feeAmount</strong> - Heropayments fee deducted for a transaction in a payment currency equivalent;</p>\n</li>\n<li><p><strong>clientAmount</strong> - amount sent to the user;</p>\n</li>\n<li><p><strong>merchantAmount</strong> - amount deducted from Merchant's balance to process the withdrawal for the user;</p>\n</li>\n<li><p><strong>networkFee</strong> - network fee deducted for processing the blockchain transaction;</p>\n</li>\n<li><p><strong>customerId</strong> - the merchant provides an ID that is associated with a particular user of the platform;</p>\n</li>\n<li><p><strong>externalOrderId</strong> - merchant's custom order ID. Example: BGBRB-30020;</p>\n</li>\n<li><p><strong>callbackUrl</strong> - HTTP(s) URL of your server which will accept callback requests. Heropayments will send callbacks whenever the status of a transaction gets an update. If your server is inaccessible or cannot accept a callback request, our system will try to send it again until it reaches the limit of five retries;</p>\n</li>\n<li><p><strong>transactionType</strong> - always deposit or withdrawal, in this case withdrawal;</p>\n</li>\n<li><p><strong>address</strong> - destination address of your user where the crypto was withdrawn to;</p>\n</li>\n<li><p><strong>addressExtra</strong> - additional Id which is necessary for identifying a recipient of the transaction. Also known as additional address, memo or destination tag. Users must enter it while withdrawing XRP, BNB, XLM and some other currencies;</p>\n</li>\n<li><p><strong>status</strong> - status of the payment;</p>\n</li>\n<li><p><strong>confirmations</strong> - valid only for deposit transactions;</p>\n</li>\n<li><p><strong>hash</strong> - withdrawal hash;</p>\n</li>\n<li><p><strong>hashLink</strong> - link to withdrawal hash;</p>\n</li>\n<li><p><strong>comment</strong> - additional information about the payment;</p>\n</li>\n<li><p><strong>createdAt</strong> - time, when the withdrawal was created;</p>\n</li>\n<li><p><strong>updatedAt­­</strong> - time, when the withdrawal was updated.</p>\n</li>\n</ul>\n<p>You can check the status of the payment via <a href=\"https://documenter.getpostman.com/view/17469357/UVyvwv7a#b62b5946-51fe-4d79-b818-4ff427dcf727\">GET \"Payment status check by id (Custody)\"</a></p>\n<p>We have 2 types of daily limits:</p>\n<ul>\n<li><p>Merchant withdrawal limit – for the entire merchant account per day</p>\n</li>\n<li><p>Customer withdrawal limit – for each customerId per day</p>\n</li>\n</ul>\n<p>To set up the limits, reach us via <a href=\"https://mailto:partners@heropayments.io/\">partners@heropayments.io</a> or contact your personal account manager.</p>\n","urlObject":{"protocol":"https","path":["custody","withdrawal"],"host":["api","heropayments","io"],"query":[],"variable":[]}},"response":[{"id":"eb61e40e-b275-4036-a990-45ec2bf1f45e","name":"Create withdrawal","originalRequest":{"method":"POST","header":[{"key":"x-api-key","value":"your_api_key","type":"text"},{"key":"x-api-sign","value":"calculated_sign_for_query_string","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"customerId\": \"test_user\",\n    \"address\": \"0xDABBe153ae4DfaA7A40Aed87AB58ca2f91ef436e\",\n    \"amount\": \"4\",\n    \"currency\": \"usdtbsc\",\n    \"callbackUrl\": \"https://webhook.site/07e09722-fc19-4d0d-b81f-f536a8c\",\n    \"externalOrderId\": \"Test_withdrawal\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.heropayments.io/custody/withdrawal"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sat, 21 Oct 2023 19:52:06 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Origin"},{"key":"access-control-allow-credentials","value":"true"},{"key":"x-request-id","value":"698c90245c4bad3b7f12f10c44ad779c"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=wsqWgcSq0byZeiSc%2FKCac4U8kB%2BNXYhziKpeUJXLPyZSwBY0xPmJhI4evhaCi6KMBOGPe75LXSAO8CwsLozY%2B%2BEXjhEdwufZ4LKaVt%2FxR453z0d%2FFAqhelQLC8%2BWEDMwJlNEqNJ6EgG8jFXr\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"819c09f9fe5b3b18-IAD"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"9adb774a-75d5-4af5-8f6b-eb562d54f4db\",\n    \"subEmail\": null,\n    \"currency\": \"usdtbsc\",\n    \"feePercent\": 0.5,\n    \"amount\": \"4\",\n    \"feeAmount\": \"0.02\",\n    \"clientAmount\": \"4\",\n    \"merchantAmount\": \"4.32\",\n    \"networkFee\": \"0.3\",\n    \"customerId\": \"test_user\",\n    \"externalOrderId\": \"Test_withdrawal\",\n    \"callbackUrl\": \"https://webhook.site/07e09722-fc19-4d0d-b81f-f536a8c\",\n    \"transactionType\": \"withdrawal\",\n    \"address\": \"0xDABBe153ae4DfaA7A40Aed87AB58ca2f91ef436e\",\n    \"addressExtra\": \"\",\n    \"status\": \"finished\",\n    \"confirmations\": 0,\n    \"hash\": \"0xa32ba5f98d490036fb1f37c2eb637ec77103e10b5e7f761bd28017dbc22608\",\n    \"hashLink\": \"https://bscscan.com/tx/0xa32ba5f98d490036fb1f37c2eb637ec77103e10b5e7f761bd28017dbc22608\",\n    \"createdAt\": \"2025-07-23T11:15:59.992Z\",\n    \"updatedAt\": \"2025-07-23T11:16:50.884Z\"\n}"}],"_postman_id":"bb5ca6c4-abbe-4bc3-b2ff-4f7425cac02a"}],"id":"68655087-bc7f-480b-9ea6-c0c52e876329","_postman_id":"68655087-bc7f-480b-9ea6-c0c52e876329","description":""}],"id":"b27249a7-417e-4b4a-84ef-c17bdb019652","_postman_id":"b27249a7-417e-4b4a-84ef-c17bdb019652","description":""}],"event":[{"listen":"prerequest","script":{"id":"b46d84ea-c0ba-48bd-b727-24aa6b8f82b5","type":"text/javascript","requests":{},"exec":[""]}},{"listen":"test","script":{"id":"7565182f-6005-40ee-a9df-036a728b0852","type":"text/javascript","requests":{},"exec":[""]}}],"variable":[{"key":"api-secret","value":"your_api_secret"},{"key":"x-api-key","value":"your_api_key"},{"key":"api-secret-custody","value":"your_api_secret_custody"},{"key":"api-key-custody","value":"your_api_key_custody"},{"key":"prod","value":""}]}