Árvore de páginas

  1. Visão Geral
  2. Exemplo de utilização
  3. Descrição Campos da Mensagem
  4. Premissas


Modelo de dados a ser seguido para a integração de movimentos em Conta Corrente do Caixa e Bancos Datasul.

 Envio de dados deve ser realizado via Smart Link utilizando o Padrão CloudEvents/Modo Estruturado para envio de mensagens no formato Json de acordo com o modelo a seguir :

Json de envio Movimento Conta Corrente
{
    "messageId": "123",
    "audience:": "",
    "messageType": "CMGCheckingAccountMovement",
    "additionalInfo": "",
    "messageContent": {
        "specVersion": "1.0",
        "user": "UserCodeDatasul",
        "company": "CompanyCodeDatasul",
        "productCode": "GFI",
        "idExternal": "123456",
        "movements": [
            {
                "checkingAccount": "341001",
                "movementDate": "2024-10-15",
                "movementValue": 100,
                "transctionType": "TRANSF",
                "flowIndicatorMovement": "ENT",
                "movementType": "RE",
                "bankDocumentCode": "87953361",
                "historyCode": "Pagamento",
                "descriptionHistory": "Transferência referente Pagamento xpto",
                "checkingAccountTransfer": "341002",
                "keyCode": "000000001"
            },
			{
                "checkingAccount": "341001",
                "movementDate": "2024-10-15",
                "movementValue": 250,
                "transctionType": "DESP",
                "flowIndicatorMovement": "SAI",
                "movementType": "RE",
                "bankDocumentCode": "900557484",
                "historyCode": "Despesa",
                "descriptionHistory": "Despesa Bancária referente a transação xpto",
                "checkingAccountTransfer": "",
                "keyCode": "000000002"
            }
        ]
    }
}

A propriedade "movements" deverá ser enviada no formato array, onde cada item desse array deverá conter os dados do movimento ser lançado na Conta Corrente no Caixa e Bancos Datasul.

Cada linha deverá conter ao menos uma conta corrente para receber o lançamento, podendo ser até duas contas informadas ("checkingAccount" e "checkingAccountTransfer") quando for realizado movimentação de Transferência Bancária.

Exemplo Json de resposta
 [
        {           
            "keyCode": "000000001",    
			"sequenceNumber": "10",
            "messageType": "CMGCheckingAccountMovementResponse",            
            "idExternal": "123456", 
            "checkingAccount": "",
			"movementDate": "",
			"movementSequence": "",             
			"company": "10", 
            "error": [
                {
                    "code": "21474",
                    "description": "Tipo de Transação de Caixa TRANSF inexistente!",
                    "help": "O Tipo de transação de Caixa TRANSF informado nos Parâmetros de Controle do Caixa é Inexistente!"
                }
            ]
        },
	    {           
	        "keyCode": "000000003",
	        "sequenceNumber": "20",
	        "messageType": "CMGCheckingAccountMovementResponse",	        
	        "idExternal": "1111",
	        "checkingAccount": "123345",
	        "movementDate": "2025-01-26",
			"movementSequence": "14",
            "company": "10",
	        "error": ""
        }
    }
]


Abaixo a descrição dos campos da mensagem a ser recebida para Inclusão de Movimentos em Conta Corrente no Datasul.


Dados Cabeçalho Movimentos da Conta Corrente

CampoDescriçãoTipoTamanhoObrigatórioObservação
specVersionVersão da MensagemCaractere3XHoje a versão disponível é apenas 1.0
userCódigo do usuário Caractere12
Código do usuário cadastrado no produto Datasul
companyCódigo da empresaCaractere3XCódigo da empresa 
productCodeCódigo Módulo/Produto OrigemCaractere3

Código Módulo/Produto de Origem cadastrado no Datasul.

Caso não seja informado, a origem será CMG.

idExternalID Externo do RegistroCaractere10
Esta informação identifica a processo /rotina/programa de origem, e será retornado após processamento via Mensagem Resposta 


Movimentação Conta Corrente (propriedade: Movements)

CampoDescriçãoTipoTamanhoObrigatórioObservação
checkingAccountConta CorrenteCaractere10XConta Corrente que irá receber lançamento
movementDateData MovimentoCaractere10XData do Movimento Conta Corrente
movementValueValor MovimentoNumérico18XValor do Movimento Conta Corrente
transctionTypeTipo TransaçãoCaractere8XTipo de Transação Caixa do Movimento
flowIndicatorMovementIndicador FluxoCaractere18X

Indicador Fluxo da Movimentação:

ENT - Entrada

SAI - Saída

movementTypeTipo MovimentoCaractere2X

Tipo de Movimento:

NR - Não Realizado

RE - Realizado

bankDocumentCodeCódigo DocumentoCaractere20XCódigo do Documento no Movimento da Conta no Banco
historyCodeCódigo do HistóricoCaractere8*Histórico Padrão
descriptionHistoryDescrição do Histórico Caractere2000**

Descrição do histórico do Movimento

checkingAccountTransferConta Corrente DestinoCaractere10

Somente deve ser informada Conta Corrente Destino quando for movimento de Transferência entre contas correntes da empresa.

keyCodeChave Identificação OrigemCaractere200XChave de Identificação do Registro do Movimento no sistema de Origem


Observações:

* Essa informação se torna obrigatória quando não informado a Descrição do Histórico ( "descriptionHistory" ).

** Essa informação se torna obrigatória quando não informado o Código do Histórico ( "historyCode" ).


Mensagem Resposta de Processamento

CampoDescriçãoTipoObservação
keyCodeChave Registro OrigemCaractereChave de Identificação do Registro do Movimento no sistema de Origem.
sequenceNumberSequencial Mensagem Retorno  NuméricoQuando for gerar uma movimentação de transferência,  o sistema acaba gerando uma saída numa conta corrente e uma entrada em outra conta ou vice e versa. Neste caso o Datasul devolve mais de um registro por KeyCode (Registro Origem). Este campo sequencial serve para indicar a sequencia de retornos que irão apontar através dos campos checkingAccount, movementDate e movementSequence o registro criado.
idExternalID Externo do RegistroCaractereEsta informação identifica a processo /rotina/programa de origem, e será retornado após processamento via Mensagem Resposta 
checkingAccountConta CorrenteCaractereConta Corrente que irá receber lançamento
movementDateData Movimento Conta CorrenteCaractereData do Movimento Conta Corrente
movementSequence

Sequencia Movimento Conta Corrente

NuméricoSequencia Movimento Conta Corrente
companyCódigo da empresaCaractereCódigo Empresa Datasul

Observações: A chave de identificação do registro criado no Datasul será composta pelos campos checkingAccount, movementDate e movementSequence.


         Para que a integração entre o Sistema de Origem e o Caixa e Bancos ocorra, no ERP Datasul deverá ser criado o módulo/produto de Origem com o objetivo de facilitar a identificação e consulta dos movimentos através dos Relatórios, Consulta e Rotinas do Caixa e Bancos.

         Efetue o cadastro através do programa bas_modul_dtsul - Manutenção de Módulos e inclua o código do módulo e a descrição do mesmo conforme exemplo abaixo:

    

               Para maiores informações sobre cadastro de módulos, acessar: Manutenção de Módulo(MEN004AA).