Páginas filhas
  • 15359022 DMANFINLGX-21402 Colaborativo FSWLGX-2415 - Criar API para baixar duplicatas a receber

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


01. DADOS GERAIS

Produto:

Solucoes_totvs_cross
SolucaoCrossTOTVS Backoffice

Linha de Produto:

Linhas_totvs
LinhaLinha Logix

Segmento:

Segmentos_totvs
SegmentoManufatura

Módulo:

Modulos_cross_segmentos
ModulosCrossSegmentosTOTVS Backoffice (Linha Logix) - Finanças


Função:DischargeDoc - API baixa de duplicatas
País:Brasil
Ticket:15359022 15359022 
Requisito/Story/Issue (informe o requisito relacionado) :

DMANFINLGX-21402


02. SITUAÇÃO/REQUISITO

Criação da API de baixa de duplicatas/títulos de forma automática, carregando as informações e fazendo as validações necessárias para a baixa, conforme FIN10060 - baixa de títulos.

03. SOLUÇÃO

  • Verbo: POST ({{host}}/api/financeiro/v1/DischargeDoc)
  • Campos de entrada que deverão ser enviados no JSON de envio: Se não for obrigatório, enviar a TAG nula ou zero para campos numéricos, conforme descrito abaixo.


Informações
titleImportante
  • Este desenvolvimento está disponível a partir da release 12.1.2407


Tags utilizadas no arquivo JSON para inserir os dados.


Tag

Descrição

Definição

Obrigatório?

Observação

CompanyId

Código da empresa

CHAR(02)

S

Código da empresa válida no Logix

UserCode

Código do usuário

CharCHAR(08)

S

Código do usuário válido no Logix

CarrierCode

Código do portador

DECIMAL(04,0)

S

Código do portador válido no Logix

CarrierType

Tipo do portador

CHAR(01)

S

'B' - Banco ou 'C' - Carteira ou 'R' - Representante ou 'E' - Escritório de cobrança

Currency

Código da moeda

DECIMAL(02,0)

S

Código da moeda válido no Logix

CreditDate

Data do crédito

DATE

S


MovimentDate

Data do lançamento

DATE

S


DischargeDate

Data da baixa

DATE

S


PaymentTypeCode

Código da forma de pagamento

CHAR(02)

S

Código da forma de baixa válida no Logix

  • Deve ser diferente de ‘BC’, ‘CA’, ‘NC’ e ‘AD’
  • E parâmetro de forma de baixa equiparada a NCDeve ser diferente de formas que realizam baixas de títulos de débito por títulos de crédito.
  • Deve ser diferente de 'AB' e 'DV' também, pois não foram previstos os campos de motivo e instrução bancária.

ListOfDocuments

Record 1 – N

     Record

S

Documentos a baixar – VIDE TABELA COMPLEMENTAR 1 

ListOfBankConciliation

Record 1 – N

     Record

S

Conciliação bancária – VIDE TABELA COMPLEMENTAR 2  - Obrigatório somente se o tipo de portador for “B” e se tiver integração com TRB

...

Tag

Descrição

Definição

Obrigatório?

Observação

BankCompanyId

Código da empresa da conciliação bancária

CHAR(02)

S

Código da empresa válido no Logix

BankCreditDate

Data do credito

DATE

S


BankCreditValue


Valor do crédito

DECIMAL(15,2)

S

A soma dos valores da conciliação bancária deve “fechar” com a soma dos valores recebidos nos documentos.


Exemplo do JSON de envio com 2 documentos e 1 linha na conciliação bancária:


{                                                
   "CompanyId":"01",                         
   "UserCode":"admlog",                        
   "CarrierCode":"1",                          
   "CarrierType":"B",                          
   "Currency":"1",                 
   "CreditDate":"13/04/2023",                     
   "MovimentDate":"13/04/2023",                    
   "DischargeDate":"13/04/2023",                     
   "PaymentTypeCode":"BP",                         
   "ListOfDocuments":[                       
          {                                      
          "CompanyIdDoc":"01",
          "DocumentNumber":"05202404012",                         
          "DocumentType":"DP",        
          "ReceivedValue":"100.00",             
          "DiscountValue": "0.00",             
          "GlosaValue": "0.00",             
          "ReductionValue": "0.00",             
          "AccreditIndicator":"S",             
          "FeesValue": "0.00",             
          "MulctValue": "0.00",             
          "RegistryExpenseValue": "0.00",             
          "FinancialExpenseValue": "0.00",             
          "PositiveExchangeVariation": "0.0",             
          "NegativeExchangeVariation": "0.00"
          },        
          {                                      
          "CompanyIdDoc":"01",
          "DocumentNumber":"03032022-01",                         
          "DocumentType":"DP",        
          "ReceivedValue":"100.00",             
          "DiscountValue": "0.00",             
          "GlosaValue": "0.00",             
          "ReductionValue": "0.00",             
          "AccreditIndicator":"N",             
          "FeesValue": "10.00",             
          "MulctValue": "0.00",             
          "RegistryExpenseValue": "0.00",             
          "FinancialExpenseValue": "0.00",             
          "PositiveExchangeVariation": "0.0",             
          "NegativeExchangeVariation": "0.00"
          }        
       ],   
   "ListOfBankConciliation":[                       
          {                                      
          "BankCompanyId":"01",                         
          "BankCreditDate":"13/04/2023",                     
          "BankCreditValue":"210.00"             
          }
       ]                                        
}

...

  • Observação: A soma na conciliação bancária é referente aos 2 documentos enviados, somando valor de juros, inclusive, conforme feito na tela de conciliação bancária no fin10060 FIN10060 quando há a integração com o TRB.


Modelo do JSON sem dados (para substituir a definição dos campos pelos dados):

{                                               

...

        ]                                       

}

Layout JSON retorno:

  • Retornará o lote de pagamento e a sequência do pagamento efetuado no Logix, quando processamento com sucesso (status ok);
  • Retornará mensagem de erro quando ocorrer problema;

Exemplo JSON retorno ok:

{

    "CompanyId": "01",

    "CarrierCode": "1",

...

            }

        ]

    }

}

Exemplo JSON retorno erro:

{

    "code": "400",

    "message": "Erro durante o processamento da baixa de títulos.",

    "detailMessage": "O código do portador não foi enviado."

}


04. DEMAIS INFORMAÇÕES

  • Todos os campos enviados serão consistidos conforme regras existentes no FIN10060/FIN85036, opção de baixa manual pela tela detalhes.
  • Além das novas funções da API, foram alteradas funções padrões do FIN para ajustar mensagens em tela (que não devem ocorrer na API), por isso é importante que essas funções estejam atualizadas (pacote completo do ticketDisponível a partir da release 12.1.2407).
  • Prevê baixas normais portador Banco e Carteira, Carteira, Representante e/ou Escritório de cobrança.
  • Não prevê forma de baixa 'BC' e 'CA' – exclusivos de pagamento escritural (se utilizar integração com o TRB) – já testado/bloqueado pelo fin10060é validado pelo FIN10060 - Baixa manual.
  • Não prevê forma de baixa 'NC' (Notas de crédito) e forma de baixa 'AD' (adiantamentos) – nem formas de baixa equiparadas a NC – vide parâmetro “Utilizar baixa de débitos por títulos de crédito?” do FIN10004.
  • Não prevê forma de baixa 'AB' (Abatimentos) e 'DV' (Devoluções), pois não foram previstos os campos de motivo e instrução bancária.
  • Não prevê estornos (fin10061FIN10061).
  • Não prevê conceito de multimoeda.

05. ASSUNTOS RELACIONADOS

...