npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

cryptomus-sdk

v3.0.0

Published

This is not an official one created for simplified work with Cryptomus API

Readme

Cryptomus SDK

This is not an official one created for simplified work with Cryptomus API

You can find the official documentation here: Cryptomus API


Installation

$ npm install cryptomus-sdk

Importing

// Using Node.js `require()`
const Cryptomus = require("cryptomus-sdk");

// Using ES6 imports
import { Cryptomus } from "cryptomus-sdk";

Initialization

Getting API keys

const MERCHANT_KEY = "123123";
const PAYMENT_KEY = "asdasd";
const PAYOUT_KEY = "qwerty";
    
const cryptomus = new Cryptomus(MERCHANT_KEY, PAYMENT_KEY, PAYOUT_KEY);

Creating an invoice

Send Request

const paymentForm = await cryptomus.createPayment({
    amount: "10",
    currency: "USDT",
    order_id: cryptomus.generateUUID()
});

Response

{
    "state": 0,
    "result": {		
        "uuid": "f1386fb5-ecfa-41d4-a85d-b151d98df5e1",		
        "order_id": "test-28",		
        "amount": "10.00000000",		
        "payment_amount": "11.95000000",		
        "payer_amount": "10.00000000",		
        "payer_currency": "USDT",		
        "currency": "USDT",		
        "comments": null,		
        "network": "tron_trc20",		
        "address": null,		
        "from": null,		
        "txid": null,		
        "payment_status": "refund_process",		
        "url": "https://pay.cryptomus.com/pay/f1386fb5-ecfa-41d4-a85d-b151d98df5e1",		
        "expired_at": 1655196355,		
        "status": "check",		
        "is_final": false,		
        "additional_data": null,		
        "currencies": [
        {
            "currency": "USDT",
            "network": "tron_trc20"
        }, 
        {
            "currency": "USDT",
            "network": "eth_erc20"
        }]
    }
}

Payment information

Send Request

const checkPayment = await cryptomus.getPaymentInfo({
    // To get the account status, you need to pass one of the required parameters, 
    // if you pass both, the account will be identified using the order_id
    uuid: "1234567890",
    order_id: "0987654321"
});

Response

{
    "state": 0,
    "result": {
        "uuid": "3901446a-4b74-4796-b50a-14e14dafe3ed",
        "order_id": "5",
        "amount": "45.0000",
        "payment_amount": null,
        "payer_amount": "0.74067734",
        "payer_currency": "USDT",
        "currency": "USD",
        "comments": null,
        "network": null,
        "address": null,
        "from": null,
        "txid": null,
        "payment_status": "check",
        "url": "https://pay.cryptomus.com/pay/3901446a-4b74-4796-b50a-14e14dafe3ed",
        "expired_at": 1660826040,
        "status": "check",
        "is_final": false
    }
}

Payment history

Send Request

const paymentList = await cryptomus.getPaymentHistory({
    date_from: "2023-05-16 00:00:00",
    date_to: "2023-05-16 23:59:59"
});

Response

{
  "state": 0,
  "result": {
    "items": [
      {
        "uuid": "19b37230-d65d-4a9c-8213-980bfb349144",
        "order_id": null,
        "amount": "457.00000000",
        "payment_amount": null,
        "payer_amount": null,
        "payer_currency": null,
        "currency": "USDT",
        "comments": null,
        "network": null,
        "address": null,
        "from": null,
        "txid": null,
        "payment_status": "check",
        "url": "https://pay.cryptomus.com/pay/19b37230-d65d-4a9c-8213-980bfb349144",
        "expired_at": 1654873897,
        "status": "check",
        "is_final": false,
        "created_at": "2023-05-02T13:52:28+03:00",
        "updated_at": "2023-05-02T14:54:15+03:00"
      }
    ],
    "paginate": {
      "count": 15,
      "hasPages": true,
      "nextCursor": "eyJpZCI6MTk3LCJfcG9pbnRzVG9OZXh0SXRlbXMiOnRydWV9",
      "previousCursor": "eyJpZCI6MjExLCJfcG9pbnRzVG9OZXh0SXRlbXMiOmZhbHNlfQ",
      "perPage": 15
    }
  }
}

Payment services

Send Request

const paymentServices = await cryptomus.getPaymentServices();

Response

{
  "state": 0,
  "result": [
    {
      "network": "TRON",
      "currency": "USDT",
      "is_available": true,
      "limit": {
        "min_amount": "1.00000000",
        "max_amount": "1000000.00000000"
      },
      "commission": {
        "fee_amount": "0.00",
        "percent": "3.00"
      }
    },
    {
      "network": "ETH",
      "currency": "ETH",
      "is_available": true,
      "limit": {
        "min_amount": "0.01000000",
        "max_amount": "10000.00000000"
      },
      "commission": {
        "fee_amount": "0.00",
        "percent": "3.00"
      }
    }
  ]
}

Refund

Send Request

const refund = await cryptomus.refund({
    // Invoice is identified by order_id or uuid, if you pass both, the account will be identified by uuid
    uuid: "0987654321",
    order_id: "1234567890",
    address: "13029i0jwqdjas",
    is_subtract: true, // Determines whether the commission is to be charged to the merchant or to the client (true - to the merchant, false - to the client)
});

Response

{
    "state": 0
}

Response example with error

{
    "state": 1,
    "message": "Payment was not found"
}

Balance

Send Request

const balance = await cryptomus.getBalance();

Response

{
  "state": 0,
  "result": [
    {
      "balance": {
        "merchant": [
          {
            "uuid": "abcdabcd-abcd-1234-1234-abcdabcd",
            "balance": "0.00000000",
            "currency_code": "ETH"
          },
          {
            "uuid": "abcdabcd-abcd-1234-1234-abcdabcd",
            "balance": "0.57000000",
            "currency_code": "BTC"
          }
        ],
        "user": [
          {
            "uuid": "abcdabcd-abcd-1234-1234-abcdabcd",
            "balance": "0.40000000",
            "currency_code": "BTC"
          },
          {
            "uuid": "abcdabcd-abcd-1234-1234-abcdabcd",
            "balance": "52.00000000",
            "currency_code": "USDT"
          }
        ]
      }
    }
  ]
}

Resend webhook

Send Request

const resend = await cryptomus.resendWebhook({
    // You need to pass one of the required parameters, if you pass both, the account will be identified by order_id
    uuid: "0987654321",
    order_id: "1234567890"
});

Response

{
    "state": 0
}

Response example with error

{
    "state": 1,
    "message": "Payment was not found"
}

Creating a static wallet

Send Request

const wallet = await cryptomus.createWallet({
    network: "tron",
    currency: "USDT",
    order_id: cryptomus.generateShortUUID(), // Use only short UUID for a wallet methods
    url_callback: "https://your.site/callback"
});

Response

{
  "state": 0,
  "result": {
    "wallet_uuid": "9f64a7ce-...",
    "uuid": "8241bd2f-...",
    "address": "TK8...",
    "network": "TRON",
    "currency": "USDT"
  }
}

Block static wallet

Send Request

const wallet = await cryptomus.blockWallet({
    // You need to pass one of the required parameters, if you pass both, the account will be identified by order_id
    uuid: "1234567890",
    order_id: "0987654321"
});

Response

{
  "state": 0,
  "result": {
    "uuid": "8241bd2f-...",
    "status": "blocked"
  }
}

Creating a payout

Send Request

const wallet = await cryptomus.createPayout({
    amount: "5",
    currency: "USDT",
    network: "TRON",
    order_id: cryptomus.generateShortUUID(), // Use only short UUID for a payout methods
    address: "TDD97yguPESTpcrJMqU6h2ozZbibv4Vaqm",
    is_subtract: true
});

Response

{
  "state": 0,
  "result": {
    "uuid": "a7c0caec-a594-4aaa-b1c4-77d511857594",
    "amount": "3",
    "currency": "USDT",
    "network": "TRON",
    "address": "TJ...",
    "txid": null,
    "status": "process",
    "is_final": false,
    "balance": 129,
    "payer_currency": "USD",
    "payer_amount": 3
  }
}

Payout information

Send Request

const wallet = await cryptomus.getPayoutInfo({
    // One of the mandatory parameters must be passed in order to receive the payout status, if you pass both, the payout will be identified by order_id
    uuid: "1234567890",
    order_id: "0987654321"
});

Response

{
  "state": 0,
  "result": {
    "uuid": "a7c0caec-a594-4aaa-b1c4-77d511857594",
    "amount": "3",
    "currency": "USDT",
    "network": "tron_trc20",
    "address": "TJ...",
    "txid":"AM...",
    "status": "process",
    "is_final": false,
    "balance": 129
  }
}

Payout history

Send Request

const payoutList = await cryptomus.getPayoutHistory();

Response

{
  "state": 0,
  "result": {
    "merchant_uuid": "cb2131ff-a3d4-46dd-94c6-3714fae65f89",
    "items": [
      {
        "uuid": "c8734e30-0a8b-47e3-a5e4-375684395245",
        "amount": "0.00000100",
        "currency": "USDT",
        "network": "TRON",
        "address": "DW...",
        "txid": "AJ...",
        "order_id": 1,
        "status": "paid",
        "is_final": true,
        "balance": "98259.99997600"
      }
    ],
    "paginate": {
      "count": 15,
      "hasPages": true,
      "nextCursor": "eyJpZCI6NTEsIl9wb2ludHNUb05leHRJdGVtcyI6dHJ1ZX0",
      "previousCursor": null,
      "perPage": 15
    }
  }
}

Payout services

Send Request

const services = await cryptomus.getPayoutServices();

Response

{
  "state": 0,
  "result": [
    {
      "network": "TRON",
      "currency": "USDT",
      "is_available": true,
      "limit": {
        "min_amount": "1.00000000",
        "max_amount": "1000000.00000000"
      },
      "commission": {
        "fee_amount": "0.00",
        "percent": "3.00"
      }
    },
    {
      "network": "ETH",
      "currency": "ETH",
      "is_available": true,
      "limit": {
        "min_amount": "0.01000000",
        "max_amount": "10000.00000000"
      },
      "commission": {
        "fee_amount": "0.00",
        "percent": "3.00"
      }
    },
    {
      "network": "ETH",
      "currency": "USDT",
      "is_available": true,
      "limit": {
        "min_amount": "1.00000000",
        "max_amount": "1000000.00000000"
      },
      "commission": {
        "fee_amount": "0.00",
        "percent": "3.00"
      }
    }
  ]
}

Transfer to wallet

Send Request

const transferToWallet = await cryptomus.transferToWallet("personal", {
    amount: "3",
    currency: "USDT"
});

Response

{
  "state": 0,
  "result": {
    "user_wallet_transaction_uuid": "a7c0caec-a594-4aaa-b1c4-77d511857594",
    "user_wallet_balance": "3",
    "merchant_transaction_uuid": "a7c0caec-a594-4aaa-b1c4-77d511857594",
    "amount": "3"
  }
}

Create UUID

You can use these methods on your order_id

const order_id = cryptomus.generateUUID(); // example: a7c0caec-a594-4aaa-b1c4-77d511857594

// You need short UUID, when you use wallet methods or payout methods
const order_id = cryptomus.generateShortUUID(); // example: mhvXdrZT4jP5T8vBxuvm75