Comment savoir si une commande est payée? Lorsque « état » est « traitement »?
-
16-10-2019 - |
Question
Je suis en cours d'exécution Magento 1.6.2.
Je dois déterminer si une commande est payée. Si oui, je produis des données XML pour l'exportation. Il y a de nombreux cas dans l'ordre Magento / paiement / flux de livraison.
Ma première supposition est lorsque l'attribut « état » de l'ordre est défini comme « traitement », mais je ne suis pas sûr à cause de la grande quantité de possibilités dans ce flux de travail. Peut-être ce cas ne couvre pas toutes les possibilités ...
Suis-je droit avec cela?
La solution
Vous pouvez appeler $order->getBaseTotalDue()
. Si cela est 0, l'ordre est entièrement libéré. ??
Autres conseils
Voir la réponse Andreas sur la façon de déterminer s'il y a quelque chose reste à payer. Pour répondre à votre autre question - en utilisant l'état de traitement == n'est pas assez bon. Un test rapide pour montrer est d'expédier une commande sans solde -. Cela déplacera également un ordre à l'état de traitement, même si l'ordre est toujours impayée