use two state_machines in orders, one for payments, and another for shipment