Appearance
Consulta pública — /public (descontinuado)
Endpoints usados pelo pagador, sem autenticação (🌐). Links de pagamento exigem o token estático (🔑) que acompanha a URL do link.
Cobranças
GET /public/charges
Entrada (query): client (opcional — CPF/CNPJ existente), per_page (15), page (1). Saída: 200, chave charges = paginação de cobranças (com client carregado).
GET /public/charge
Entrada (query): code (código da cobrança). Saída: 200, chave charge = cobrança com client, boleto, pix (com pix.image = QR Code base64) e account. 404 se não existir.
GET /public/charge/pix
Entrada (query): code da cobrança. Saída: 200, data = cobrança com os dados Pix (pix.qrcode e pix.image — QR Code em base64). 404 se não existir.
GET /public/charge/boleto
Entrada (query): code da cobrança. Saída: 200, data = cobrança com os dados do boleto (linha digitável e link do PDF).
GET /public/pix/{txid}
Entrada: path txid. Saída: 200 — dados do Pix: { txid, qrcode, image (QR Code base64), status, value, account: { name, email, document } }. 404 se não existir.
POST /public/boletos/search
Entrada (corpo JSON):
| Campo | Tipo | Regras |
|---|---|---|
document | string ≤14 | obrigatório — CPF/CNPJ do pagador |
email | string ≤255 | obrigatório, e-mail |
code | string | obrigatório — código de acesso fixo |
Saída: 200 — coleção de boletos (boletos do documento+e-mail, com pix, ordenados por vencimento desc). 403 se o code for inválido.
GET /storage/boletos/boleto_{txid}.pdf
Entrada: path com o txid no nome do arquivo. Saída: 200, Content-Type: application/pdf (gerado na hora). 400 nome inválido; 404 não encontrado.
Links de pagamento (🔑 token estático)
GET /public/paymentLink/{id}
Entrada: path id (o identificador público do link). Saída: 200:
json
{
"payment_link": {
"title": "…", "description": "…", "amount": 100, "currency": "BRL",
"is_variable_amount": false, "min_amount": null, "max_amount": null,
"payment_methods": ["PIX", "BOLETO", "CARD"], "installments": 1, "status": "…"
},
"account": { "name": "…", "email": "…", "document": "…", "path_logo": "…" }
}410 se o link estiver expirado, pago ou com limite de usos atingido.
POST /public/paymentLink/{id}/pay
Cria o pagamento (Pix, Boleto ou Cartão) a partir do link.
Entrada (corpo JSON):
| Campo | Tipo | Regras |
|---|---|---|
payment_method | string | obrigatório — PIX, BOLETO ou CARD |
client_id | int | opcional; se ausente, name+document+email são obrigatórios |
name | string ≤255 | obrigatório se sem client_id |
document | string ≤20 | obrigatório se sem client_id |
email | string ≤255 | obrigatório se sem client_id, e-mail |
amount | number | obrigatório se o link for is_variable_amount — entre min_amount e max_amount |
installments | int | opcional, 1..installments do link (máx. 12) |
card | object | obrigatório se payment_method = CARD: cardholder_name, card_number, expiry (MM/AA), cvv |
address | object | obrigatório se CARD: zipcode, street, number, district, city, state (2) |
Saída: 200, data varia por método:
- PIX:
{ "charge_id": 123, "pix": { txid, qrcode, status, value, … } } - BOLETO:
{ "charge_id": 123, "boleto": { txid, barcode, digitableLine, pathPDF, … } } - CARD:
{ "charge_id": 123, "status": "PAID"|"PENDING", "message": "…" }
message: "Solicitação de pagamento processada com sucesso."410 link esgotado/pago; 400 se já houver pagamento em processamento; 422 validação; 422 "Bandeira não suportada" se o cartão não for Visa nem Mastercard.
GET /public/payment-status/{chargeId}/charge
Entrada: path chargeId. Saída: 200, data: { charge, pix, boleto, account:{name,document,path_logo} }, message: "Status da cobrança recuperado." 404 se a cobrança não existir.