Documentação Geral
Vale a pena relembrar
- Após o retorno da chamada o TaaS vai indicar qual foi o perfil determinado na tag “genericInfo” conforme exemplo.
- Para verificar se o perfil utilizado foi determinado corretamente conforme os parâmetros preenchidos na request, devemos verificar quais campos foram preenchidos na request e realizar um filtro com os campos recebidos na chamada, filtrar com o valor recebido e vazio conforme exemplo abaixo.
- Após o filtro se encontrada mais de 1 linha, prevalece a linha com mais condições preenchidas.
- TaaS will indicate which profile was determined in the “genericInfo” tag as per the example.
- To check whether the profile used was correctly determined according to the parameters filled in the request, we must check which fields were filled in the request and perform a filter with the fields received in the request, filtering with the value received and empty as per the example below.
- After the filter, if more than 1 line is found, the line with the most fulfilled conditions prevails.
Vale a pena relembrar
API
API de Semelhantes
Interessados: Comercial, Delivery, Tax Support, Produtos
Por Carlos Cornejo
A API de Semelhantes tem a função de realizar a consulta de semelhantes ativos e semelhantes que já foram excluídos, além de vincular novos materiais semelhantes e desvincular os que já estão cadastrados.
Existem 3 endpoint’s que contemplam a API de Semelhantes. São eles:
- Consulta de materiais semelhantes (ativos ou excluídos): https://wscockpit.systax.com.br/api/api/material_Semelhante/auth
- Vinculação de materiais semelhantes: https://wscockpit.systax.com.br/api/api/material_Semelhante/vincular
- Desvinculação de materiais semelhantes: https://wscockpit.systax.com.br/api//api/material_Semelhante/desvincular
A Autenticação da API é feita através de Token, que gera um código através das credenciais informadas pelo cliente. O Token gerado tem um tempo de vida de 60 minutos, ou seja após esse tempo é necessário gerar um novo código.
A geração do Token é feita através do seguinte endpoint:
- https://app.systax.com.br/auth/access-token
Consulta de materiais semelhantes (ativos ou excluídos)
Esse endpoint tem o objetivo de consultar materiais semelhantes, sejam eles ativos ou excluídos.
Os campos que compõe que a chamada a API são:
Campo |
|
Descrição |
Tipo |
mas_cod_prod |
|
Código do semelhante. Iniciar a sequência de requisições pelo menor código de semelhante, por exemplo, 0. |
Caracteres alfa numéricos |
mas_origem |
|
Origem do semelhante. Iniciar a sequência de requisições pelo menor código de origem, por exemplo, 0. |
Caracteres alfa numéricos |
retornar_excluidos |
|
Caso "false" será retornado apenas os semelhantes ativos. Caso "true" será retornado apenas os semelhantes excluídos. |
true ou false |
paginacao |
|
Quantidade de registros retornados por requisição com um limite de 100. |
Caracteres alfa numéricos |
ponteiro_atualizacao |
|
Controle do envio de registros novos, modificados e excluídos. |
Caracteres alfa numéricos |
Paginação: A paginação possui um limite de 100 registros para retornar por requisição e caso esse limite seja atingido, para que retorne o restante dos registros é necessário informar o último mas_cod_prod do retorno da requisição e o último mas_origem do retorno da requisição.
Ponteiro de atualização: Esse parâmetro garante o retorno somente dos registros novos, alterados ou excluídos a partir de uma determinada data e hora. A máscara utilizada é: aaaammddhhmmss. O valor desse campo deve ser armazenado para requisições de atualizações, evitando assim, o envio do cadastro todo.
Os campos que compõe o retorno da API são:
Campo |
Descrição |
Tipo |
total_registro |
Quantidade de registros retornados |
Número |
cod_prod |
Código do produto original |
Caracteres alfa numéricos |
mat_origem |
Origem do produto original |
Caracteres alfa numéricos |
mas_cod_prod |
Código do semelhante |
Caracteres alfa numéricos |
mas_origem |
Origem do semelhante |
Caracteres alfa numéricos |
mas_desc |
Descrição do semelhante |
Caracteres alfa numéricos |
mas_dt_incl |
Data de criação do semelhante |
Caracteres alfa numéricos |
usu_nome |
Usuário responsável pela criação do semelhante |
Caracteres alfa numéricos |
excluido |
Caso "true" o semelhante está excluído. Caso "false" o semelhante encontra-se ativo. |
true ou false |
cod_status |
Código de retorno da requisição |
Caracteres alfa numéricos |
msg_status |
Mensagem de retorno da requisição |
Caracteres alfa numéricos |
ponteiro_atualizacao |
Armazena a data e hora da requisição com a máscara: aaaammddhhmmss |
Caracteres alfa numéricos |
Os códigos que informam o status da requisição são:
cod_status |
msg_status |
0 |
Retorno com sucesso |
10 |
Ocorreu uma falha na aplicação |
401 |
Token inválido ou expirado |
Para facilitar o uso da API, seguem exemplos de chamada a serem utilizadas:
Retornar semelhantes ativos
{
"mas_cod_prod": "1234",
"mas_origem": "0",
"retornar_excluidos": false,
"paginacao": 100,
"ponteiro_atualizacao": "0"
}
Retornar semelhantes excluídos
{
"mas_cod_prod": "1234",
"mas_origem": "0",
"retornar_excluidos": true,
"paginacao": 100,
"ponteiro_atualizacao": "0"
}
Retornar os semelhantes ativos ou excluídos a partir de uma data específica, utilizando o ponteiro de atualização. Ex: 01/01/2024 00:00:00
"mas_cod_prod": "1234",
"mas_origem": "0",
"retornar_excluidos": false,
"paginacao": 100,
"ponteiro_atualizacao": "20240101000000"
}
Deixamos também exemplos de retornos:
Retorno de semelhantes ativos:
{
"total_registro": 2,
"material_Semelhantes": [
{
"cod_prod": "1234",
"mat_origem": "0",
"mas_cod_prod": "0202020202",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T14:38:13.857",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "12345",
"mat_origem": "0",
"mas_cod_prod": "101010",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T13:57:52.047",
"usu_nome": "",
"excluido": false
}
],
"origem": "Systax",
"sistema": "Cockpit",
"status": {
"cod_status": 0,
"msg_status": "Retorno com sucesso. "
},
"ponteiro_atualizacao":"11111111111111"
}
Retorno de semelhantes excluídos:
{
"total_registro": 2,
"material_Semelhantes": [
{
"cod_prod": "1234",
"mat_origem": "0",
"mas_cod_prod": "000001",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T09:52:14",
"usu_nome": "",
"excluido": true
},
{
"cod_prod": "12345",
"mat_origem": "0",
"mas_cod_prod": "000001",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T20:48:57",
"usu_nome": "",
"excluido": true
}
],
"origem": "Systax",
"sistema": "Cockpit",
"status": {
"cod_status": 0,
"msg_status": "Retorno com sucesso. "
},
"ponteiro_atualizacao":"11111111111111"
}
Retorno dos semelhantes cadastrados a partir de data específica Ex: 01/01/2024 00:00:00
{
"total_registro": 6,
"material_Semelhantes": [
{
"cod_prod": "123",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T10:32:16.887",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "1234",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "1",
"mas_desc": "Descrição",
"mas_dt_incl": "2021-01-26T11:12:34.997",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "12345",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "2",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T11:24:14.637",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "123456",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "3",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T11:41:53.34",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "1234567",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "4",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T08:34:09",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "12345678",
"mat_origem": "0",
"mas_cod_prod": "S02",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T10:33:33.373",
"usu_nome": "",
"excluido": false
}
],
"origem": "Systax",
"sistema": "Cockpit",
"status": {
"cod_status": 0,
"msg_status": "Retorno com sucesso. "
},
"ponteiro_atualizacao": "11111111111111"
}
Vinculação ou Desvinculação de materiais semelhantes
Importante: o que diferencia se o sistema irá vincular ou desvincular o produto são os endpoint's utilizados, conforme indicado no começo da matéria.
Esse endpoint tem o objetivo de realizar a vinculação de materiais semelhantes.
Os campos que compõe que a chamada a API são:
Campo |
Descrição |
Tipo |
id |
Id de registro |
Número |
codProdutoOriginal |
Código do produto pai |
Caracteres alfa numéricos |
origemProdutoOriginal |
Origem do produto pai |
Número |
codProdutoSemelhante |
Código do produto semelhante |
Caracteres alfa numéricos |
origemProdutoSemelhante |
Origem do produto semelhante |
Número |
descricaoSemelhante |
Descrição do produto semelhante |
Caracteres alfa numéricos |
cean |
Cean do produto semelhante |
Caracteres alfa numéricos |
Os campos que compõe o retorno da API são:
Campo |
Descrição |
Tipo |
id |
Id de registro |
Número |
protocolo |
Código de rastreamento da ação realizada |
Caracteres alfa numéricos |
data |
Data em que foi feita a vincução/desvinculação |
Caracteres alfa numéricos |
cod |
Código de retorno |
Número |
message |
Mensagem de retorno da requisição |
Caracteres alfa numéricos |
Os códigos que informam o status da requisição são:
cod_status |
msg_status |
0 |
Retorno com sucesso |
10 |
Ocorreu uma falha na aplicação |
401 |
Token inválido ou expirado |
Para facilitar o uso da API, seguem exemplos de chamada a serem utilizadas:
{
"itens": [
{
"id": 0,
"codProdutoOriginal": "1234",
"origemProdutoOriginal": 0,
"codProdutoSemelhante": "Semelhante1",
"origemProdutoSemelhante": 0,
"descricaoSemelhante": "Semelhante1",
"cean": "7896411800346"
}
]
}
Deixamos também exemplos de retornos:
{
"itens": [
{
"id": 0,
"protocolo": 12345,
"data": "01/01/2024 15:41:13",
"cod": 0,
"message": "Solicitação realizada com sucesso"
}
]
}
Conclusão
A API de Materiais Semelhantes é de extrema importância, pois através dela a funcionalidade de vincular ou desvincular semelhantes ou até mesmo de realizar consultas, sendo eles ativos ou excluídos, pode ser feita de forma integrada.
TaaS
Como verificar se o TaaS realizou a determinação de perfil conforme esperado
Interessados: Outsourcing, Delivery, Tax Support, Comercial e Produtos
Por Pedro Silva
O TaaS recebe a chamada em formato oficial estabelecido pela SAP, converte no formato do Systax Tax Engine, que faz o cálculo e responde ao TaaS, que traduz também o resultado na linguagem SAP e retorna para o ERP.
Para o TaaS converter a request no formato aceito pelo Systax Tax Engine, é utilizada a tabela de determinação de perfil para montar a chamada enviando o perfil que deve ser considerado para realizar o cálculo.
No retorno da chamada, o TaaS vai indicar na tag "genericInfo" qual foi o perfil determinado conforme os parâmetros da chamada.
Como verificar se o perfil foi determinado de forma correta?
URL da documentação:
https://documentacao.systax.com.br/PublicView2/Index/da1301de1af6ec76d779ab9c0/64046
Worth remembering
API
API Similar
Interested teams: Commercial, Delivery, Tax Support and Products
By Carlos Cornejo
The API Similar has the function of querying active similar materials and similar materials that have been already deleted, in addition to linking new similar materials and unlinking those that has been already registered.
We have 3 endpoints for this API , find below:
- Querying similar materials (active or deleted): https://wscockpit.systax.com.br/api/api/material_Semelhante/auth
- Linking similar materials: https://wscockpit.systax.com.br/api/api/material_Semelhante/vincular
- Unlinking from similar materials: https://wscockpit.systax.com.br/api//api/material_Semelhante/desvincular
The API Authentication is done via Token, a code is generated using the credentials provided by the client. The token has a lifetime of 60 minutes, after that you will have to generate another token.
Token generation is done through the following endpoint:
- https://app.systax.com.br/auth/access-token
Querying similar materials (active or deleted)
This endpoint aims to query similar materials, whether active or deleted.
Find below the fileds used in the request:
Field |
|
Description |
Type |
mas_cod_prod |
|
Similar code. Start the sequence of requests with the lowest similar code, for example, 0. |
Alpha numeric characters |
mas_origem |
|
Origin of similar. Start the sequence of requests with the lowest source code, for example, 0. |
Alpha numeric characters |
retornar_excluidos |
|
If "false" only similar active ones will be returned. If "true" only excluded similar ones will be returned. |
true or false |
paginacao |
|
Number of records returned per request with a limit of 100. |
Alpha numeric characters |
ponteiro_atualizacao |
|
Control of sending new, modified, and deleted records. |
Alpha numeric characters |
Pagination: Pagination has a limit of 100 records to return per request and if this limit is reached, in order to return the rest of the records it is necessary to perform another request using the last mas_cod_prod and mas_origin of the request return.
Update pointer: This parameter guarantees the return of only new, changed or deleted records as of a certain date and time. The mask used is: yyyymmddhhmmss. The value of this field must be stored for update requests, avoiding sending the entire record.
Find below the fileds used in the response:
Field |
Description |
Type |
total_registro |
Number of records returned |
Numbers |
cod_prod |
Original product code |
Alpha numeric characters |
mat_origem |
Origin of the original product |
Alpha numeric characters |
mas_cod_prod |
Similar code |
Alpha numeric characters |
mas_origem |
Origin of similar |
Alpha numeric characters |
mas_desc |
Description of the similar |
Alpha numeric characters |
mas_dt_incl |
Similar creation date |
Alpha numeric characters |
usu_nome |
User responsible for creating the similar |
Alpha numeric characters |
excluido |
If "true" the similar is excluded. If "false", the similar is active. |
true or false |
cod_status |
Request return code |
Alpha numeric characters |
msg_status |
Request return message |
Alpha numeric characters |
ponteiro_atualizacao |
Stores the date and time of the request with the mask: yyyymmddhhmmss |
Alpha numeric characters |
Find below the codes that inform the status of the request:
cod_status |
msg_status |
0 |
Return successfully |
10 |
Application failure |
401 |
Invalid or expired token |
In order to help with the API, find below some request’s examples:
Return similar assets
{
"mas_cod_prod": "1234",
"mas_origem": "0",
"retornar_excluidos": false,
"paginacao": 100,
"ponteiro_atualizacao": "0"
}
Return deleted similars
{
"mas_cod_prod": "1234",
"mas_origem": "0",
"retornar_excluidos": true,
"paginacao": 100,
"ponteiro_atualizacao": "0"
}
Return active or deleted similars as of a specific date using the update pointer. Ex: 01/01/2024 00:00:00
"mas_cod_prod": "1234",
"mas_origem": "0",
"retornar_excluidos": false,
"paginacao": 100,
"ponteiro_atualizacao": "20240101000000"
}
Find below some response’s examples:
Response of similar assets:
{
"total_registro": 2,
"material_Semelhantes": [
{
"cod_prod": "1234",
"mat_origem": "0",
"mas_cod_prod": "0202020202",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T14:38:13.857",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "12345",
"mat_origem": "0",
"mas_cod_prod": "101010",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T13:57:52.047",
"usu_nome": "",
"excluido": false
}
],
"origem": "Systax",
"sistema": "Cockpit",
"status": {
"cod_status": 0,
"msg_status": "Retorno com sucesso. "
},
"ponteiro_atualizacao":"11111111111111"
}
Response of deleted similars:
{
"total_registro": 2,
"material_Semelhantes": [
{
"cod_prod": "1234",
"mat_origem": "0",
"mas_cod_prod": "000001",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T09:52:14",
"usu_nome": "",
"excluido": true
},
{
"cod_prod": "12345",
"mat_origem": "0",
"mas_cod_prod": "000001",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T20:48:57",
"usu_nome": "",
"excluido": true
}
],
"origem": "Systax",
"sistema": "Cockpit",
"status": {
"cod_status": 0,
"msg_status": "Retorno com sucesso. "
},
"ponteiro_atualizacao":"11111111111111"
}
Response of similar registered from a specific date Ex: 01/01/2024 00:00:00
{
"total_registro": 6,
"material_Semelhantes": [
{
"cod_prod": "123",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T10:32:16.887",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "1234",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "1",
"mas_desc": "Descrição",
"mas_dt_incl": "2021-01-26T11:12:34.997",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "12345",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "2",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T11:24:14.637",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "123456",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "3",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T11:41:53.34",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "1234567",
"mat_origem": "0",
"mas_cod_prod": "S01",
"mas_origem": "4",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T08:34:09",
"usu_nome": "",
"excluido": false
},
{
"cod_prod": "12345678",
"mat_origem": "0",
"mas_cod_prod": "S02",
"mas_origem": "0",
"mas_desc": "Descrição",
"mas_dt_incl": "2024-01-01T10:33:33.373",
"usu_nome": "",
"excluido": false
}
],
"origem": "Systax",
"sistema": "Cockpit",
"status": {
"cod_status": 0,
"msg_status": "Retorno com sucesso. "
},
"ponteiro_atualizacao": "11111111111111"
}
Linking or Unlinking similar materials
Important: each endpoint has its own function as indicated at the beginning of the article, always check if you are using the correct endpoint.
This endpoint aims to link similar materials.
Find below the fileds used in the request:
Filed |
Description |
Type |
id |
Registration ID |
Numbers |
codProdutoOriginal |
Parent product code |
Alpha numeric characters |
origemProdutoOriginal |
Origin of the parent product (Origin Table Code: 0 to 8) |
Numbers |
codProdutoSemelhante |
Similar product code |
Alpha numeric characters |
origemProdutoSemelhante |
Similar product origin (Origin Table Code: 0 to 8) |
Numbers |
descricaoSemelhante |
Similar Product Description |
Alpha numeric characters |
cean |
Cean of similar product (Numbers only and up to 15 digits) |
Alpha numeric characters |
Find below the fileds used in the response:
Campo |
Descrição |
Tipo |
id |
Registration ID |
Numbers |
protocolo |
Tracking code for the action taken |
Alpha numeric characters |
data |
Date on which the link/unlink was made |
Alpha numeric characters |
cod |
Return code (Descriptions in code table below) |
Numbers |
message |
Request return message |
Alpha numeric characters |
Find below the codes that inform the status of the request:
cod_status |
msg_status |
0 |
Retorno com sucesso |
10 |
Ocorreu uma falha na aplicação |
401 |
Token inválido ou expirado |
In order to help with the API, find below some request’s examples:
{
"itens": [
{
"id": 0,
"codProdutoOriginal": "1234",
"origemProdutoOriginal": 0,
"codProdutoSemelhante": "Semelhante1",
"origemProdutoSemelhante": 0,
"descricaoSemelhante": "Semelhante1",
"cean": "7896411800346"
}
]
}
Find below the response:
{
"itens": [
{
"id": 0,
"protocolo": 12345,
"data": "01/01/2024 15:41:13",
"cod": 0,
"message": "Solicitação realizada com sucesso"
}
]
}
Conclusion
The API Similiar is extremely important, as through it the functionality of linking or unlinking similar materials or even carrying out queries, whether they are active or excluded, can be done in an integrated manner.
TaaS
How to verify that TaaS performed profile determination as expected
Interested teams: Outsourcing, Delivery, Tax Support, Commercial e Products
By Pedro Silva
TaaS receives the request in the official format established by SAP, converts it into the Systax Tax Engine format, which performs the calculation and responds to TaaS, after that TaaS translates the result into SAP language and returns it to the ERP.
To convert the request into the format accepted by the Systax Tax Engine, we have a profile determination table that it is used to assemble the call sending the profile that must be considered to perform the calculation.
When returning the call, TaaS will indicate in the "genericInfo" tag which profile was determined according to the request parameters.
How to check if the profile was done correctly?
Documentation URL:
https://documentacao.systax.com.br/PublicView2/Index/da1301de1af6ec76d779ab9c0/64046
Versão do documento: 58 | Publicação: 4/25/2024 |