Pular para o conteúdo principal
ℹ️ Conteúdo em atualização

Estamos revisando estes procedimentos. Pessoas técnicas podem encontrar ajustes em códigos de erro ou mapeamentos de payload; valide com os logs e o OpenAPI mais recente. Pessoas não técnicas podem continuar usando o passo a passo e acionar o time de suporte caso algo pareça diferente do descrito.

💳 API de Arrecadação Lojista

Este guia apresenta o passo a passo para integração com o serviço de arrecadação de títulos em estabelecimentos lojistas, incluindo os pagamentos dos títulos.

🎯 Visão Geral

A API de Arrecadação Lojista permite que você:

  • 📋 Consulte títulos de clientes disponíveis para pagamento
  • 🔐 Crie pré-autorizações para validar arrecadações
  • 📱 Gere QR Codes PIX para pagamento instantâneo
  • Efetive pagamentos de títulos
  • 🔍 Consulte status de pagamentos efetivados
  • Desfaça arrecadações quando necessário

URLs Base:

  • Homologação: https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2
  • Produção: https://api.credsystem.com.br/arrecadacao-lojista/api/v2
📚 Recursos Adicionais

🔐 Autenticação

Todos os endpoints requerem autenticação via Bearer Token (JWT).

Header obrigatório:

Authorization: Bearer <seu_token_jwt>
Atenção

Tokens inválidos ou expirados retornarão erro 401 Unauthorized.


📚 Endpoints Disponíveis

1️⃣ Consultar Títulos do Cliente

Retorna todos os títulos elegíveis para arrecadação em um estabelecimento específico.

Endpoint: GET /consulta-titulo

Parâmetros de consulta:

  • cpfCliente (string, obrigatório) – CPF do cliente sem formatação.
  • codigoEstabelecimento (string, obrigatório) – Código numérico da loja que está realizando a consulta.
Boas práticas
  • Utilize sempre o mesmo codigoEstabelecimento recebido no cadastro da rede.
  • Execute uma nova consulta caso o cliente informe novos títulos ou se a página ficar inativa por vários minutos.

Exemplos de requisição:

curl -X GET "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/consulta-titulo?cpfCliente=12345678901&codigoEstabelecimento=12345" \
-H "Authorization: Bearer SEU_TOKEN_JWT"

Exemplo de resposta (200 OK):

{
"status": 200,
"mensagem": "string",
"cliente": {
"cpf": "string",
"diaMesNascimento": "string",
"nome": "string",
"nomeEstabelecimento": "string",
"extratos": [
{
"numeroExtrato": 0,
"situacao": "string",
"dataVencimento": "2025-01-01T00:00:00.000Z",
"valorOriginal": 0.0,
"valor": 0.0,
"valorEncargos": 0.0,
"valorMinimo": 0.0,
"valorTotal": 0.0,
"valorTotalComSeguro": 0.0,
"valorTotalComAntecipacao": 0.0,
"bin": 0,
"nomeCartao": "string",
"parcelamentoExtrato": [
{
"cabecalho": "string",
"rodape": "string",
"tipoParcelamento": 0,
"parcelas": [
{
"qtdParcelas": 0,
"valorParcela": 0.0
}
]
}
]
}
],
"contratos": [
{
"parcelas": [
{
"loja": 0,
"contrato": 0,
"parcela": 0,
"valor": 0.0,
"vencimento": "2025-01-01T00:00:00.000Z",
"encargos": 0.0,
"desconto": 0.0,
"situacao": "string",
"valorOriginal": 0.0
}
]
}
],
"acordos": [
{
"parcelas": [
{
"loja": 0,
"contrato": 0,
"parcela": 0,
"valor": 0.0,
"vencimento": "2025-01-01T00:00:00.000Z",
"encargos": 0.0,
"desconto": 0.0,
"situacao": "string"
}
]
}
],
"contratosPromocionais": [
{
"loja": 0,
"codigoContrato": "string",
"valorOriginal": 0.0,
"valorEncargos": 0.0,
"valorDesconto": 0.0,
"dividaRemanescente": 0.0,
"valorArrecadado": 0.0,
"parcelasConsolidadas": [
0,
0
]
}
],
"extratosPromocionais": [
{
"numeroExtato": 0,
"valorOriginal": 0.0,
"valorEncargos": 0.0,
"valorDesconto": 0.0,
"dividaRemanescente": 0.0,
"valorPromocao": 0.0
}
]
}
}
Problemas com este endpoint?

Consulte o 🔧 Guia de Troubleshooting - Consulta de Títulos para erros mais comuns e ações recomendadas.


2️⃣ Criar Pré-Autorização

Valida os dados retornados na consulta e gera uma pré-autorização para pagamento.

Endpoint: POST /pre-autorizacao

Corpo da requisição (JSON):

{
"valorTotal": 0,
"cpfCliente": "string",
"codigoEstabelecimento": 0,
"intervaloEntreEfetivacao": 0,
"carne": {
"parcelas": [
{
"loja": 0,
"contrato": 0,
"parcela": 0
}
]
},
"acordo": {
"parcelas": [
{
"loja": 0,
"contrato": 0,
"parcela": 0
}
]
},
"promocaoContrato": [
{
"contrato": 0,
"loja": 0
}
],
"extrato": [
{
"extrato": 0,
"valorPago": 0
}
],
"promocaoExtrato": [
{
"NumeroExtato": 0
}
]
}
Campos opcionais
  • Envie apenas os blocos correspondentes (carne, extrato, acordo, promocaoContrato, promocaoExtrato) quando eles tiverem sido retornados na consulta de títulos.
  • codigoEstabelecimento deve ser o mesmo utilizado na consulta; o backend valida divergências.

Exemplos de requisição:

curl -X POST "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/pre-autorizacao" \
-H "Authorization: Bearer SEU_TOKEN_JWT" \
-H "Content-Type: application/json" \
-d '{
"valorTotal": 0,
"cpfCliente": "string",
"codigoEstabelecimento": 0,
"carne": {
"parcelas": [
{
"loja": 0,
"contrato": 0,
"parcela": 0
}
]
},
"acordo": {
"parcelas": [
{
"loja": 0,
"contrato": 0,
"parcela": 0
}
]
},
"promocaoContrato": [
{
"contrato": 0,
"loja": 0
}
],
"extrato": [
{
"extrato": 0,
"valorPago": 0
}
],
"promocaoExtrato": [
{
"NumeroExtato": 0
}
]
}'

Exemplo de resposta (201 Created):

{
"status": 201,
"mensagem": "Pré-autorização criada com sucesso.",
"dataHora": "2026-01-26T18:00:04.232Z",
"codigoPreAutorizacao": 502196354,
"traceId": "0yhCec94LD0vd1Xr6KTk"
}
Importante

Guarde o codigoPreAutorizacao retornado – ele será necessário para efetivar o pagamento.

Problemas com este endpoint?

Consulte o 🔧 Guia de Troubleshooting - Pré-Autorização para validações detalhadas.


3️⃣ Criar Pré-Autorização com PIX

Valida os dados e gera uma pré-autorização com QR Code PIX para pagamento instantâneo.

Endpoint: POST /pre-autorizacao/pix

Corpo da Requisição (JSON):

{
"estacao": "string",
"usuario": "string",
"codigoEstabelecimento": 0,
"cpfCliente": "string",
"valorTotal": 0,
"extrato": [
{
"numeroExtrato": 0,
"valorPago": 0
}
],
"carne": {
"parcelasCarnes": [
{
"loja": 0,
"contrato": 0,
"parcela": 0
}
]
},
"acordo": {
"parcelasAcordos": [
{
"loja": 0,
"contrato": 0,
"parcela": 0
}
]
},
"promocaoContratos": [
{
"loja": 0,
"contrato": 0
}
],
"promocaoExtratos": [
{
"numeroExtrato": 0
}
],
"emprestimo": {
"parcela": [
{
"loja": 0,
"contrato": 0,
"parcela": 0,
"tipo": "string"
}
]
}
}
Campos adicionais
  • Envie apenas os blocos correspondentes (carne, extrato, acordo, promocaoContrato, promocaoExtrato, emprestimo) quando eles tiverem sido retornados na consulta de títulos
  • codigoEstabelecimento deve ser o mesmo utilizado na consulta; o backend valida divergências.
  • o atributo tipo da parcela do empréstimo, são: NEPL (Empréstimo Pessoal Liquidação) e NEPA (Empréstimo Pessoal antecipação)

Exemplos de Requisição:

curl -X POST "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/pre-autorizacao/pix" \
-H "Authorization: Bearer SEU_TOKEN_JWT" \
-H "Content-Type: application/json" \
-d '{
"estacao": "CAIXA-01",
"usuario": "atendente01",
"codigoEstabelecimento": 12345,
"cpfCliente": "12345678901",
"valorTotal": 525.0,
"extrato": [
{
"numeroExtrato": 123456,
"valorPago": 525.0
}
],
"carne": {
"parcelasCarnes": [
{
"loja": 12345,
"contrato": 987654,
"parcela": 1
}
]
},
"acordo": {
"parcelasAcordos": [
{
"loja": 12345,
"contrato": 555111,
"parcela": 1
}
]
},
"promocaoContratos": [
{
"loja": 12345,
"contrato": 123456789
}
],
"promocaoExtratos": [
{
"numeroExtrato": 654321
}
],
"emprestimo": {
"parcela": [
{
"loja": 12345,
"contrato": 777777,
"parcela": 3,
"tipo": "PESSOAL"
}
]
}
}'

Exemplo de Resposta (201 Created):

{
"status": 201,
"mensagem": "QR Code PIX gerado com sucesso",
"codigoPreAutorizacao": 789012,
"pixCopiaCola": "00020126360014BR.GOV.BCB.PIX0114+55119999999990204000053039865802BR5915LOJA ABC LTDA6009SAO PAULO622905257a89b3c2d4e56f7g8h9i6304A1B2",
"qrCodeBase64": "iVBORw0KGgoAAAANSUhEUgAAAAUA...",
"traceId": "7a89b3c2-d4e5-6f7g-8h9i-j0k1l2m3n4o5"
}
Como usar o PIX
  • pixCopiaCola: Código Copia e Cola que o cliente pode inserir no app do banco
  • qrCodeBase64: Imagem do QR Code em Base64 para exibir ao cliente escanear
Problemas com este endpoint?

4️⃣ Consultar Status da Pré-Autorização

Verifica a situação atual de uma pré-autorização tradicional (pagamentos não PIX).

Endpoint: GET /pre-autorizacao/sonda/status

Parâmetros de consulta:

  • codigoPreAutorizacao (integer, obrigatório) – Código emitido na criação da pré-autorização.
  • codigoEstabelecimento (integer, obrigatório) – Código da loja que iniciou o fluxo.
Situações retornadas
  • E: Efetivado.
  • D: Desfeito.
  • I: Inexistente.

Exemplos de requisição:

curl -X GET "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/pre-autorizacao/sonda/status?codigoPreAutorizacao=789012&codigoEstabelecimento=12345" \
-H "Authorization: Bearer SEU_TOKEN_JWT"

Exemplo de resposta (200 Success):

{
"status": 200,
"mensagem": "Consulta realizada com sucesso",
"codigoAutorizacao": 987654,
"dataHora": "2025-12-03T14:35:00.000Z",
"situacao": "E",
"valorTotal": 525.0,
"comprovante": "COMP-2025-123456-789",
"traceId": "j0k1l2m3n4o5"
}
Problemas com este endpoint?

Consulte o 🔧 Guia de Troubleshooting - Pré-Autorização para mensagens de erro e ações recomendadas.


5️⃣ Consultar Status da Pré-Autorização PIX

Acompanha o processamento de uma pré-autorização gerada via PIX. Se tiver sido paga, vai retornar o comprovante.

Endpoint: GET /pre-autorizacao/sonda/status-pix

Parâmetros de consulta:

  • codigoPreAutorizacao (integer, obrigatório) – Código retornado ao criar o QR Code PIX.
  • codigoEstabelecimento (integer, obrigatório) – Código da loja associado à pré-autorização.

Exemplos de requisição:

curl -X GET "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/pre-autorizacao/sonda/status-pix?codigoPreAutorizacao=789012&codigoEstabelecimento=12345" \
-H "Authorization: Bearer SEU_TOKEN_JWT"

Exemplo de resposta (200 Success):

{
"status": 200,
"mensagem": "Pagamento confirmado",
"dataHoraPagamento": "2025-12-03T14:40:00.000Z",
"comprovante": "PIX-2025-XYZ",
"traceId": "0yhCec94LD0vd1Xr6KTk"
}
Problemas com este endpoint?

Veja o 🔧 Troubleshooting - Pré-Autorização PIX para sinais de expiração ou cancelamento.


6️⃣ Efetivar Arrecadação

Efetiva o pagamento utilizando o código de pré-autorização gerado anteriormente.

Endpoint: POST /efetivacao

Atenção

Este endpoint NÃO efetiva pré-autorizações geradas via PIX. Pagamentos PIX são efetivados automaticamente quando o cliente realiza o pagamento.

Corpo da Requisição:

{
"codigoPreAutorizacao": 789012,
"codigoEstabelecimento": "12345",
"valorPagamento": 525.00,
"identificador": "LOJA-123456"
}
  • valorPagamento deve reproduzir o total efetivamente cobrado da pré-autorização.
  • identificador é opcional e ajuda a rastrear PDV, caixa ou atendente responsável.

Exemplos de Requisição:

curl -X POST "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/efetivacao" \
-H "Authorization: Bearer SEU_TOKEN_JWT" \
-H "Content-Type: application/json" \
-d '{
"codigoPreAutorizacao": 789012,
"codigoEstabelecimento": "12345",
"valorPagamento": 525.00,
"identificador": "LOJA-123456"
}'

Exemplo de Resposta (201 Created):

{
"status": 201,
"mensagem": "Arrecadação efetivada com sucesso",
"comprovante": "COMP-2025-123456-789",
"codigoAutorizacao": 987654,
"dataHora": "2025-12-03T14:35:00.000Z",
"traceId": "7a89b3c2-d4e5-6f7g-8h9i-j0k1l2m3n4o5"
}
Sucesso!

Guarde o codigoAutorizacao e o comprovante para futuras consultas ou desfazimento.

Problemas com este endpoint?

Consulte o 🔧 Guia de Troubleshooting - Efetivação para detalhes sobre pré-autorizações expiradas, divergências e conflitos.


7️⃣ Consultar Status da Efetivação

Consulta o status e detalhes de um pagamento efetivado.

Endpoint: GET /efetivacao/sonda

Parâmetros de Query:

Parâmetros de consulta:

  • codigoAutorizacao (integer, obrigatório) – Código retornado da efetivaçao.
  • codigoEstabelecimento (integer, obrigatório) – Código da loja associado à efetivação.

Exemplo de Requisição:

curl -X GET "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/efetivacao/sonda?codigoAutorizacao=987654&codigoEstabelecimento=12345" \
-H "Authorization: Bearer SEU_TOKEN_JWT"

Exemplo de Resposta (200 Success):

{
"status": 200,
"mensagem": "Consulta realizada com sucesso",
"codigoAutorizacao": 987654,
"dataHora": "2025-12-03T14:35:00.000Z",
"situacao": "E",
"valorTotal": 525.00,
"comprovante": "COMP-2025-123456-789",
"traceId": "j0k1l2m3n4o5"
}
Situações retornadas
  • E: Efetivado.
  • D: Desfeito.
  • I: Inexistente.
Problemas com este endpoint?

Consulte o 🔧 Guia de Troubleshooting - Efetivação para detalhes sobre erros de consulta.


8️⃣ Desfazer Arrecadação

Realiza o estorno (desfazimento) de um pagamento previamente efetivado.

Endpoint: POST /desfazimento

Restrição Importante

O desfazimento só pode ser realizado no mesmo dia da efetivação e não funciona para efetivações realizadas via PIX.

Corpo da Requisição:

{
"codigoAutorizacao": 987654,
"codigoEstabelecimento": "12345",
"valorTotal": 525.00,
"identificador": "LOJA-12345"
}

Exemplos de Requisição:

curl -X POST "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/desfazimento" \
-H "Authorization: Bearer SEU_TOKEN_JWT" \
-H "Content-Type: application/json" \
-d '{
"codigoAutorizacao": 987654,
"codigoEstabelecimento": "12345",
"valorTotal": 525.00,
"identificador": "LOJA-12345"
}'

Exemplo de Resposta (201 Created):

{
"status": 201,
"mensagem": "Desfazimento realizado com sucesso",
"dataHoraDesfazimento": "2025-12-03T16:00:00.000Z",
"traceId": "0k1l2m3n4o5"
}
Atenção: Restrição de Prazo

Desfazimentos só podem ser realizados no mesmo dia da efetivação. Consulte o 🔧 Guia de Troubleshooting - Desfazimento para todos os detalhes sobre erros e restrições.


9️⃣ Consultar pagamentos desfeitos na loja para data informada

Lista os pagamentos desfeitos na loja para data informada.

Endpoint: GET /desfazimento

Parâmetros de consulta:

  • codigoEstabelecimento (string, obrigatório) – Código do estabelecimento que o pagamento foi desfeito.
  • data (string, obrigatório) – Data no formato YYYY-MM-DD para filtrar os pagamentos desfeitos.

Exemplos de requisição:

curl -X GET "https://apihml.credsystem.com.br/arrecadacao-lojista/api/v2/desfazimento?codigoEstabelecimento=12345&data=2025-12-03" \
-H "Authorization: Bearer SEU_TOKEN_JWT"

Exemplo de resposta (200 Success):

{
"mensagem": "Consulta retornada com sucesso.",
"status": 200,
"traceId": "6jrpOfKQDUD10PgeuS9e",
"desfazimentos": [
{
"codigoAutorizacao": 200013313,
"codigoPreAutorizacao": 502197214,
"dataHora": "2026-02-04T11:25:35.107Z",
"identificador": "LOJA-123456"
}
]
}
Problemas com este endpoint?

Veja o 🔧 Troubleshooting - Desfazimento (GET) para hipóteses de lista vazia ou acessos negados.


🔄 Fluxo Completo de Arrecadação

Fluxo 1: Pagamento Tradicional (Dinheiro/Cartão)

Fluxo 2: Pagamento via PIX


💡 Dicas e Boas Práticas

✅ Recomendações

  1. Valide os dados antes de enviar - Verifique CPF, valores e códigos localmente antes de fazer a requisição
  2. Armazene o traceId - Use para rastrear problemas com o suporte técnico
  3. Implemente retry com backoff - Em caso de erro 503, tente novamente após alguns segundos
  4. Cache de tokens - Evite gerar novos tokens a cada requisição
  5. Valide pré-autorizações - Sempre consulte o status antes de efetivar
  6. Desfazimento no mesmo dia - Implemente controle para permitir desfazimento apenas no dia da efetivação

❌ Evite

  1. ❌ Não exponha o token JWT no frontend
  2. ❌ Não tente efetivar pré-autorizações PIX manualmente
  3. ❌ Não ignore os códigos de status HTTP
  4. ❌ Não faça polling excessivo no endpoint de status

🆘 Suporte

Contato Técnico

Em Caso de Erro

  1. Anote o traceId retornado no erro
  2. Capture a requisição completa (sem dados sensíveis)
  3. Descreva o comportamento esperado vs. obtido
  4. Envie para o email de suporte com assunto: [API Arrecadação v2] - Descrição do Problema

📄 Licença

Apache 2.0


Última atualização: 24 de Fevereiro de 2026 Versão da API: 2.0