Criar um memorando de crédito (cancelar) invoice no Magento 2

Para cancelar 100% do pedido e criar um crédito para todos os itens através da API REST do , você deve seguir um processo semelhante ao anterior, mas garantindo que todos os itens do pedido sejam incluídos no crédito. Aqui está como você pode fazer isso:

Passo 1: Autenticação

Primeiro, obtenha o token de autenticação, conforme descrito anteriormente:

POST 

Passo 2: Obtenha as Informações do Pedido

Antes de criar o crédito, você precisa das informações do pedido, incluindo os order_item_ids e as quantidades dos itens.

GET 

Passo 3: Criar o Crédito (Credit Memo)

Com as informações do pedido em mãos, você pode criar o crédito incluindo todos os itens do pedido.

POST 

Considerações Importantes:

  • Todos os Itens do Pedido: Certifique-se de incluir todos os order_item_ids do pedido com a quantidade total (qty) que foi originalmente solicitada.
  • invoice_id: Deve ser o ID da fatura contra a qual o crédito será emitido. Se o pedido foi faturado, isso é necessário.
  • shipping_amount: Se você deseja reembolsar o valor do frete, coloque o valor correspondente aqui.
  • adjustment_positive/negative: Use esses campos se precisar ajustar o valor do crédito para mais ou para menos.

Passo 4: Executar a Chamada da API

Envie a requisição. Se tudo estiver configurado corretamente, o retornará uma resposta com os detalhes do crédito criado, indicando que o cancelamento total do pedido foi processado com sucesso.

{
  "entity_id": 1,
  "increment_id": "100000001",
  "state": 2,
  "invoice_id": 1,
  "order_id": 1,
  "created_at": "2024-08-19 10:00:00",
  "updated_at": "2024-08-19 10:00:00",
  "grand_total": 200.00,
  ...
}

Os campos adjustment_positive e adjustment_negative na API de geração do creditmemo no Magento 2 são usados para fazer ajustes manuais no valor total do crédito a ser emitido. Eles permitem que você adicione ou subtraia valores específicos do total do crédito, além dos valores calculados automaticamente com base nos itens do pedido, impostos, e frete. Aqui está o que cada um faz:

1. adjustment_positive:

Este campo permite adicionar um valor extra ao crédito que está sendo emitido.

  • Finalidade: Usado quando você deseja aumentar o valor total do crédito para o cliente por qualquer motivo, como oferecer um reembolso adicional, uma compensação, ou um bônus.
  • Valor: Um valor numérico que será adicionado ao total do creditmemo.

Exemplo de Uso: Se você quiser adicionar R$ 10,00 ao total do crédito, você configuraria o campo assim:

“adjustment_positive”: 10.00

2. adjustment_negative:

Este campo permite subtrair um valor do crédito total que está sendo emitido.

  • Finalidade: Usado quando você precisa reduzir o valor total do crédito, talvez devido a taxas, fretes não reembolsáveis, ou outro ajuste que precisa ser deduzido do valor total a ser devolvido ao cliente.
  • Valor: Um valor numérico que será subtraído do total do creditmemo.

Exemplo de Uso: Se você precisar subtrair R$ 5,00 do total do crédito, você configuraria o campo assim:

"adjustment_negative": 5.00

Exemplo Completo de Uso:

Suponha que você queira criar um creditmemo com um ajuste positivo de R$ 15,00 e um ajuste negativo de R$ 5,00:

{

"entity": { "invoice_id": 123, "items": [ { "order_item_id": 456, "qty": 1 } ], "shipping_amount": 0, "adjustment_positive": 15.00, "adjustment_negative": 5.00 }, "appendComment": true, "comment": { "comment": "Crédito com ajuste", "is_visible_on_front": 1 }, "isOffline": false, "notify": true }

Resultado:

  • O adjustment_positive adicionará R$ 15,00 ao total do crédito.
  • O adjustment_negative subtrairá R$ 5,00 do total do crédito.
  • O valor final do creditmemo será ajustado de acordo com esses valores, além do valor dos itens, impostos, e quaisquer outros cálculos padrão do Magento.

Estes campos são úteis para cenários em que você precisa de flexibilidade adicional na emissão de créditos, permitindo ajustes específicos de acordo com a política ou situação particular de um pedido.

Dúvidas? Faça um comentário logo abaixo ou envie uma mensagem clicando aqui.

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *