Desenvolvedores
Criar uma fatura
Uma requisição POST cria uma fatura e retorna o link da página de pagamento. Lá, o cliente escolhe uma moeda e uma rede.
Requisição
curl
curl -X POST https://api.crybit.net/api/v1/payments \
-H "X-Public-Key: pk_…" \
-H "X-Private-Key: sk_…" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"amount":1490,"currency":"RUB","order_id":"ORD-1048","purpose":"Order 1048"}'| Campo | Significado |
|---|---|
amount | Obrigatório. Um número a partir de 0.01. Há um mínimo em USDT porque a taxa de rede não pode exceder o valor da fatura quando o merchant a paga: consulte GET /api/payments/quote para saber o mínimo atual. |
currency | Obrigatório. Moeda fiat (RUB, USD, EUR, CNY, GBP, CHF, JPY, KZT e outras moedas principais) ou USDT/USDC. O valor é convertido pela cotação em tempo real. |
order_id | Seu próprio ID de pedido, com até 80 caracteres. Se vazio, a CryBit gera CB-…. |
purpose | Descrição, com até 240 caracteres. |
ttl_minutes | Prazo de validade de 5 a 1440 minutos, 30 por padrão. |
return_url | Para onde o cliente volta após o pagamento (http ou https, até 500 caracteres). Se omitido, usa a URL de retorno do merchant. |
crypto, network | Opcional. Envie os dois para receber de uma vez, na resposta, o endereço, o valor e um QR code, por exemplo USDT e TRC-20. |
confirmation | Opcional. {"type":"embedded"} para o widget incorporado. O token sempre vem na resposta. |
Resposta
A resposta é 201 com o objeto da fatura. Envie o cliente para callback_url (a página de pagamento). Sem crypto e network, needs_method é true e o cliente escolhe nessa página.
JSON
{
"uuid": "28d0ff38-949c-435e-ad41-c81c219b3597",
"order_id": "ORD-1048",
"amount": 1490,
"currency": "RUB",
"status": "waiting",
"sandbox": true,
"needs_method": true,
"callback_url": "https://pay.crybit.net/28d0ff38-949c-435e-ad41-c81c219b3597",
"confirmation": { "type": "embedded", "confirmation_token": "28d0ff38-…", "widget_url": "https://pay.crybit.net/widget.js" },
"expires_at": "2026-09-21T13:41:42+00:00"
}Status
GET /api/v1/payments/{uuid} retorna o mesmo objeto. O status é waiting, paid, expired ou cancelled. Depois que o cliente escolhe uma rede, o objeto traz crypto, network, address e a taxa; após o pagamento, traz status paid, txid e paid_at. Uma fatura em waiting que passou do prazo de validade vira expired quando você a consulta. fee_payer é shop quando o merchant paga a taxa e buyer quando o valor a pagar já a inclui.
FAQ
Quais cabeçalhos devo enviar?
X-Public-Key e X-Private-Key, ambos obrigatórios. Uma chave privada ausente, incorreta ou antiga retorna 401.
Existe limite de requisições?
60 requisições por minuto por chave.
