/api/v1/creditsComprar créditos
Cria uma order de compra de créditos avulsos via PIX e devolve o QR Code + o
ID da transação. Responde 201 Created. Consulte o status e outros detalhes
da transação via GET /api/v1/orders/:id.
Use os dados recebidos para efetuar o pagamento. Os créditos ficam disponíveis imediatamente após a confirmação do pagamento.
Escopo necessário: create:credits.
Para consultar seu saldo/uso de créditos, use o endpoint de leitura
GET /api/v1/credits— ver Consultar créditos.
Body
| Campo | Tipo | Obrigatório? | Valores / restrições |
|---|---|---|---|
packId | string | sim | ID de um pacote de créditos. Consulte os IDs disponíveis em GET /api/v1/plans (campo id de cada creditPack) |
couponCode | string | não | código de cupom, se você tiver um |
Exemplo de request
curl -X POST https://avatrix.io/api/v1/credits \
-H "Authorization: Bearer av_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 9f1c-cred-001" \
-d '{
"packId": "pack-1773015682087",
"couponCode": "PROMO10"
}'Resposta — 201
{ "success": true, "data": {
"orderId": "ord_...",
"paymentMethod": "pushinpay",
"status": "pending",
"amount": 49.90,
"credits": 1000,
"pix": { "qrCode": "00020126...", "qrCodeBase64": "data:image/png;base64,...", "expiresIn": 1800 }
}}Acompanhe a order por GET /api/v1/orders/:id (escopo read:orders). O crédito
é liberado quando o webhook PIX confirma o pagamento.
Idempotência
Envie o header Idempotency-Key (opcional, ≤128 chars, TTL 24h). Repetir a mesma chave
retorna a resposta original, sem criar nova order. Ver
Idempotência.
Erros relevantes
| Código | HTTP | Quando |
|---|---|---|
VALIDATION_ERROR | 400 | body não-JSON, packId ausente ou inválido (pacote inexistente), couponCode não-string, Idempotency-Key acima de 128 caracteres |
FORBIDDEN | 403 | token sem create:credits |
RATE_LIMITED | 429 | rate limit |
INTERNAL_ERROR | 500 | gateway não configurado |
PROVIDER_UNAVAILABLE | 503 | falha ao gerar o PIX |
Ver Códigos de erro e Escopos.