Definições
Para atender as necessidades dos clientes que realizam devolução via XML ou considerando a regra enviada no TaaS ou no motor de cálculo, criamos a tela de “Gestão de Devolução”.
Com o apoio das informações preenchidas nessa tela, permite que o cliente envie na chamada do TaaS ou do motor de cálculo, o arquivo XML da nota fiscal de venda ou compra e retona o cálculo da devolução considerando as informações do XML ou considere as informações da regra original de compra ou venda ou qualquer outra operação e realizando as trocas de CFOP e CST conforme definido na tabela de Gestão de Devolução.
O funcionamento dessa rotina consiste no seguinte fluxo para os clientes que utilizam o formato de envio do XML na chamada do TaaS ou do motor:
Ø A chamada no TaaS deverá ser enviada com os OperationNatureCode = RV ou RC ou RO e outros OperationNatureCodes definidos pelos clientes e que atendam operações de devolução e assim como ocorre normalmente, vai passar pela determinação e perfil e enviar a requisição para o motor de cálculo considerando a regra definida conforme parâmetros enviados;
Ø Para os casos de clientes que usam a rotina de envio do XML na chamada do TaaS, deve ser enviado na tag “referenceIDXML” ou na chamada do motor de cálculo deve ser enviado na tag “Cdata” o XML da nota fiscal original (de compra ou venda) convertido ou não em Base 64;
Ø deverá ser enviado nas tags "itemCode" e "quantity", respectivamente, o código do item que será devolvido, além da quantidade (que poderá ser total ou parcial),
Ø Nas chamadas do TaaS também é enviado a tag “referenceIDItem”, essa marcação serve para indicar qual é o item da NF que está sendo devolvido.
Ø A chamada enviada pelo TaaS vai passar pela determinação e perfil e enviar a requisição para o motor de cálculo que utilizará as informações da nota fiscal para executar os cálculos e devolver o resultado;
Ø o motor receberá os campos de "cprod" e "qtrib" e considerará as informações do XML para devolução;
Ø mesmo que seja enviado um determinado valor na tag "unitPrice" o mesmo será desconsiderado no cálculo, pois será usado exclusivamente o valor unitário da NF;
Ø Os campos de CFOP e CST serão retornados conforme a informação da tabela de “Gestão de Devolução” no cockpit;
Ø Para calcular os valores referente o Pis e Cofins:
Quando tem o bloco de Pis e Cofins na NF:
- O motor utiliza o vBC/quantidade total * quantidade devolvida
- aplica as alíquotas de Pis e Cofins que também foram enviadas no documento
- calcula os valores e devolve nas tags correspontes ("rate", "value" e "taxable")
Quando não tem o bloco de Pis e Cofins na NF:
- O motor de cálculo irá calcular a base de cálculo que basicamente deve ser (valor unitário x quantidade devolvida)
- O TaaS deverá receber esse valor nas tags "otherBaseAmount" ou "exemptedBaseAmount", de acordo com o CST previsto nas definições do TaaS;
- Nas devoluções, o motor não considera o parâmetro "gross or net", portanto, não há diferenciação entre cálculo net ou gross.
Para os clientes que utilizam o formato do consumo da regra no cockpit:
Ø A chamada no TaaS deverá ser enviada com os OperationNatureCode = RV ou RC ou RO e assim como ocorre normalmente, vai passar pela determinação e perfil e enviar a requisição para o motor de cálculo considerando a regra definida conforme parâmetros enviados;
Ø A tag “referenceID” é enviada na chamada referenciando o ID da chamada original, isto é, do cálculo que originou a devolução.