Skip to content

Correspondente Bancário

Introdução

As funções mencionadas nesta página são referentes ao módulo de pagamento de contas. Os tipos de documentos aceitos (título, convênio ou tributos) dependem da rede autorizadora que for contratada para os pagamentos.

As funções devem ser chamadas diretamente pela automação com a passagem dos parâmetros conforme orientação abaixo. Caso o integrador deseja que o trabalho de coleta das informações (valor, número do documento) sejam realizadas por uma interface da Linx, deve-se utilizar um outro aplicativo chamado Correspondente Bancário. Existe um manual de integração específico para este aplicativo (se for o seu caso, solicite o documento). Também é possível que seja feito o recebimento de contas utilizando a entrada de dados pelo próprio Automação Comercial. Neste caso, o integrador deverá implementar as telas para coleta das informações (solicitar manual para integração sem telas).

As funções para o recebimento de contas são as seguintes:

Inicializa Sessão Corban

int DIRETIVA_CALLBACK InicializaSessaoCB(char *pNumeroControle)

Finaliza Sessão Corban

int DIRETIVA_CALLBACK FinalizaSessaoCB(char *pNumeroControle)

Consulta Parametros Corban

int DIRETIVA_CALLBACK ConsultaParametrosCB(char *pParametros)

Consulta Pagamento Corban

int DIRETIVA_CALLBACK ConsultaPagamentoCB(char *pTipoConta, char *pCodigoBarrasDigitado, 
    char *pCodigoBarrasLido, char *pValorDocumento, char *pValorDesconto, char *pValorAcrescimo, 
    char *pDataVencimento, char *pFormaPagamento, char *pReservado1, char *pTipoSenha, 
    char *pReservado2, char *pNSUCartao, char *pTipoCMC7, char *pCMC7, char *pNumeroControle,
    char *pMensagemTEF, char *pImprimeComprovante, char *pParametrosConsulta, char *pParametrosConsulta_2)

Pagamento Corban

int DIRETIVA_CALLBACK TransacaoPagamentoCB(char *pTipoConta, char *pCodigoBarrasDigitado, 
    char *pCodigoBarrasLido, char *pValorDocumento, char *pValorDesconto, char *pValorAcrescimo, 
    char *pDataVencimento, char *pFormaPagamento, char *pReservado1, char *pTipoSenha, 
    char *pReservado2, char *pNSUCartao, char *pTipoCMC7, char *pCMC7, char *pParametrosConsulta_2,
    char *pNumeroControle)

Resumo Recebimentos Corban

int DIRETIVA_CALLBACK TransacaoResumoRecebimentosCB(char *pTipoResumo, char *pNumeroControle)

Dados Ultima Transacao Corban

void DIRETIVA_CALLBACK DadosUltimaTransacaoCB(char * oDadosUltimaTransacaoTitulo)
void DIRETIVA_CALLBACK ObtemLogUltimaTransacao(char *oLogUltimaTransacao)

Informações Comuns

Estas funções devem estar disponíveis também após abertura do caixa (por exemplo, num menu de operações do CB) para que o operador possa executar novamente caso tenha ocorrido erro na chamada automática na abertura do caixa. No parâmetro NumeroControle será retornado o NSU da transação.

Os dados retornados estão estruturados da seguinte forma:

Campo Tamanho Descrição
FormasPagamento 04N Indica as formas de pagamento aceitas pelo CB, são elas:

[ 0001 ] Dinheiro (1 em decimal)

[ 0010 ] Cheque (2 em decimal)

[ 0011 ] Dinheiro e Cheque (3 em decimal)

[ 0100 ] Débito (4 em decimal)

[ 0101 ] Debito e Dinheiro (5 em decimal)

[ 0110 ] Débito e Cheque (6 em decimal)

[ 0111 ] Débito, Dinheiro e Cheque (7 em decimal)

[ 1000 ] Crédito (8 em decimal)

[ 1001 ] Crédito e Dinheiro (9 em decimal)

[ 1010 ] Crédito e Cheque (10 em decimal)

[ 1011 ] Crédito, Cheque e Dinheiro (11 em decimal)

[ 1100 ] Crédito e Débito (12 em decimal)

[ 1101 ] Crédito, Débito e Dinheiro (13 em decimal)

[ 1110 ] Crédito, Débito e Cheque (14 em decimal)

[ 1111 ] Crédito, Débito, Cheque e Dinheiro (15 em decimal)
ResumoRecebimentos 01N 0-Não Possui; 1-Possui
ColetaNSUTEFCancelamento 01N 0-Não Coleta; 1-Deve coletar NSU TEF
RealizaInicializaFinalizacaoEquipamento 01N Verifica se deve realizar a inicialização e a finalização de equipamento
• (0-Não; 1-Sim)
HabilitaTransacaoConsultaPagamento 01N Indica se o CB aceita consulta de pagamento
• (0-Não; 1-Aceita)
ColetaDocumentoCancelamento 01N Indica se o NSU deve ser coletado no cancelamento de pagamento
• (0-Não; 1-Sim)
TransacaoConsultaPagamentoObrigatoria 01N Indica se a consulta de pagamento é obrigatória
• (0-Não; 1-Sim)
NumeroBancoPermitido 01N Campo com o número do banco aceito caso o pagamento seja em cheque; AC deve validar este campo
HabilitaRecebimentoTributo01 01N Indica se o CB aceita recebimento de tributos
• (0-Não; 1-Aceita)
HabilitaAcrescimos 01N Indica se o valor de acréscimo deve ser solicitado/habilitado
• (0-Não; 1-Sim)
HabilitaDescontos 01N Indica se o valor de desconto deve ser solicitado/habilitado
• (0-Não; 1-Sim)
HabilitaJuros 01N Indica se o valor dos juros deve ser solicitado/habilitado
• (0-Não; 1-Sim)
HabilitaMulta 01N Indica se o valor da multa deve ser solicitado/habilitado
• (0-Não; 1-Sim)
HabilitaValorDoc 01N Indica se o valor do documento deve ser habilitado (pode ser editado)
• (0-Não; 1-Sim)
HabilitaValorCobrado 01N Indica se o valor cobrado deve ser habilitado (pode ser editado)
• (0-Não; 1-Sim)
HabilitaDataVencimento 01N Indica se a data de vencimento do boleto deve ser habilitado(pode ser editado)
• (0-Não; 1-Sim)
Filler 46A Campo reservado

Uma vez realizada a ConsultaParametrosCB , o AC deverá permitir a entrada dos dados do documento informando o tipo do documento (título, convênio ou tributo), código de barras do do doc, se foi lido ou digitado e o valor, sempre considerando os parâmetros acima citados que indicarão quais valores poderão ser coletados. Após a entrada dos dados do documento o AC deve disponibilizar as formas de pagamento disponíveis (de acordo com o campo FormasPagamento retornado na ConsultaParametrosCB) . Se o pagamento for em TEF, devem ser utilizadas as funções TransacaoCartaoCreditoCompleta , TransacaoCartaoDebitoCompleta ou TransacaoChequeCompleta , conforme a forma desejada pelo cliente. É importante destacar que é permitido realizar somente uma transação TEF (crédito ou débito) por documento a receber. Depois de coletar os dados do documento, verificar se o código de barras é válido e definir/realizar a forma de pagamento, deverá ser feita a consulta de pagamento através da chamada à função ConsultaPagamentoCB.

Campo Tamanho Descrição
TipoConta 01N [ 1 ] Título; [ 2 ] Convênio (exceto tributos); [ 3 ] Convênio (tributos)
CodigoBarrasDigitado 48N código de barras digitado (titulo com 47 bytes ou convênio com 48 bytes)
CodigoBarrasLido 44N codigo de barras lido (titulo ou convênio com 44 bytes)
ValorDocumento 12N valor do documento lido do código de barras (se for zerado, valor digitado); formatar com zeros à esquerda
ValorDesconto 12N valor do desconto coletado; formatar com zeros à esquerda
ValorAcrescimo 12N valor do acréscimo coletado; formatar com zeros à esquerda
DataVencimento Data data de vencimento no formato
FormaPagamento 03N [ 001 ] Dinheiro [ 002 ] Cheque [ 003 ] Débito [ 004 ] Crédito
Reservado1 Alfa Campo reservado para uso interno
TipoSenha 01A Usado pelo Paykit; [A] ou [Z] tipo de senha retornado no campo reservado das transações de crédito e débito completa;[0] se não coletado
Reservado2 Alfa Campo reservado para uso interno
NSUCartao 06N NSU da transação de crédito ou débito
TipoCMC7 01N [ 1 ] para cheque lido; [ 2 ] para cheque digitado
CMC7 30N código CMC7 do cheque
NumeroControle 06N NSU da transação de consulta pagamento
MensagemTEF 32A Parâmetro de retorno com a mensagem que deve ser apresentada pelo CB
ImprimeComprovante 01N Parâmetro de retorno que informa se deve ou não imprimir um comprovante da consulta; 0-não imprime 1-deve imprimir
ParametrosConsulta Estrutura Parâmetro de retorno da consulta no formato da estrutura TParametrosCBTEF (definida logo acima)
ParametrosConsulta_2 Estrutura Conjunto de parâmetros de retorno da consulta com a estrutura TParametrosConsulta_2 (definida logo abaixo). Observações dos campos da estrutura a seguir:

• 1: valor deve ser acumulado no campo de desconto

• 2: valor deve ser acumulado no campo de acréscimo

• 3: valor deve ser apresentado no campo de multa

• 4: indica se operador pode calcular o valor do documento

• 5: indica se o documento está vencido

• 6: indica se o documento é um titulo do Bradesco

• 7: indica se a rede de pagamento aceita título vencido

• 8: indica se a rede de pagamento retornou valor do documento recalculado (se sim, pega do campo ValorDevido)

• 9: valor do documento o recalculado pela rede (substitui o valor do documento)

• 10: valor cobrado que sempre deve ser enviado para a rede. Caso a rede permitir alterar este campo, deverá ser enviado com o valor alterado

Uma vez que a transação de consulta é aprovada (realizada com sucesso com retorno igual a zero), então verifica (através dos parâmetros retornados no campo ParametrosConsulta ) quais campos devem ser habiltados (formas de pagamento, valor de desconto, juros e multa). Se a forma de pagamento for cheque, então deve-se verificar se o banco do cheque é o banco aceito para este pagamento. Também é neste momento que os parâmetros do campo ParametrosConsulta_2 devem ser processados (acatando os valores recebidos). No entanto, se a transação de consulta não for aprovada (retorno diferente de zero), o pagamento deverá ser cancelado e a mensagem de retorno do TEF deve ser apresentada (obter a mensagem através da função **UltimaMensagemTEF ).

Campo Descrição
TParametrosConsulta_2 = record
Cedente array[1..40] of char;
DataContabil array[1..8] of char;
ValorDocumento array[1..12] of char;
ValorDesconto array[1..12] of char;
ValorAbatimento array[1..12] of char; // Obs1
ValorBonificacao array[1..12] of char; // Obs1
ValorMulta array[1..12] of char; // Obs3
ValorJuros array[1..12] of char;
ValorDevido array[1..12] of char; // Obs9
FlagValorCalculadoOperador array[1..1] of char; // Obs4
FlagTituloVencido array[1..1] of char; // Obs5
FlagTituloBradesco array[1..1] of char; // Obs6
FlagAceitaTitulo array[1..1] of char; // Obs7
FlagValorDiverge array[1..1] of char; // Obs8
ValorCobrado array[1..12] of char; // Obs10

Depois da coleta das informações complementares (confirmação dos valores de desconto, juros e multa), a função TransacaoPagamentoCB pode ser realizada.