Magento 2: So machen Sie benutzerdefinierte Gebühren steuerpflichtig


9
  • Ich möchte eine Steuer auf die Zollgebühr hinzufügen. Die Steuerberechnung ist perfekt und erhält den Steuerbetrag, ist jedoch nicht in den STEUER-Dateien in quote_address in der Datenbank festgelegt.

    public function collect(
        \Magento\Quote\Model\Quote $quote,
        \Magento\Quote\Api\Data\ShippingAssignmentInterface $shippingAssignment,
        \Magento\Quote\Model\Quote\Address\Total $total
    ){
    
      $total->setTaxAmount($total->getTaxAmount()+$taxAmount);
      $total->setBaseTaxAmount($total->getBaseTaxAmount()+$taxAmount); 
    }
    
  • Ich versuche, den Steuerbetrag in der Erhebungsmethode festzulegen, aber er ist nicht festgelegt.

  • Ich möchte diesen Thiscode genauso mögen . Es ist Magento1, aber ich möchte Magento 2


Versuchen Sie, die folgenden Schritte auszuführen,
Abhinav Singh

Antworten:


1

Sie können den folgenden Code verwenden, um den Steuerbetrag in der Angebotsadresse und den Angebotstabellen festzulegen:

$quote->setTaxAmount($total->getTaxAmount() + $taxAmount);
$quote->setBaseTaxAmount($total->getBaseTaxAmount() + $taxAmount);

$address = $shippingAssignment->getShipping()->getAddress();
$address->setTaxAmount($total->getTaxAmount() + $taxAmount);
$address->setBaseTaxAmount($total->getBaseTaxAmount() + $taxAmount);

Ich hoffe das hilft dir. Wenn Sie weitere Fragen haben, können Sie diese gerne stellen.

Freue mich zu helfen!

Vielen Dank,


0

Anstelle eines Anrufs müssen $total->setTaxAmount()Sie Folgendes verwenden addTotalAmount:

$total->addTotalAmount('tax', $amount);
$total->addBaseTotalAmount('tax', $baseAmount);
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.