Cobrança sem conciliação
PIX manual
Gere um código PIX, um QR Code ou um link /pay usando uma chave DICT. O modo link também permite que o pagador envie um comprovante.
O PIX manual não confirma o pagamento
Contrato da APILink direto para a seção Contrato da API
Use POST /api/v1/manual-pix com uma API key que tenha o escopo selecionável manual-pix. Esse escopo não é concedido automaticamente a chaves novas ou existentes.
pixKey aceita somente chaves DICT válidas: CPF, CNPJ, telefone, e-mail ou EVP. Chave CNPJ: 14 caracteres, numérica ou alfanumérica (modelo novo, como 12ABC34501DE35), com ou sem máscara; a API guarda sem máscara e em maiúsculas. receiverName tem máximo 25 e city tem máximo 15.
transactionId é alfanumérico, tem máximo 25 e, quando omitido, usa ***. amount é opcional, deve ser positivo, ter no máximo 2 casas decimais e ser menor ou igual a 9.999.999.999,99. No Sicoob, customerName tem máximo 200.
Escolha o modo de saídaLink direto para a seção Escolha o modo de saída
code_onlyResposta 200POST /api/v1/manual-pix
Requisição
{
"mode": "code_only",
"pixKey": "financeiro@empresa.com.br",
"receiverName": "Empresa Ltda",
"city": "Sao Paulo"
}Resposta
{
"mode": "code_only",
"pix_code": "000201..."
}qr_onlyResposta 200POST /api/v1/manual-pix
Requisição
{
"mode": "qr_only",
"pixKey": "financeiro@empresa.com.br",
"receiverName": "Empresa Ltda",
"city": "Sao Paulo"
}Resposta
{
"mode": "qr_only",
"qr_code_data_url": "data:image/png;base64,..."
}bothResposta 200POST /api/v1/manual-pix
Requisição
{
"mode": "both",
"pixKey": "financeiro@empresa.com.br",
"receiverName": "Empresa Ltda",
"city": "Sao Paulo",
"amount": 149.9
}Resposta
{
"mode": "both",
"pix_code": "000201...",
"qr_code_data_url": "data:image/png;base64,..."
}linkResposta 201POST /api/v1/manual-pix com Idempotency-Key: pedido-1001-manual
Requisição
{
"mode": "link",
"pixKey": "financeiro@empresa.com.br",
"receiverName": "Empresa Ltda",
"city": "Sao Paulo",
"domain": "canonical"
}Resposta
{
"mode": "link",
"id": "550e8400-e29b-41d4-a716-446655440000",
"pay_url": "https://meu.casepay.com.br/pay/550e8400-e29b-41d4-a716-446655440000",
"canonical_pay_url": "https://meu.casepay.com.br/pay/550e8400-e29b-41d4-a716-446655440000",
"receipt_received": false
}Somente o modo link exige Idempotency-Key; os demais modos são stateless. link retorna 201; os demais modos retornam 200. O campo domain só existe em link e aceita canonical, casepay_subdomain ou custom. O padrão é canonical; a API não aceita hostname arbitrário.
O PIX manual fica sem confirmação bancária: não há status pago nem conciliação. Um comprovante não confirma o pagamento. No link, o webhook manual_pix/receipt_received avisa quando o pagador envia um comprovante e manual_pix/receipt_removed, quando a equipe o remove; eles tratam do comprovante, não do pagamento.
Comprovante opcional
No link, envie o campo multipart receipt por POST /api/pay/[id]/receipt. São aceitos PNG, JPEG ou PDF até 4 MiB. Sem Content-Length, a resposta é 411; tamanho acima do limite retorna 413; MIME ou magic bytes incompatíveis retornam 415.
A resposta pública contém somente receipt_received. O público não pode visualizar nem baixar. A equipe usa GET e DELETE autenticados em /api/workspaces/[wsId]/manual-pix/[id]/receipt.
Erros do PIX manualLink direto para a seção Erros do PIX manual
| Status | Quando acontece |
|---|---|
| 400 | Validação ou Idempotency-Key inválido. |
| 401 | API key ou sessão ausente/inválida. |
| 403 | Escopo, workspace, acesso ou feature indisponível. |
| 404 | Recurso ou link não encontrado. |
| 409 | Idempotência ou comprovante em conflito. |
| 411 | Content-Length ausente. |
| 413 | Tamanho acima do limite. |
| 415 | MIME ou magic bytes incompatíveis. |
| 422 | Domínio não configurado ou não verificado. |
| 429 | Rate limit. |
| 500 | Configuração, banco ou Storage indisponível. |