ProtheusClientePadrao (STATUS: REVISADO)
Documentação Técnica
| Nome do cliente | OSKLEN |
| Nome do projeto | Integração LINX → Protheus |
| Biblioteca | wosk_protheus_cliente_padrao |
| Data | 26/02/2026 |
Histórico de Versões
| Data | Versão | Modificado por | Descrição da Mudança |
| 26/02/2026 | 1.0 | Maykon/Gustavo | Criação da documentação técnica do processo ProtheusClientePadrao. |
Descrição
Este serviço organiza a integração de cadastros de clientes (padrão) do LINX para o Protheus, garantindo que cada cliente seja identificado, preparado e encaminhado para envio.
Capturador
Permite a captura manual de um ou mais clientes específicos mediante a informação das chaves, com validação obrigatória do formato no padrão A1_LOJA-A1_COD. Caso a chave informada esteja fora do padrão, o processo é imediatamente interrompido com erro de chave inválida, garantindo integridade e previsibilidade no fluxo.
Permite a captura automática (via agendador de tarefas) a origem dos dados é a view WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_PADRAO, consultada com projeção predefinida, sendo o filtro por loja (A1_LOJA) e código (A1_COD) aplicado dinamicamente durante a execução. Para cada registro localizado, o conteúdo é encaminhado para a fila de processamento, onde será transformado e posteriormente enviado ao Protheus, mantendo o mesmo padrão de chave para identificação e rastreabilidade do registro na fila.
Fonte
A entrada é obtida por consulta na view WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_PADRAO.
Consulta principal (filtro por A1_LOJA e A1_COD):
SELECT
A1_COD,
A1_LOJA,
CGC_CPF,
NOME,
PESSOA,
NOME_REDUZ,
ENDERECO,
BAIRRO,
COMPLEMENTO,
TIPO,
UF,
COD_MUNICIPIO_IBGE,
CEP,
DDI,
DDD,
TELEFONE,
CONTATO,
A1_PFISICA,
A1_INSCR,
INSC_MUNICIPAL,
DATA_NASC,
EMAIL,
COD_PAIS_SISCOMEX,
COD_PAIS_BC,
A1_CONTA,
A1_CONTRIB,
A1_TPESSOA,
A1_SUFRAMA,
A1_CALCSUF,
A1_CODMUN,
STATUS,
DATA_PARA_TRANSFERENCIA
FROM
WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_PADRAO
WHERE
A1_LOJA = '<A1_LOJA>'
AND A1_COD = '<A1_COD>'
Operações com Dados
Leitura: Consulta da view WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_FULL.
Validação (captura manual): exige chave no padrão A1_LOJA-A1_COD; em formato inválido, o processo é interrompido com erro de chave inválida.
Persistência: Grava itens pendentes na Fila de Processamento, com chave A1_LOJA-A1_COD.
Fila de Processamento
A fila recupera um registro pendente e utiliza o conteúdo do registro como base do payload de integração. Em seguida, aplica transformações obrigatórias de padronização e realiza a chamada ao Protheus.
Estruturação de Dados
| Campo no payload | Origem no conteúdo do cliente |
A1_COD |
A1_COD |
A1_LOJA |
A1_LOJA |
A1_CGC |
CGC_CPF |
A1_NOME |
NOME |
A1_PESSOA |
PESSOA |
A1_NREDUZ |
NOME_REDUZ |
A1_END |
ENDERECO |
A1_BAIRRO |
BAIRRO |
A1_COMPLEM |
COMPLEMENTO |
A1_TIPO |
TIPO |
A1_EST |
UF |
A1_COD_MUN |
COD_MUNICIPIO_IBGE |
A1_CEP |
CEP |
A1_DDI |
DDI |
A1_DDD |
DDD |
A1_TEL |
TELEFONE |
A1_CONTATO |
CONTATO |
A1_PFISICA |
A1_PFISICA |
A1_INSCR |
A1_INSCR |
A1_INSCRM |
INSC_MUNICIPAL |
A1_DTNASC |
DATA_NASC |
A1_EMAIL |
EMAIL |
A1_PAIS |
COD_PAIS_SISCOMEX |
A1_CODPAIS |
COD_PAIS_BC |
A1_CONTA |
A1_CONTA |
A1_CONTRIB |
A1_CONTRIB |
A1_TPESSOA |
A1_TPESSOA |
A1_SUFRAMA |
A1_SUFRAMA |
A1_CALCSUF |
A1_CALCSUF |
A1_CODMUN |
A1_CODMUN |
A1_MSBLQL |
STATUS |
Tratamento de Dados
Transformações aplicadas no payload antes do envio:
A1_NOME,A1_NREDUZ: remove o caractere|e aplica remoção de acentos.A1_END,A1_BAIRRO,A1_BAIRRO: aplica remoção de acentos.A1_CODPAIS: converte para inteiro e padroniza com 5 dígitos, preenchendo com zeros à esquerda (ex.:1058→01058).
Integração com o Protheus
- Chamada:
Requisição HTTP - Recurso:
/rest/cliente - Método HTTP:
POST - Cabeçalhos:
- tenantId:
01,01SD0001
- tenantId:
Exemplo de payload enviado (JSON):
{
"A1_COD": "000001",
"A1_LOJA": "01",
"A1_CGC": "00000000000000",
"A1_NOME": "NOME DO CLIENTE",
"A1_PESSOA": "F",
"A1_NREDUZ": "NOME REDUZIDO",
"A1_END": "RUA EXEMPLO 123",
"A1_BAIRRO": "CENTRO",
"A1_COMPLEM": "APTO 101",
"A1_TIPO": "N",
"A1_EST": "SP",
"A1_COD_MUN": "3550308",
"A1_CEP": "01000000",
"A1_DDI": "55",
"A1_DDD": "11",
"A1_TEL": "999999999",
"A1_CONTATO": "CONTATO",
"A1_PFISICA": "1",
"A1_INSCR": "",
"A1_INSCRM": "",
"A1_DTNASC": "1980-01-01",
"A1_EMAIL": "cliente@exemplo.com",
"A1_PAIS": "1058",
"A1_CODPAIS": "01058",
"A1_CONTA": "",
"A1_CONTRIB": "",
"A1_TPESSOA": "",
"A1_SUFRAMA": "",
"A1_CALCSUF": "",
"A1_CODMUN": "",
"A1_MSBLQL": "N"
}
Tratamento de retorno
Ausência de resposta: Se não houver retorno, o item é finalizado com erro e a mensagem indica falta de resposta.
Resposta inválida/inesperada: Se o retorno não for um objeto com o campo Mensagem, o item é finalizado com erro e a mensagem indica falha na decodificação.
Falha: Quando o retorno traz Mensagem igual a ERRO ou quando existe o campo code, o item é marcado como erro.
Sucesso: Quando não há indicador de erro, o processo registra o cliente como integrado e grava o retorno na fila.
Rotinas Inteligentes
setProtheusClienteIntegrado: Após confirmação de sucesso da integração, reinicia os processos que estão suspensos marcados com "ProtheusCliente" vinculados com o registro atual.
Descrição Conceitual
Encaminhamento em cenário de erro
Quando há erro no envio ou na validação da resposta, o regsitro é mantido na fila de processamento com situação de erro e mensagem correspondente, permitindo reprocessamento conforme as rotinas padrões de fila do integrador.
Notificação
Fluxo do Processo
Critérios de Aceitação
| Processo | Subprocesso | Descrição | Situação esperada |
| Capturador | Captura por chave | Ao informar uma chave válida no padrão A1_LOJA-A1_COD, deve consultar a view WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_PADRAO e registrar o item correspondente na fila de processamento. |
Item pendente registrado na fila, pronto para processamento, com chave consistente. |
| Fila de Processamento | Transformação e envio | Ao processar um registro pendente, deve estruturar o payload conforme estrutura definida, aplicar as transformações necessárias e chamar o recurso /rest/cliente no Protheus via POST com o cabeçalho tenantId. |
Fila atualizada com situação final e detalhes para auditoria; em sucesso, cliente marcado como integrado. |

Nenhum comentário