Everything in one view
Balances, pending amounts and history for every asset on one screen — with the network and status next to each number.
One simple layer for digital assets and payments
Your assets in one view, every status in plain words. Crypto payments for your product: one API call, a checkout page and signed webhooks.
Assets you can accept and manage
Balances, pending amounts and history for every asset on one screen — with the network and status next to each number.
Send and receive with the amount, the network fee and the destination in front of you before you confirm.
One POST creates a payment. Signed webhooks report the result. The docs take you from the first call to a confirmed payment.
One status per payment — the same on the checkout page, in the API and in your webhooks — so you always know what to tell your customer.
Two ways to start
Different needs. One simple layer.
For people
For business
POST /v1/invoices
{
"amount": "49.90",
"currency": "USD",
"order_id": "10042",
"return_url": "https://shop.example/thanks"
}
// 201 → { "id": "4e2b…", "status": "new", "checkout_url": "…/pay/4e2b…" }Key features
Balances by asset and network, send and receive, full history with fees and transaction ids.
Invoices for one-off amounts, static addresses for repeat customers. Priced in crypto or in fiat with the rate locked.
Payment detected. Waiting for confirmation. Payment confirmed. The same status on the checkout page, in the API and in your webhooks.
OpenAPI document, typed TypeScript client, HMAC-signed webhooks with retries, an idempotency key on every POST.
A simple integration flow
Simple as that.
Built for builders
Three things to build: one POST to create a payment, a redirect to the checkout page, a webhook handler for the result. Addresses, confirmations and consolidation stay on our side.
curl -X POST https://api.cryptolike.net/v1/invoices \
-H "Content-Type: application/json" -H "Idempotency-Key: order-10042" \
-H "X-API-Key: $KEY_ID" -H "X-Timestamp: $TS" -H "X-Signature: $SIG" \
-d '{
"amount": "49.90",
"currency": "USD",
"order_id": "10042",
"return_url": "https://shop.example.com/orders/10042",
"webhook_url": "https://shop.example.com/hooks/cryptolike"
}'FAQ
CryptoLike accepts Bitcoin, Litecoin, Ethereum (ERC20 tokens included) and TRON (TRC20 tokens included). The active catalogue is served by GET /v1/currencies; every asset shows its network and confirmation threshold before you use it.
You create the payment in USD or another enabled fiat currency. The exchange rate is locked the moment the coin is known — at creation, or when the payer chooses the coin on the checkout page — and stays fixed for the payment's lifetime. The payment stores the fiat amount, the locked rate and the crypto amount.
Less: the payment becomes underpaid, the page shows the remaining amount and the customer can top it up to the same address until the payment expires. More: the payment is paid, the whole sum is credited to you and the webhook carries overpaid_amount, so you can settle with the customer.
Subscribe a webhook endpoint: every event is signed with HMAC-SHA256 and retried with the same event id, so your handler can act once and ignore repeats. Or read GET /v1/invoices/{id} — status paid means the funds are confirmed and credited to your balance.
No. You call the API and receive webhooks; addresses, confirmations, consolidation and payouts are handled by the platform. Payout addresses can be restricted to a whitelist and large payouts can require a second approval.
As a concrete amount with its unit before every action: in the payout estimate, in the API response and on the checkout page. The platform fee is set per asset and charged only when a payment is confirmed; see Pricing.
Yes. CryptoLike keys prefixed ck_test_ work against a dev or stage instance on test networks. The reference signature vector in the docs tells you in one call whether your signing is right.
An invoice is a one-off payment for a fixed amount with a time limit: an order, a top-up, a subscription charge. A static address is a permanent deposit address for one customer, where every incoming transfer is credited after the confirmations of that asset: balances, deposits, recurring funding. Both are created with one API call and report through the same webhooks.
It depends on the asset: each one has a confirmation threshold set in the catalogue (GET /v1/currencies) and shown on the checkout page as “n of N confirmations, usually about X min”. The payer sees “Payment detected” as soon as the transfer is in the network, and “Payment confirmed” when the threshold is reached — at that moment the funds are credited to your balance.
Contact
Tell us about your product and expected volumes, or ask anything about the integration. We reply by e-mail.
Ready to get started?
Create an account, create a test key and make your first payment on a test network. The docs take you from the first call to a confirmed payment.