Estoy ejecutando Magento 1.6.2.
Necesito determinar si se paga un pedido. En caso afirmativo, genero algunos datos XML para exportar. Hay muchos casos en el flujo de trabajo de pedido / pago / envío de Magento.
Mi primera suposición es cuando el atributo "estado" de la orden se define como "procesamiento", pero no estoy seguro debido a la gran cantidad de posibilidades en este flujo de trabajo. Puede ser que este caso no cubra todas las posibilidades ...
¿Estoy en lo cierto con eso?
orders
payment
ce-1.6.2.0
state
guillaume_shm
fuente
fuente
Respuestas:
Puede llamar
$order->getBaseTotalDue()
. Si esto es 0, el pedido está totalmente pagado.fuente
Vea la respuesta de Andreas sobre cómo determinar si queda algo por pagar. Para responder a su otra pregunta, usar el procesamiento de estado == no es lo suficientemente bueno. Una prueba rápida para mostrar esto es enviar un pedido impago; esto también moverá un pedido al estado de procesamiento aunque el pedido aún no se haya pagado.
fuente