Skip to content

Use cases

Mass crypto payouts to partners and contractors

Pay partners and contractors in crypto with a CSV of up to 1,000 rows or through the API with your own payout_id. Checked first, confirmed once, never paid twice.

CryptoLike sends crypto payouts to many recipients from one balance. Upload a CSV of up to 1,000 rows in the cabinet, or create payouts one by one through the API with your own payout_id. Every row is checked before any money moves, the whole file is confirmed with one 2FA code, and a repeated request never pays twice.

Why are crypto payouts to many people risky?

Paying partners or contractors in crypto by hand means copying addresses and amounts one at a time, and one wrong character sends money to an address you cannot recall it from. CryptoLike adds the checks a finance team needs: validation, fee estimates, address whitelists and a second approval.

What goes wrong with manual payouts: a typo in one address among hundreds, a run that stops halfway, a retry that pays the same person twice, a network fee known only after sending, and one person moving large sums alone.

How a CryptoLike batch payout works

A CryptoLike batch payout is a CSV file uploaded in the cabinet (Withdrawals → Batches). The file is validated as a whole before anything is created. A valid file creates every payout in one database transaction; an invalid one creates none. One file pays out one asset, and one 2FA code confirms the whole batch.

The file has up to four columns. The header row is optional, and empty lines are ignored.

Column Required Meaning
address yes The recipient's address in the asset's network
amount yes The amount the recipient receives, as a decimal
payout_id no Your own id; a duplicate in the file or in earlier payouts is an error
comment no Your note, for example an invoice number

Every row is checked first: address format, the whitelist, the minimum amount, destination screening and duplicate payout_id values. If any row fails, or the balance does not cover the whole file, no payout is created.

How to pay out through the API

CryptoLike's API creates one payout per request with POST /v1/withdrawals, using a key with the withdraw permission. Send your own payout_id: repeating the request with the same asset, amount and address returns the existing payout, and different parameters under the same id are refused with 409. Your retries can never pay twice. API payouts are authorised by the key's withdraw permission and need no 2FA code, so limit such keys to your server's IPs and enforce the whitelist.

json
{
  "coin_id": "6f1c2a3e-8d4b-4c5a-9e7f-0a1b2c3d4e5f",
  "amount": "250.00",
  "to_address": "RECIPIENT_ADDRESS",
  "payout_id": "partner-2026-09-017",
  "comment": "September commission"
}

Ask POST /v1/withdrawals/estimate first. It returns the platform fee, the reserved network fee and total_debit, which is what leaves your available balance when the payout is created. For a USDT payout, the network fee is shown and charged in USDT.

Which controls protect your payouts?

CryptoLike's payout controls are set per account in the cabinet, and payouts require a verified account (KYB). Each payout reports its status by webhook, in the cabinet and in Telegram. Every payout that fails, is rejected or is cancelled returns the whole held amount to your available balance.

Control What it does
Address whitelist When enforced, only whitelisted addresses are accepted. A new address becomes usable after a delay (24 h by default); removing one takes effect immediately.
Dual approval A payout created in the cabinet above your threshold waits in awaiting_approval until a second owner or admin confirms it. The creator cannot approve their own payout.
Review Limits, unusual patterns or compliance checks move a payout to review, usually for less than 24 h. Past a set number of payouts per hour, the next ones go to review, rows of a large batch included.
Destination screening A destination the platform does not accept is refused with 422 address_refused.

Payout statuses: pending → processing → broadcast → completed. After failed, rejected or cancelled, create a new payout if it is still needed. You can cancel a payout until it reaches processing, and owners and admins can approve payouts in the Telegram bot.

How to start

Mass payouts in CryptoLike need a verified account (KYB), a funded balance in the payout asset and, for the cabinet, 2FA switched on. Set the whitelist and the dual-approval threshold before the first large run. The guide to crypto mass payouts walks through a first batch step by step.

  1. Complete account verification (KYB) and switch on 2FA in the cabinet.
  2. Upload a CSV in Withdrawals → Batches, check the preview of the rows and the total, and confirm with one 2FA code.
  3. Or create payouts from your system with an SDK: TypeScript SDK, Python SDK, Go SDK or PHP SDK.

Payout fees per asset are on the pricing page. Routes, statuses and CSV/XLSX exports of payouts (filterable by batch and payout_id) are in the API reference.

FAQ

How many payouts can one CSV file hold?

One CSV file holds up to 1,000 rows in one asset. Every row is checked before anything is debited: if one row has an error, no payout from the file is created and the report names the row. Split larger runs into several files, or create payouts one by one through the API with a unique payout_id.

What happens if one row in the file is wrong?

No payout is created. The batch is saved as rejected with a report of each failing row: the row number, the field and the error. Fix the rows and upload the file again.

Can a retry pay the same person twice?

No. The payout_id is the idempotency key of a payout. The same id with the same asset, amount and address returns the existing payout, and the same id with different parameters is refused.

Who pays the network fee?

You do, from your balance, together with the platform fee. The estimate shows both, plus the total debit, before you confirm. The fee mode is set for your account by the platform: by default you are charged the reserved estimate; in actual mode, the fee actually paid, and the unused reserve returns to your balance.

Ways to connect

In the docs →

Guides and articles

Terms used here

Start with a test payment

Create an account, ask support for the test environment and see a payment go from pending to paid on a test network.