Registrando boleto via WebService (On-line)
Algumas instituições financeiras disponibilizam o registro de boleto via WebService, para trabalhar com esta modalidade.
Inicializando a comunicação
O fluxo geral de comunicação com o banco segue a seguinte lógica:
- Boleto – WebService – Inicializar – Fornece os dados básicos para comunicação com o banco;
- Boleto – WebService – Incluir Boleto – Permite o envio de um boleto para a conexão previamente estabelecida, podendo ser chamadas repetidas vezes para a mesma conexão.
Não se faz necessário ‘desconectar’ ou deslogar. A conexão retornada pela inicialização pode ser reutilizado por uma janela de tempo determinada pelo banco (normalmente até 04 horas), recomendamos que use durante a execução de um fluxo (5 min). Não tentando salvar na sessão para uso posterior.
Enviado/Cadastrando um novo boleto
- Boleto – WebService – Inicializar – Inicie a comunicação com o banco;
- Boleto – WebService – Incluir Boleto(Conexão, Dados boleto) – Envie um boleto para a conexão previamente estabelecida, podendo ser chamadas repetidas vezes para a mesma conexão
- Conexão é a variante retornada pela inicialização;
- Dados boleto (Variante) é um mapa contendo os mesmos itens usados na geração do PDF e remessa (veja aqui).
- O retorno do envio será um mapa (variante) com os seguintes itens:
- Em todos os casos retornará:
- “SUCESSO” (Lógico) indicando se a operação foi executada com sucesso ou não;
- “SERVIDOR_RESPOSTA” (Letras) – Com o texto completo da resposta retornada pelo servidor;
- “SITUACAO_DESCRICAO” (Letras) – Indicando o resultado geral da chamada (se houver).
- Em caso de sucesso também retornará:
- “CODIGO_BARRAS”
- “LINHA_DIGITAVEL”
- “NOSSO_NUMERO”
- “BOLETO_URL” – Link para visualização do boleto on-line.
- Em caso de erro serão retornados os seguintes itens:
- “ERRO_MENSAGEM” – Mensagem de erro retornada pelo servidor.
- Em todos os casos retornará:
Consultando/Verificando a situação de boleto
Para saber se um boleto está pago, pendente ou cancelado você deve usar a função “Boleto – WebService – Consultar Boleto” com os seguintes parâmetros:
- Conexão (Variante) retornada pela inicialização;
- Dados do boleto a ser consultado. Pode variar para cada banco (ver na documentação específica do banco), normalmente deve conter os seguintes dados:
- NOSSO_NUMERO;
- LINHA_DIGITAVEL;
- CODIGO_BARRAS;
- BOLETO_GERAR_PDF (Lógico): Se for informado como verdadeiro, e o banco suportar, será baixado o PDF do boleto gerado pelo banco. O PDF será retornado no item ‘ARQUIVO_PDF‘.
No retorna da função virá os dados do(s) boleto(s) consultados, em um mapeamento contendo entre outros, os seguintes itens:
- BOLETO_SITUACAO (Letras): Indica se o boleto está “EM ABERTO” (Aguardando pagamento), “BAIXADO” (Removido do sistema), “LIQUIDADO” (pago);
- “PIX_QRCODE” (Letras): Dados do PIX conjugado ao boleto (se houver);
- “PIX_TXID” (Letras): Dados do PIX conjugado ao boleto (se houver);
- “ITENS” (Lista/Variante): Quando a requisição retornar mais de um boleto, cada um deles está nos mapeamentos desta lista.
Observações
Nem todo banco/carteira disponibiliza todos os métodos, alguns permitem o envio (cadastro), mas não disponibilizam métodos de alteração, cancelamento ou baixa. O mesmo vale para a consulta da situação do boleto.