Árvore de páginas

Versões comparadas

Chave

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

...

Data alteração       Motivo O que mudou?   AprovadoresVersão
31/01/2025Padronização dos contratosContrato de retorno dos itens 4.1, 4.2, 4.5
v3


       2. O que fazer?

Desenvolver integração para consulta e utilização de limite de crédito com a retaguarda

...

Campo

Tipo

Descrição

Tipo Parâmetro

Obrigatório

Observação

IdInquilinostringIdentificador do InquilinoParameter/Path/Query Params*Sim

*Usado apenas pelo PDV.

Retaguarda não precisa criar API com esse parâmetro, pois o Sync já irá direcionar para o IP correto.

IdRetaguardaLojastringIdentificador da loja na retaguarda

Parameter/Path/Query Params

Sim

No H1, o idRetaguardaLoja não será validado no Winthor

cpfCnpjstringDocumento do cliente

Header

Sim


...

Campo

Tipo

Descrição

Obrigatório

Observação

successboolIndica se a consulta de limite de crédito ocorreu corretamenteSimExemplo: Se o cliente não foi encontrado, deve ser retornado "false", pois a partir disso o PDV sabe que não haverá objeto de limite de crédito para exibir e sim apenas a mensagem justificando a ausência efetiva do limite de crédito.
messagestringMensagem de retorno de errosNãoSempre que possível em caso de erro justificar o erro nesse campo.
detailedmessagedatastringLista Mensagem detalhada de objetoserrosLista padrão SimNãoEm caso de erro detalhar o erro nesse campo.
errors
Erros de execução API syncNãoUso PDVSync
numberOfRecordsdoubleNumero de registros NãoUso PDVSync
totalTimetimeTempo de processamento APINãoUso PDVSync
dataLista de objetosLista padrão Sim
data.saldoDisponivelsaldoDisponiveldoubleSaldo do crédito disponívelNãoDeve ser enviado sempre que houver retorno de true no atributo "success".
data.idRetaguardaLimiteCreditostringIdentificador do limite de crédito caso existaNão

...

{
    "data": [
        {
            "idRetaguardaLimiteCredito": null,
            "saldosaldoDisponivel": 1000.0
        }
    ],
    "detailedMessage": null,
    "errors": null,
    "message": "",
    "numberOfRecords": 0,
    "success": true,
    "totalTime": 0
}

...

Erro:

{
    "success": false,
      "message": "Cliente com XPTO não encontrado na base de dados da retaguarda",
    "datadetailedmessage": null"",
    "errorsdata": null,
    "totalTimeerrors": null,
    "totalTime": 0,
    "numberOfRecords": 0
}

...

Lista objetos

Campo

Tipo

Descrição

Obrigatório

Observação

successboolIndica se a consulta de limite de crédito ocorreu corretamenteSimExemplo: Se o cliente não foi encontrado, deve ser retornado "false", pois a partir disso o PDV sabe que não haverá objeto de limite de crédito para exibir e sim apenas a mensagem justificando a ausência efetiva do limite de crédito.
messagestringMensagem de retorno de erros(Retaguarda)NãoSempre que possível em caso de erro justificar o erro nesse campo.data
errors

Erros de
execução API syncNãoUso PDVSync
numberOfRecordsdoubleNumero de registros NãoUso PDVSync
totalTimetimeTempo de processamento APINãoUso PDVSync
detailedmessagestringMensagem detalhada de erros(Retaguarda)NãoEm caso de erro detalhar o erro nesse campo.
dataLista de objetosLista padrão Sim
data.saldoDisponiveldoubleSaldo do crédito disponívelSimCaso o ERP não encontre nenhum registro de limite de crédito para o cliente, deve retornar saldo disponível igual a zero.
data.idRetaguardaLimiteCreditostringIdentificador do limite de crédito caso existaNão
data.valorUtilizadodoubleValor já consumido do limite de créditoSim
data.valorTotaldoubleValor total do limite de créditoSimEsse valor é composto pela somatória do valorUtilizado e o saldoDisponivel.
data.detalhesValorUtilizadoLista de objetosLista de detalhamento da composição do limite de crédito já utilizado.Não
Lista padrão Sim
saldoDisponiveldoubleSaldo do crédito disponívelSimCaso o ERP não encontre nenhum registro de limite de crédito para o cliente, deve retornar saldo disponível igual a zero.
idRetaguardaLimiteCreditostringIdentificador do limite de crédito caso existaNãovalorUtilizadodoubleValor já consumido do limite de créditoSim
valorTotaldoubleValor total do limite de créditoSimEsse valor é composto pela somatória do valorUtilizado e o saldoDisponivel.
detalhesValorUtilizadoLista de objetosLista de detalhamento da composição do limite de crédito já utilizado.Não
  • Deve ser preenchido caso o atributo  "valorUtilizado" seja maior que zero.
    • Deve ser preenchido com ao menos um item no objeto.
detalhesValorUtilizado.totaldoubleValor total já utilizado.Sim
  • Obrigatoriedade do objeto detalhesValorUtilizado 
  • Deve ser preenchido caso o atributo  "valorUtilizado" seja maior que zero.
detalhesValorUtilizado.tipostringTipo da origem de utilização do crédito.SimObrigatoriedade do objeto detalhesValorUtilizado 
  • Deve ser preenchido caso o atributo  "valorUtilizado" seja maior que zero.
    • Deve ser preenchido com ao menos um item no objeto.

Exemplos

Sucesso:

data.detalhesValorUtilizado.totaldoubleValor total já utilizado.Sim
  • Obrigatoriedade do objeto detalhesValorUtilizado 
  • Deve ser preenchido caso o atributo  "valorUtilizado" seja maior que zero.
data.detalhesValorUtilizado.tipostringTipo da origem de utilização do crédito.Sim
  • Obrigatoriedade do objeto detalhesValorUtilizado 
  • Deve ser preenchido caso o atributo  "valorUtilizado" seja maior que zero.

Exemplos

Sucesso:

{
  "success": true,
  "message": "",
    "detailedMessage": null,
    "data": [
        {{
  "success": true,
  "message": "",
    "detailedMessage": null,
    "data": [
        {
            "saldoDisponivel": 800.0,
            "idRetaguardaLimiteCredito": "01PSH00000005033CR",
            "valorUtilizado": 264.0,
            "valorTotalsaldoDisponivel": 372800.0,
            "idRetaguardaLimiteCredito": "01PSH00000005033CR",
            "valorUtilizado": 264.0,
            "valorTotal": 372.0,
            "detalhesValorUtilizado": [
                {
                    "total": 532.0,
                    "tipo": "credito total"
                }
            ]
        }
    ],
    "errors": null,
    "totalTime": 0,
    "numberOfRecords": 0
}Erro:

Bloco de código
languagesql
idRetaguardaLimiteCredito será o codcli concatenado com o termo 'LIMCRED'

 "idRetaguardaLimiteCredito": "193489-LIMCRED", 


Erro:

{
  "success": false,
  "message": {
  "success": false,
  "message": "Não foi possível encontrar limite de crédito para o cliente selecionado.",
  "detailedmessage": "",
  "data": null,
    "errors": null,
    "totalTime": 0,
    "numberOfRecords": 0
}



4.3 Contrato descida de dado forma de pagamento

...

Campo

Tipo

Descrição

Tipo Parâmetro

Obrigatório

Observação

IdInquilinostringIdentificador do InquilinoParameter/Path/Query Params*Sim

*Usado apenas pelo PDV.

Retaguarda não precisa criar API com esse parâmetro, pois o Sync já irá direcionar para o IP correto.

IdRetaguardaLojastringIdentificador da loja na retaguarda

Parameter/Path/Query Params

Sim

cpfCnpjstringDocumento do cliente

Header

Sim

limitePagamentoFormaboolIndica se a solicitação de limite de crédito deve ser retornada por tipo de forma de pagamento ou não.

Header

Não

Caso o parâmetro não seja enviado, o default desse parâmetro será false.

Caso seja true, o retorno da retaguarda será de limite de crédito por tipo  de forma de pagamento.

Response:

retaguarda

Parameter/Path/Query Params

Sim


cpfCnpjstringDocumento do cliente

Header

Sim


limitePagamentoFormaboolIndica se a solicitação de limite de crédito deve ser retornada por tipo de forma de pagamento ou não.

Header

Não

Caso o parâmetro não seja enviado, o default desse parâmetro será false.

Caso seja true, o retorno da retaguarda será de limite de crédito por tipo  de forma de pagamento.


Response:

NãoSempre que possível em caso de erro justificar

Campo

Tipo

Descrição

Obrigatório

Observação

Campo

Tipo

Descrição

Obrigatório

Observação

successboolIndica se a consulta de limite de crédito ocorreu corretamenteSimExemplo: Se o cliente não foi encontrado, deve ser retornado "false", pois a partir disso o PDV sabe que não haverá objeto de limite de crédito para exibir e sim apenas a mensagem justificando a ausência efetiva do limite de crédito.
messagestringMensagem de retorno de errosNãoSempre que possível em caso de erro justificar o erro nesse campo.
dataLista de objetosLista padrão Sim
saldoDisponiveldoubleSaldo do crédito disponívelNãoDeve ser enviado sempre que houver retorno de true no atributo "success".
idRetaguardaLimiteCreditostringIdentificador do limite de crédito caso exista

successboolIndica se a consulta de limite de crédito ocorreu corretamenteSimExemplo: Se o cliente não foi encontrado, deve ser retornado "false", pois a partir disso o PDV sabe que não haverá objeto de limite de crédito para exibir e sim apenas a mensagem justificando a ausência efetiva do limite de crédito.messagestringMensagem de retorno de errosNãosim apenas a mensagem justificando a ausência efetiva do limite de crédito.
messagestringMensagem de retorno de errosNãoSempre que possível em caso de erro justificar o erro nesse campo.
errors
Erros de execução API syncNãoUso PDVSync
numberOfRecordsdoubleNumero de registros NãoUso PDVSync
totalTimetimeTempo de processamento APINãoUso PDVSync
detailedmessagestringMensagem detalhada de erros(Retaguarda)NãoEm caso de erro detalhar o erro nesse campo.
dataLista de objetosLista padrão Sim
data.saldoDisponiveldoubleSaldo do crédito disponívelNãoDeve ser enviado sempre que houver retorno de true no atributo "success".
data.idRetaguardaLimiteCreditostringIdentificador do limite de crédito caso existaNão
data.saldoDetalhadoFormaPagamentoLista de objetosLista com os limites de créditos retornados por forma de pagamentoNãoDeve ser enviado sempre que for solicitada na requisição  no atributo o atributo "limitePgamentoForma" como true e o valor do saldo for maior que zero.
data.saldoDetalhadoFormaPagamento.valordoubleValor por forma de pagamento do limite de créditoSimDeve ser enviado sempre que for solicitada na requisição  no atributo o atributo "limitePgamentoForma" como true e o valor do saldo for maior que zero.
data.saldoDetalhadoFormaPagamento.idRetaguardaPagamentoFormastringidRetaguarda relacionado ao tipo de forma de pagamento disponível para o limite de crédito.Sim
  • Deve ser enviado sempre que for solicitada na requisição  no atributo o atributo "limitePgamentoForma" como true e o valor do saldo for maior que zero.
  • O idRetaguarda enviado nesse campo deve ser o mesmo enviado na carga de pagamento forma.

...

{
    "data": [
        {
            "idRetaguardaLimiteCredito": null,
            "saldosaldoDisponivel": 1000.0,
            "saldoDetalhadoFormaPagamento": [
                {
                    "idRetaguardaPagamentoForma": "BL",
                    "valor": 500.0
                },
                {
                    "idRetaguardaPagamentoForma": "CH",
                    "valor": 500.0
                }
            ]
        }
    ],
    "detailedMessage": null,
    "errors": null,
    "message": "",
    "numberOfRecords": 0,
    "success": true,
    "totalTime": 0
}

...

{
    "success": false,
    "message": "Cliente com XPTO não encontrado na base de dados da retaguarda",
    "detailedMessage": null,
    "data": null,
    "errors": null,
    "totalTime": 0,
    "numberOfRecords": 0
}

...

Campo

Tipo

Descrição

Tipo Parâmetro

Obrigatório

Observação

IdInquilinostringIdentificador do InquilinoParameter/Path/Query Params*Sim

*Usado apenas pelo PDV.

Retaguarda não precisa criar API com esse parâmetro, pois o Sync já irá direcionar para o IP correto.

IdRetaguardaLojastringIdentificador da loja na retaguarda

Parameter/Path/Query Params

Sim


cpfCnpjstringDocumento do cliente

Header

Sim


limitePgamentoFormalimitePagamentoFormaboolIndica se a solicitação de limite de crédito deve ser retornada por tipo de forma de pagamento ou não.

Header

Não

Caso o parâmetro não seja enviado, o default desse parâmetro será false.

Caso seja true, o retorno da retaguarda será de limite de crédito por tipo  de forma de pagamento.

...