Árvore de páginas

Versões comparadas

Chave

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


01. DADOS GERAIS

Produto:

Solucoes_totvs_cross
SolucaoCrossTOTVS Backoffice

Linha de Produto:

Linhas_totvs
LinhaLinha Datasul

Segmento:

Segmentos_totvs
SegmentoBackoffice

Módulo:

Modulos_cross_segmentos
ModulosCrossSegmentosTOTVS Backoffice (Linha Datasul) - Faturamento (MFT)

Função:

ItemTaxSimulationPublic - API Pública para simulação dos impostos de itens do Ecommerce

País:Brasil
Requisito/Story/Issue:

DMANFATINOV-1202, DMANFATINOV-1298


02. SITUAÇÃO/REQUISITO

Disponibilizar nova rota a ser utilizada apenas pelo Ecommerce B2B, retornando os valores de impostos por item no formato esperado pela VTEX.

03. SOLUÇÃO

Totvs custom tabs box
tabsParâmetros Recebidos, Parâmetros RetornadosNovo Endpoint,Entrada,Retorno
idspasso1,passo2,passo3
Totvs custom tabs box items
defaultyes
referenciapasso1

Criado novo endpoint na API de simulação dos impostos com mais de um item, itemTaxSimulationPublic segunda versão, para atender os parâmetros de entrada e saída que a VTEX espera. Para utilizar esse novo endpoint basta ao final da chamada da API adicionar /ecommerce e executar via POST, exemplo a seguir:

IP:PORTA/dts/datasul-rest/resources/prg/ftp/v2/itemTaxSimulationPublic/ecommerce

Totvs custom tabs box items
defaultno
referenciapasso2

JSON de entrada:

  • BranchId (Não obrigatório, caso não venha na entrada é pego o estabelecimento cadastrado no PD0301)
  • isB2c (Não obrigatório, por padrão o endpoint de ecommerce considera como b2b)
  • CustomerDocument (Não obrigatório, CPF/CNPJ do cliente, caso recebido é validado se o mesmo existe)
  • CustomerId (Não obrigatório, ID do cliente no datasul, caso recebido é validado se o mesmo existe, o CustomerId tem prioridade em relação ao CustomerDocument e uma deles precisa ser informado)
  • Freight (Não obrigatório)
  • Insurance (Não obrigatório)
  • ListofProducts
    • ProductId (Obrigatório)
    • sku (Não obrigatório)
    • Quantity (Obrigatório)
    • UnitaryValue (Obrigatório)
    • Freight (Não obrigatório)
    • DiscountPrice (Não obrigatório)


Exemplo de JSON de entrada:

{
    "BranchId": "1",
    "CustomerDocument": "51702628000170",
    "ListofProducts": [
        {
            "ProductId": ".compras",
            "sku": "8",
            "Quantity": 1,
            "UnitaryValue": 30.5
        },
        {
            "ProductId": "13t",
            "sku": "5",
            "Quantity": 3,
            "UnitaryValue": 14
        }
    ]
}

Informações passadas pela aplicação que irá consumir essa API:

  • BranchId
  • isB2c
  • CustomerDocument
  • CustomerId
  • Freight
  • Insurance
  • ListofProducts
  • ProductId
  • sku
  • Quantity
  • UnitaryValue
  • Freight

    Totvs custom tabs box items
    defaultno
    referenciapasso2passo3

    Retorno realizado pela APIA API irá retornar um JsonObject no formato a seguir:

    • itemTaxResponse
      • sku
      • taxes
        • name
        • value


    Exemplo de um retorno realizado pela API, caso algum item não tenha imposto o Array de "taxes" vira vazio, os impostos só serão retornados caso o valor seja diferente de zero:

    {
        "itemTaxResponse": [
            {
                "taxes":Image Removed [
                    {
                        "name""IPI",
                        "value"0.99
                    }
                ],
                "sku""8"
            },
            {
                "taxes": [
                    {
                        "name""IPI",
                        "value"5.46
                    }
                ],
                "sku""5"
            }
        ]
    }



    Templatedocumentos