Question

Je sais comment obtenir les informations d'adresse de livraison par défaut du client, mais comment puis-je obtenir une adresse de livraison « unique » avant de soumettre la commande ?

Exemple

Le client de Géorgie a des adresses par défaut en Géorgie, mais expédie en Floride pour cette nouvelle commande.Si je souhaite connaître leur adresse de livraison pour ce cas, comment puis-je la savoir ?

J'ai besoin de ces informations à des fins de calcul des taxes, afin de pouvoir facturer des taxes si l'envoi est destiné à la Floride.Est-ce seulement possible?

modifier

Sur la base de la suggestion de R.S., j'essaie de mettre en place un observateur mais ça ne fonctionne pas comme je l'espérais.Voici ce que j'ai actuellement :

Config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Mbs_Tax>
            <version>0.1</version>
        </Mbs_Tax>
    </modules>

    <global>
        <events>
            <sales_quote_collect_totals_before>
                <observers>
                    <tax>
                        <type>singleton</type>
                        <class>Mbs_Tax_Model_Observer</class>
                        <method>salesQuoteCollectTotalsBefore</method>
                    </tax>
                </observers>
            </sales_quote_collect_totals_before>
        </events>
    </global>
</config>

Observateur.php

class Mbs_Tax_Model_Observer {
    public function salesQuoteCollectTotalsBefore($observer) {
        $quote = $observer->getQuote();
        $address = $quote->getShippingAddress();
        $region = $address->getData('region');
        Mage::log("Address from salesQuoteCollectTotalsBefore: region ".$region,null,"tax.log");
        if(strtoupper($region)==="FLORIDA") {

            Mage::log("Shipping to Florida: ".print_r($quote->getShippingAddress()->getData('tax_amount'), true),null,"tax.log");
        }
    }
}
Était-ce utile?

La solution

Essayez de créer un observateur pour <sales_quote_collect_totals_before>

Puis dans votre observateur

$quote = $observer->getQuote();
$address = $quote->getShippingAddress()
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top