Magento 2: come rendere tassabile la tariffa personalizzata


9
  • Voglio aggiungere una tassa sulla tariffa personalizzata. il calcolo delle imposte è perfetto e ottiene l'importo delle tasse ma non è impostato nei file TAX in quote_address nel database.

    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); 
    }
  • Cerco di impostare l'Importo fiscale nel metodo di riscossione ma non è impostato.

  • Voglio essere uguale a questo thiscode. è Magento1 ma voglio Magento 2


Prova a seguire quanto segue per aggiungere una tariffa personalizzata al tuo subtotale magento.stackexchange.com/questions/92774/…
Abhinav Singh,

Risposte:


1

È possibile utilizzare il codice seguente per impostare l'importo fiscale nell'indirizzo di quotazione e nelle tabelle di quotazione:

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

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

Spero che questo ti aiuti. Se hai ulteriori domande, non esitare a chiedere.

Felice di aiutare!

Grazie,


0

Invece di una chiamata $total->setTaxAmount()è necessario utilizzare addTotalAmount:

$total->addTotalAmount('tax', $amount);
$total->addBaseTotalAmount('tax', $baseAmount);
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.