Use o endpoint POST /api/v1/deposits para criar uma invoice PIX.
O sistema gera um QR Code dinâmico com valor fixo e, após o pagamento,
distribui automaticamente os valores conforme os splits configurados.
Envie uma requisição POST para criar uma invoice PIX:
POST /api/v1/deposits
{
"type": "pix_qrcode",
"amount": "100.00",
"description": "Pagamento de serviço",
"split": [
{
"account_id": "uuid-da-conta-destino",
"percentage": 100
}
]
}
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type |
string | Sim | Tipo de depósito: pix_qrcode |
amount |
string | Sim | Valor em BRL (ex: "100.00") |
description |
string | Não | Descrição do pagamento |
split |
array | Não | Array de splits para distribuição |
Para cobranças com prazo definido, use o tipo pix_duedate no mesmo endpoint
POST /api/v1/deposits. O QR Code gerado aceita pagamento até a data de vencimento
e pode incluir multa, juros, desconto e abatimento.
pix_duedate:
due_date (data futura), payer.name e payer.document (CPF/CNPJ do pagador).
{
"type": "pix_duedate",
"amount": "500.00",
"due_date": "2026-08-21",
"description": "Mensalidade Escolar - Agosto",
"payer": {
"name": "Maria Oliveira",
"document": "123.456.789-00",
"email": "maria@email.com"
},
"due_date_metadata": {
"fine": {
"mode": "PERCENTUAL",
"amount": 2.0
},
"interest": {
"mode": "PERCENTUAL",
"amount": 0.033
},
"discount": {
"mode": "FIXADO_ATE_DATAS_INFORMADAS",
"dates": [
{
"date": "2026-08-07",
"amount": 25.00
}
]
}
}
}
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type |
string | Sim | pix_duedate |
due_date |
string | Sim | Data de vencimento (ISO: "2026-08-21" ou "2026-08-21T23:59:59Z"). Deve ser futura. |
payer.name |
string | Sim | Nome do pagador |
payer.document |
string | Sim | CPF ou CNPJ do pagador |
expiration_after_due_date |
integer | Não | Dias após o vencimento para expirar (mín. 1, máx. 365) |
due_date_metadata.fine |
object | Não | Multa por atraso: mode (VALOR_FIXADO|PERCENTUAL) + amount |
due_date_metadata.interest |
object | Não | Juros por atraso (ao dia): mode + amount |
due_date_metadata.discount |
object | Não | Desconto: mode (FIXADO_ATE_DATAS_INFORMADAS|PERCENTUAL) + dates[] com date/amount |
due_date_metadata.abatement |
object | Não | Abatimento: mode (VALOR_FIXADO|PERCENTUAL) + amount |
curl -X POST "https://ajnapay.com.br/api/v1/deposits" \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"type": "pix_duedate",
"amount": "500.00",
"due_date": "2026-08-21",
"payer": {
"name": "Maria Oliveira",
"document": "123.456.789-00"
},
"due_date_metadata": {
"fine": { "mode": "PERCENTUAL", "amount": 2.0 },
"interest": { "mode": "PERCENTUAL", "amount": 0.033 }
}
}'
curl -X POST "https://ajnapay.com.br/api/v1/deposits" \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"type": "pix_qrcode",
"amount": "150.00",
"description": "Pagamento de consulta",
"split": [
{
"account_id": "uuid-da-conta",
"percentage": 100
}
]
}'
A API retorna os dados do QR Code gerado:
{
"success": true,
"data": {
"id": "uuid-do-deposito",
"amount": "150.00",
"status": "pending",
"pix_code": "00020126580014BR.GOV.BCB.PIX...",
"qr_code_base64": "data:image/png;base64,...",
"qr_code_url": "https://ajnapay.com.br/pix/...",
"expires_at": "2026-07-21T15:30:00Z"
}
}
Quando o pagamento é confirmado, o sistema distribui automaticamente o valor conforme os splits configurados. Exemplo:
Configure webhooks para receber notificações em tempo real sobre o status do pagamento:
payment.received