Páginas filhas
  • APIs Integrações - Planos de Pagamentos

Versões comparadas

Chave

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

...

Totvs custom tabs box
tabsDados integrados com Winthor, Envio Parâmetros, Resposta da Requisição, Principais dúvidas e conflitos
idspasso1,passo2,passo3,passo4

Este documento tem como objetivo explicar o funcionamento da api de consulta de planos de pagamentos (Rotina 523).

Totvs custom tabs box items
defaultyes
referenciapasso1

Os dados integrados são: 

pcplpag, PCPRODFILIAL

API

Referência Winthor

Obs

codigo

pcplpag.codplpag

Código do plano de pagamento (condição)

descricao

pcplpag.descricao 

Descrição

numColunaPreco

pcplpag.numpr

Indica qual coluna de preços do preço por região será usada

formaParcelamento

pcplpag.formaparcelamento

C - Customizado | T - Dia fixo

prazos[0]

pcplpag.prazo1


prazos[1]

pcplpag.prazo2


prazos[2]pcplpag.prazo3

prazos[3]

pcplpag.prazo4


prazos[4]

pcplpag.prazo5


prazos[5]

pcplpag.prazo6


prazos[6]

pcplpag.prazo7


prazos[7]

pcplpag.prazo8


prazos[8]

pcplpag.prazo9


prazos[9]pcplpag.prazo10
prazos[10]pcplpag.prazo11
prazos[11]
pcplpag.prazo12
codigoFilialpcplpag.codfilialNVL(codfilial,'99') 
tipoPrazo.siglapcplpag.tipoprazo  RESTRITO ("G", "Restrito"),
  BONIFICACAO ("B", "Bonificação"),
  NORMAL ("N", "Normal"),
  INATIVO ("I", "Inativo"),
  ATIVO ("A", "Ativo");
tipoPrazo.descricaopcplpag.tipoprazo  RESTRITO ("G", "Restrito"),
  BONIFICACAO ("B", "Bonificação"),
  NORMAL ("N", "Normal"),
  INATIVO ("I", "Inativo"),
  ATIVO ("A", "Ativo");
percentualAcrescimpcplpag.pertxfimPercentual de acréscimo ou desconto 
prazoMediopcplpag.numdiasPrazo médio (soma dos prazos dividido pela quantidade de prazos preenchidos)
descontarEntradapcplpag.descentlimcredcli
tipoEntrada.codigopcplpag.tipoentrada  IGUAL(1, "Igual"), 
  DIFERENTE(2, "Diferente"),
  SOLICITAR_ENTRADA(3, "Solicitar Entrada");
tipoEntrada.descriçaopcplpag.CONTROLANUMSERIEcontrolanumserie  IGUAL(1, "Igual"), 
  DIFERENTE(2, "Diferente"),
  SOLICITAR_ENTRADA(3, "Solicitar Entrada");
vendaBkpcplpag.vendabkUsa o plano com boleto
tipoVendapcplpag.tipovendaVV - Venda a vista | VP - Venda a prazo
quantidadeMinimaPedidopcplpag.numitensminimo
valorMinimoPedidopcplpag.vlminpedido
ativopcplpag.statusATIVO("A", "ATIVO"), 
ATIVO("I", "INATIVO");
numeroParcelaspcplpag.numparcelas
dataCriacaopcplpag.dtcadastro
dataUltimaAtualizacaopcplpag.dtultalter





Totvs custom tabs box items
defaultno
referenciapasso2

Exemplo do envio da requisição:

Bloco de código
languagejs
titleURI
method: 'GET',
url: '/winthor/venda/v0/planos-pagamentos?'
Bloco de código
languagejs
titleParams
pagina : 1								   			- número da página 
tamanho : 10										- quantidade por página  
dataUltimaAlteracao  : AAAA-MM-DDTHH:MM:SS      	- data de ultima alteração 
codfilial:											- código da filial 
codigoCobranca:        						    	- código de tipo de cobrança vinculada em Relacionamento Cobrança X Plano de pagamento, na rotina 522
codigoPlanoPagamento: 							 	- código do plano de pagamento



Totvs custom tabs box items
defaultno
referenciapasso3
Bloco de código
languagejs
themeEclipse
{
    "first": true,
    "items": [
        {
            "codigo": 81,
            "descricao": "PARCELAMENTO CUSTOMIZADO-MESMO INTERVALO",
            "numColunaPreco": 1,
            "formaParcelamento": "C",
            "prazos": [
                7,
                14,
                21,
                28,
                35,
                42,
                49,
                56,
                63,
                70,
                77,
                84
            ],
            "codigoFilial": "4",
            "tipoPrazo": {
                "sigla": "S",
                "descricao": "Não informado"
            },
            "percentualAcrescimo": 0,
            "prazoMedio": 45,
            "descontarEntrada": false,
            "tipoEntrada": {
                "codigo": 1,
                "descriçao": "Igual"
            },
            "vendaBk": false,
            "tipoVenda": "VP",
            "quantidadeMinimaPedido": 0,
            "valorMinimoPedido": 0,
            "ativo": true,
            "numeroParcelas": 0,
            "dataCriacao": "2023-07-31T17:57:10",
            "dataUltimaAtualizacao": "2023-08-01T08:58:52",
            "planoPagamentoIntegracaoExterna": {
                "solicitaDataPrimeiraParcela": false,
                "solicitaDataDemaisParcela": false,
                "diasEntreParcelas": 7,
                "prazoMaximoPrimeiraParcela": 7
            },
            "numDiasCartao": 0,
            "vendaVista": false
        }
    ],
 "hasNext": false
Totvs custom tabs box items
defaultno
referenciapasso4
Expandir
titleApresentou Status Code 404 Not Found ao enviar a requisição

Caso obtenha o conteúdo abaixo ao enviar a requisição, verifique na rotina 812 do WTA se os serviços winthor-tributacao e winthor-produto estão instalados. Caso não esteja, acesse a rotina 801 do WTA e realize a instalação

Bloco de código
languagejava
<html>
 
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <title>Error 404 Not Found</title>
</head>
 
<body>
    <h2>HTTP ERROR 404</h2>
    <p>Problem accessing /api/branch/v1/. Reason:
        <pre>    Not Found</pre>
    </p>
    <hr><a href="http://eclipse.org/jetty">Powered by Jetty:// 9.3.21.v20170918</a>
    <hr />
 
</body>
 
</html>

Expandir
titleInstalei o serviço e apresentou Status Code 403 Forbidden ao enviar a requisição

Caso apresente 403 Forbidden, verifique se realizou a autenticação antes do envio da requisição.

Bloco de código
languagejava
{
    "code": "UNK-ERR",
    "message": "Erro de Requisição",
    "detailedMessage": "The current Subject is not authenticated.  Access denied.",
    "details": []
}
Expandir
titleInstalei o serviço e não está retornando informações

Caso a lista retornada esteja vazia, verifique se os filtros que você informou estão coerentes com os registros de planos  cadastrados, e se há vinculo entre os planos e cobranças 

Bloco de código
languagejava
{
    "first": false,
    "items": [],
    "hasNext": false
}

...