Descrição
Essa API tem a funcionalidade de integração de sangria do sistema SmartEcf Bematech para o sistema Microsiga Protheus, possibilitando a troca de informações de sangria entre um sistema e outro.
Os dados são enviados/recebidos por meio da mensagem padronizada TOTVS com a funcionalidade EAI (Enterprise Application Integration), disponível no módulo Configurador.
Nos procedimentos de utilização abaixo, está detalhado o processo de cada mensagem/entidade trocada, explicando o seu conceito e as configurações técnicas para habilita-la e no final do documento também temos uma FAQ, caso não possua a pergunta desejada pode acionar a comunidade P@Varejo no link http://fluig.totvs.com/portal/p/10097/subject/pvarejo
Pré-requisitos
1) Deve ser criado um de-para para o campo Numerário do Protheus, amarrando com as formas de pagamento no Gemco
2) Deve ser criado uma Natureza do tipo Sangria do lado do Protheus manualmente
3) Deve ser cadastrado manualmente o de-para de operador de caixa do lado do Protheus
4) Deve ser cadastrado manualmente o de-para de banco/conta (tesouraria) no Protheus. Verificar no módulo financeiro do Gemco qual banco/conta (tesouraria) é gerado o lançamento de Sangria.
5) Passar para Protheus o número do caixa Gemco (no campo banco do Protheus).
6) Cadastrar o adapter de sangria no Protheus. (clique aqui)
Funcionamento
Efetue uma operação de sangria no SmartEcf utilizando a tecla F2, conforme imagem abaixo.
Para uma sangria ser efetivada no Protheus é necessário realizar duas transações bancárias, uma de débito e uma de crédito.
Métodos da API
GET /api/Sangria
Método de consulta dos movimentos de caixa de Sangria e enfileira no Mozart para realizar a próxima chamada enviando para Totvs EAI através da mensagem padronizada BankTransaction (https://api.totvs.com.br/msgunica/bo/Events/BANKTRANSACTION_2_000.html?nome=INTEGRA%C3%87%C3%83O%20DOS%20MOVIMENTOS%20FINANCEIROS&transacaohabilitada=)
GET /api/Sangria/GetMovimentoCaixaCentralSangria
Método de consulta dos movimentos de caixa de Sangria que precisam ser enviados para o caixa central e enfileira no Mozart para realizar a próxima chamada enviando para Totvs EAI através da mensagem padronizada BankTransaction (https://api.totvs.com.br/msgunica/bo/Events/BANKTRANSACTION_2_000.html?nome=INTEGRA%C3%87%C3%83O%20DOS%20MOVIMENTOS%20FINANCEIROS&transacaohabilitada=)
Modelo de Json de retorno
{
"data": false,
"httpStatusCode": 200,
"notifications": [],
"success": true
}
POST /api/Sangria/ToUpsertBusinessMessageResponse
Resposta do Protheus, contendo os IDs de integração
Modelo de XML de envio
https://api.totvs.com.br/msgunica/bo/Events/BANKTRANSACTION_2_000.xsd
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<receiveMessage xmlns="http://www.totvs.com/">
<inMsg><?xml version="1.0" encoding="utf-8"?><TOTVSMessage><MessageInformation version="2.001"><UUID>96d14fe5-b7e9-5d57-4337-f46cb5626ccc</UUID><Type>Response</Type><Transaction>BANKTRANSACTION</Transaction><StandardVersion>1.000</StandardVersion><SourceApplication>NBT1XC_TST40</SourceApplication><CompanyId>40</CompanyId><BranchId>0101</BranchId><Enterprise>01</Enterprise><BusinessUnit></BusinessUnit><Product name="PROTHEUS" version="12"></Product><GeneratedOn>2018-08-06T17:55:08Z</GeneratedOn><DeliveryType>Async</DeliveryType></MessageInformation><ResponseMessage><ReceivedMessage><SentBy>GEMCO</SentBy><UUID>e1d6c9e3-5251-4643-a2a8-845c5cfc9518</UUID><Event>Upsert</Event><MessageContent><![CDATA[<?xml version="1.0" encoding="utf-8"?><TOTVSMessage><MessageInformation version="2.001"> <UUID>e1d6c9e3-5251-4643-a2a8-845c5cfc9518</UUID> <Type>BusinessMessage</Type> <Transaction>BankTransaction</Transaction> <StandardVersion>2.001</StandardVersion> <SourceApplication>GEMCO</SourceApplication> <CompanyId>40</CompanyId> <BranchId>1</BranchId> <Product name="GEMCO" version="2.001" /> <GeneratedOn>06/08/2018 14:54:15</GeneratedOn> <DeliveryType>Async</DeliveryType> </MessageInformation><BusinessMessage><BusinessEvent><Entity>BankTransaction</Entity><Event>Upsert</Event><Identification><Key Name="InternalId">40|1|2|1|1|06/08/2018 00:00:00|1|1</Key></Identification></BusinessEvent><BusinessContent><CompanyId>40</CompanyId><BranchId>1</BranchId><InternalId>40|1|2|1|1|06/08/2018 00:00:00|1|1</InternalId><MovementDate>2018-08-06T00:00:00</MovementDate><EntryValue>53.00</EntryValue><MovementType>1</MovementType><DocumentNumber></DocumentNumber><FinancialCode>SANGRIA</FinancialCode><BatchNumber></BatchNumber><ApportionmentDistribution><DebitAccount></DebitAccount><CostCenterCode></CostCenterCode></ApportionmentDistribution><BankInternalId>40|1|1</BankInternalId><Agency>.</Agency><NumberAccount>.</NumberAccount><CurrencyType>4</CurrencyType><OriginalBranchId>1</OriginalBranchId><OperationType>4</OperationType></BusinessContent></BusinessMessage></TOTVSMessage>]]></MessageContent></ReceivedMessage><ProcessingInformation><ProcessedOn>2018-08-06T17:55:08Z</ProcessedOn><Status>ok</Status></ProcessingInformation><ReturnContent><ListOfInternalId><InternalId><Name>BankTransaction</Name><Origin>40|1|2|1|1|06/08/2018 00:00:00|1|1</Origin><Destination>40|0101|0000000035</Destination></InternalId></ListOfInternalId></ReturnContent></ResponseMessage></TOTVSMessage></inMsg>
</receiveMessage>
</soap:Body>
</soap:Envelope>
Modelo de Json de retorno
{
"data": false,
"httpStatusCode": 200,
"notifications": [],
"success": true
}
POST /api/Sangria/ToUpsertCentralCashierResponse
Resposta do Protheus, contendo os ID de integração
Modelo de XML de envio
https://api.totvs.com.br/msgunica/bo/Events/BANKTRANSACTION_2_000.xsd
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<receiveMessage xmlns="http://www.totvs.com/">
<inMsg><?xml version="1.0" encoding="utf-8"?><TOTVSMessage><MessageInformation version="2.001"><UUID>96d14fe5-b7e9-5d57-4337-f46cb5626ccc</UUID><Type>Response</Type><Transaction>BANKTRANSACTION</Transaction><StandardVersion>1.000</StandardVersion><SourceApplication>NBT1XC_TST40</SourceApplication><CompanyId>40</CompanyId><BranchId>0101</BranchId><Enterprise>01</Enterprise><BusinessUnit></BusinessUnit><Product name="PROTHEUS" version="12"></Product><GeneratedOn>2018-08-06T17:55:08Z</GeneratedOn><DeliveryType>Async</DeliveryType></MessageInformation><ResponseMessage><ReceivedMessage><SentBy>GEMCO</SentBy><UUID>e1d6c9e3-5251-4643-a2a8-845c5cfc9518</UUID><Event>Upsert</Event><MessageContent><![CDATA[<?xml version="1.0" encoding="utf-8"?><TOTVSMessage><MessageInformation version="2.001"> <UUID>e1d6c9e3-5251-4643-a2a8-845c5cfc9518</UUID> <Type>BusinessMessage</Type> <Transaction>BankTransaction</Transaction> <StandardVersion>2.001</StandardVersion> <SourceApplication>GEMCO</SourceApplication> <CompanyId>40</CompanyId> <BranchId>1</BranchId> <Product name="GEMCO" version="2.001" /> <GeneratedOn>06/08/2018 14:54:15</GeneratedOn> <DeliveryType>Async</DeliveryType> </MessageInformation><BusinessMessage><BusinessEvent><Entity>BankTransaction</Entity><Event>Upsert</Event><Identification><Key Name="InternalId">40|1|2|1|1|06/08/2018 00:00:00|1|1</Key></Identification></BusinessEvent><BusinessContent><CompanyId>40</CompanyId><BranchId>1</BranchId><InternalId>40|1|2|1|1|06/08/2018 00:00:00|1|1</InternalId><MovementDate>2018-08-06T00:00:00</MovementDate><EntryValue>53.00</EntryValue><MovementType>1</MovementType><DocumentNumber></DocumentNumber><FinancialCode>SANGRIA</FinancialCode><BatchNumber></BatchNumber><ApportionmentDistribution><DebitAccount></DebitAccount><CostCenterCode></CostCenterCode></ApportionmentDistribution><BankInternalId>40|1|1</BankInternalId><Agency>.</Agency><NumberAccount>.</NumberAccount><CurrencyType>4</CurrencyType><OriginalBranchId>1</OriginalBranchId><OperationType>4</OperationType></BusinessContent></BusinessMessage></TOTVSMessage>]]></MessageContent></ReceivedMessage><ProcessingInformation><ProcessedOn>2018-08-06T17:55:08Z</ProcessedOn><Status>ok</Status></ProcessingInformation><ReturnContent><ListOfInternalId><InternalId><Name>BankTransaction</Name><Origin>40|1|2|1|1|06/08/2018 00:00:00|1|1</Origin><Destination>40|0101|0000000035</Destination></InternalId></ListOfInternalId></ReturnContent></ResponseMessage></TOTVSMessage></inMsg>
</receiveMessage>
</soap:Body>
</soap:Envelope>
Modelo de Json de retorno
{
"data": false,
"httpStatusCode": 200,
"notifications": [],
"success": true
}