Histórico da Página
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Informações Gerais
Especificação | |||
Produto | RM | Módulo | TOTVS Gestão Financeira |
Segmento Executor | Educacional | ||
Projeto | R_EDU_CTB005 | IRM | PCREQ-8624 |
Requisito | PCREQ-10571 | Subtarefa | PDR_EDU_CTB007-2 |
País | (x ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. | ||
Outros | <Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>. |
Objetivo
Implementar a integração com TEF no recebimento de lançamentos com cartão no módulo de caixa através de um PinPad, sem a emissão de cupom fiscal.
Definição da Regra de Negócio
Será implementada a integração com o software SITEF da empresa Software Express, que será responsável pela comunicação com as operadoras (adquirentes).
Para possibilitar o funcionamento, será necessário que a empresa possua um contrato com pelo menos um adquirente onde o SITEF seja homologado, como, por exemplo, Cielo, Rede, Stone, GetNet.
Serão tratados os pagamentos de serviços que não exigem a emissão de um cupom fiscal. Ou seja, o sistema não emitirá o cupom fiscal nem trabalhará com uma impressora fiscal. Não deve ser feito o pagamento de produtos para os quais a lei exige a emissão de um cupom fiscal através de cartão pelo módulo de caixa. Para isso, deverá ser usado um sistema de PDV.
Escopo:
1 - Parametrização:
Os seguintes parâmetros gerais serão criados para permitir o uso do TEF:
- Usa TEF
- Endereço IP do SiTef
- Código da Empresa (SiTef)
- Porta PinPad
- Mensagem Padrão PinPad
- Valor mínimo por parcela (crédito)
- Número máximo de parcelas (crédito)
- Liberar o estorno com senha do supervisor
Ao abrir a sessão de caixa, serão acrescentados os seguintes parâmetros, caso o parâmetro "Usa TEF" esteja habilitado.
- Habilita TEF
2 - Processos
2.1 - Ativar Sessão de Caixa
Ao ativar a sessão de caixa o SiTef deverá ser configurado, se o parâmetro "Habilita TEF" foi marcado na abertura do caixa. Além disso, será verificada a presença do PinPad.
Funções a serem utilizadas:
ConfiguraIntSitefInterativoEx - configura o Sitef. Deverá ser chamado com os seguintes parâmetros: endereço ip, código da empresa, id do terminal e porta pinpad. O id do terminal deverá ter o formato XXNNNNNN, onde XX corresponder a dois caracteres alfabéticos que no caso deverá ser CX e NNNNNN seis números que no caso deverá ser o nº do caixa. Se o retorno da função for 0 significa que foi configurado com sucesso, caso contrário deverá ser apresentado para o usuário a mensagem de erro de acordo com a tabela abaixo e a sessão não deverá ser ativada.
Valor Descrição 0 Não ocorreu erro 1 Endereço IP inválido ou não resolvido 2 Código da loja inválido 3 Código de terminal inválido 6 Erro na inicialização do Tcp/Ip 7 Falta de memória 8 Não encontrou a CliSiTef ou ela está com problemas 9 Configuração de servidores SiTef foi excedida 10 Erro de acesso na pasta CliSiTef (possível falta de permissão para escrita) 11 Dados inválidos passados pela automação 12 Modo seguro não ativo (possível falta de configuração no servidor SiTef do arquivo .cha). 13 Caminho DLL inválido (o caminho completo das bibliotecas está muito grande).
- VerificaPresencaPinPad - verifica se existe um PinPad conectado. Caso não exista um PinPad conectado a sessão não deverá ser ativada.
- EscreveMensagemPermanentePinPad - escreve a mensagem padrão definida no visor do PinPad.
2.2 - Baixa de Lançamentos
Durante a baixa de lançamentos pela sessão de caixa ativada e habilitado o TEF, quando o meio de pagamento tiver o tipo primitivo “Cartão”, deverá iniciada uma transação no SiTef.
Se o meio de pagamento for cartão de crédito deverá ser criada uma uma tela para o operador selecionar se o pagamento será a vista ou parcelado de acordo com a definição do número máximo de parcelas definido.
Transação do SiTef:
Deverá ser criado uma tela para visualização do operador de caixa, onde serão mostradas as mensagens de comunicação com SiTef .
Para iniciar a transação no Sitef deverá ser utilizada a função IniciaFuncaoSitefInterativo, passando os seguintes parâmetros:
- Função - seleciona a forma de pagamento, de acordo com o meio de pagamento informado no momento da baixa. Com as opções de 2 para débito e 3 para crédito.
- Valor - valor a ser pago contendo o separador decimal (","). Deve sempre ser passado com duas casas decimais após a virgula.
- CupomFiscal - referência do lançamento
- DataFiscal - data do sistema no formato AAAAMMDD
- HoraFiscal - horário do sistema no formato HHMMSS
- Operador - identificação do operador de caixa
- ParamAdic - parâmetros adicionais. Permite que o aplicativo limite o tipo de meio de pagamento. Caso seja uma transação de cartão de débito deverá ser passado os códigos [17;18;19;3031;], para crédito a vista os códigos [24;27;28;29;36;] e para crédito a prazo os códigos [24;26;28;29;36;].
Após iniciada a transação deverá ser utilizada a função ContinuaFuncaoSitefInterativo, onde serão enviadas as informações referentes ao pagamento. A partir desse envio, serão apresentadas informações enviadas pelo SiTef para o operador e solicitadas informações, se necessário, dependendo da parametrização do SiTef.
Caso o retorno enviado pelo SiTef esteja OK, será impresso o comprovante de pagamento do TEF e o operador deverá informar se o mesmo TEF foi impresso corretamente. Se a resposta for positiva, o recebimento será concluído e o processo de baixa finalizado. Caso contrário, será cancelado e a baixa não será concluída.
Para finalizar a transação pelo SiTef deverá ser utilizada a função FinalizaTransacaiSitefInterativo.
Se a transação for concluída pelo SiTef, mas ocorrer algum erro na baixa, o campo BaixaPendente será alterado para que o lançamento fique travado. Será necessário executar o processo de tratamento de transações pendentes para que a baixa seja realizada corretamente.
Quando a transação e a baixa forem concluídas com sucesso, os dados enviados pelo SiTef como NSU, código da autenticação, código da rede autorizadora serão armazenados no sistema para futura conciliação. A tabela que serão gravados os dados da transação deverá ser a FINTEGRACAOCARTAO.
- IDENTIFICADORORIGEM: "Coligada" + '|' + "Identificador Referência do lançamentoextrato"
- IDPROCESSO: nsu NSU do autorizador (tipocampo 134)
- BANDEIRA: bandeira do cartão (tipocampo 131 e 132)
- DATAHORA: data e hora da transação (tipocampo 105)
- IDSTATUS: status da transação
- CODAFILIACAO: código do estabelecimento (tipocampo 157)
- MEIOPAGTO: meio de pagamento (cartão de credito ou débito)
- NUMPARCELAS: número de parcelas do pagamento
- CODCOLIGADA: código da coligada
- IDLANIDXCX: identificador referência do lançamentoextrato
- IDMODELO: preencher com 3 (TEF)
- NSUSITEF: NSU do SiTef (tipocampo 133)
2.3 - Transações Pendentes
No caso em que ocorrer um erro durante a baixa de uma transação que foi concluída corretamente pelo SiTef, deverá ser implementado no processo "Ajustes de Transações" uma rotina para concluir a baixa dos lançamentos referentes as transações.
2.4 - Cancelamento de transações
No estorno Deverá ser criado um processo para que seja possível enviar para o SiTef o cancelamento de uma transação realizada pelo cartão. Nesse caso, além do cancelamento da transação, será realizado também o cancelamento da baixa.
Fluxo do Processo