Páginas filhas
  • APIs Integrações - Pedido

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Adicionado informações sobre percentual de IPI

...

  • Necessário a instalação do  serviço winthor-pedido-venda
  • Caso o atributo "seller" não seja enviado na requisição, a API consultará o RCA definido no parâmetro "4012 - Código do RCA para cadastro de clientes na Ciashop" da rotina 132- Parâmetros da Presidência.
  • A região padrão de preço deverá ser informada na opção 4257-CODREGIAOPRECOCIASHOP da rotina 132- Parâmetros da Presidência.
  • A precificação deverá ser realizada por Filial no parâmetro 2277 - Tipo de precificação selecionando o tipo de precificação conforme necessidade.
  • A tabela PCLOGPEDIDOAPI, é responsável por guardar os retornos dos pedidos importados via integração, sendo Operação (I - inclusão, A - alteração, C - cancelamento) e Status (A - Aceito, R - Rejeitado, P - Processando).
  • Através da lista de pedidos é possível pesquisar por Filial ou Multifiliais (separado por vírgula) para obter os dados.
  • Os dados de Razão social do intermediador e CNPJ do intermediador serão representados pelos campos, "intermediaryCompanyName" e  "idIntermediaryEmployer" respectivamente.
  • Considera-se na totalização do pedido frete e outras despesas.
  • Ao inserir um pedido através da API, o campo "PCPEDI.PBASERCA" gravará de acordo com o campo “PCPEDI.PTABELA”, não é necessário enviá-lo pela API.
  • Será persistidos os dados de cartão que a operadora do cartão retorna como o NSU e DTNSU (data de aprovação do cartão).
  • No envio do JSON deve-se enviar no campo productSKUERPReferenceKey o código auxiliar seguido do código do produto. Exemplo: 100-1 
  • Ao inserir um pedido, deverá enviar a informação do atributo  acceptOrderWithoutTax. As figuras tributárias consideradas são referente a rotina 271 ou rotina 514 em caso de tributação por estado (parâmetro 1092 - Usar tributação por estado (UF), rotina 132) para o item. Caso não tenha a informação da figura tributária em alguma das rotinas e o atributo "acceptOrderWithoutTax" esteja sendo enviado com "false" , o pedido será rejeitado, do contrário se o parâmetro não for enviado, ou for enviado como "true", mesmo que não haja tributação vinculada o pedido será registrado, porém com o valor "0" na coluna PCPEDI.CODST e demais colunas de imposto.
  • Caso o processo de desconto por item seja utilizado, o valor do desconto deve ser informado no campo listOfOrderItem.discountValue no body do json de envio do pedido. O campo sellPrice deve conter o valor correspondente ao valor tabela - valor do desconto. O preço tabela corresponderá ao preço de venda + o valor do desconto, e o percentual do desconto será calculado automaticamente. É necessário que haja uma política de desconto cadastrada na Rotina 561 para o conjunto de dados que serão enviados, de forma a controlar o percentual de desconto aplicado. Caso não haja política cadastrada, o pedido será integrado com a posição "Bloqueado".
  • Ainda sobre o processo de desconto por item, a API está validando o parâmetro 1463 - % Máximo de desconto Médio nos Orçamentos e Pedidos de Venda da Rotina 132, de forma que mesmo havendo política de desconto que permita o percentual informado, o pedido não será integrado se o percentual for superior ao informado no parâmetro. Caso o parâmetro esteja com o valor "0", essa validação será desconsiderada e o pedido será integrado bloqueado.
  • Ao enviar os atributos "deductionsCmv": {"discountsCofins": 0,"discountsIcms":  0,"discountsPis": 0}  no corpo da requisição, será reduzido o valor do CMV considerando os descontos de: PIS, COFINS e ISENÇÃO de ICMS  (Rotina 514- Figura triutária) os valores enviados serão apenas gravados. Esses mesmos dados serão retornados na API de consulta de pedido.
  • Sugestão do time de produto modificar o parâmetro(4591) para não permitir alterar o Código Auxiliar ver Link DDRET-6481 DT Criar Parâmetro para Edição de CODAUXILIAR
  • Para o processo de múltiplas cobranças, o mesmo só poderá ser utilizado caso o parâmetro 3968 - Permite incluir multiplas cobranças? da Rotina 132 esteja marcado como "Sim". Para cobranças do tipo cartão, o envio do campo "nsu" é obrigatório.
  • Ao enviar um item no pedido que seja bonificado/brinde o campo "gift" precisa está como "true", além disso o parâmetro 3045 da rotina 132 deve esta liberado (marcado igual a Sim).
  • Ao inserir um pedido, é possível passar o parâmetro booleano "acceptSearchAutomaticFreightType" para permitir ou não a definição automática do tipo de frete baseado no que foi cadastrado para o fornecedor daquela venda. Caso você não informe o tipo de frete (parâmetro "freightDispatch"), e você informe o campo do fornecedor (parâmetro "carrierId"), ele consulte qual o tipo de envio é o padrão para aquele fornecedor, e faça a definição da venda com o mesmo tipo.
  • Para validar se o pedido já existe, a api utiliza os campos orderIdHube e orderIdMktplace da requisição (correspondente aos campos pcpedc.numpedhube e pcpedc.numpedmktplace do banco). É utilizada a combinação dos dois campos para validar se o pedido já existe, portanto só serão integrados os pedidos se os dois campos forem distintos de algum registro já existente no banco.
  • Sobre o preenchimento do campo de percentual de IPI, esse valor é preenchido quando o método da API busca as informações do produto, com valores cadastrados na rotina 271.
    A partir da versão 1.2.14.4, ao passar pela rotina de cálculo de IPI, será verificado o valor do parâmetro 4753 - Define o valor do percentual do IPI configurado no produto (BUSCAVALORPERCENTUALIPIAPIPEDIDO) , que tem o valor padrão "Sim". Se mantido como "Sim", o sistema continuará definindo o valor preenchido para o percentual de IPI na rotina 271. Caso seja definido como "Não", o sistema atribuirá o valor do percentual de IPI como 0.

  • Para recalculo do valor do IPI o parâmetro  4681 - Habilita cálculo reverso para impostos dos itens de valor agregado no pedido de venda deve está marcado igual a sim, o valor de IPI será calculado caso o campo sellPriceIPI não seja informado. 
  • Importante:

    Para recalculo do valor do IPI o parâmetro 
    • Para que seja calculado o valor do IPI, é necessário as seguintes condições:
      • Não tenha valor de IPI já calculado ou enviado no JSON pelo campo sellPriceIPI.
      • Tenha percentual de IPI Venda, isso é cadastrado na rotina 271.
      • Tenha preço de venda.
      • O parâmetro
      • 4681 - Habilita cálculo reverso para impostos dos itens de valor agregado no pedido de venda
    deve está marcado igual a sim, o
      • (FIL_CALCREVERSOPEDIDOVENDA) esteja com valor "Sim".
    • Se for enviado valor de IPI
    será calculado caso o campo sellPriceIPI não seja informado. 
    • pelo campo sellPriceIPI na API, esse valor será gravado na tabela normalmente.
  • Observação sobre a utilização do processo de múltiplas cobranças:
    • Mesmo enviando a lista de múltiplas cobranças (listPayment) faz-se necessário o envio dos atributos chargingId e paymentPlanId no cabeçalho do pedido. Essas informações serão gravadas na tabela PCPEDC, mas no momento de faturar o pedido serão desconsideradas, pois será considerado o que está gravado na tabela PCFORMAPGTOPEDIDO.
  • Será inserido a data atual no campo PCPEDC.DTCALCFRETE sempre que o valor de frete PCPEDC.VLFRETE referente ao campo do JSON "valueFreight" for maior que zero.

...