Orders with Payment gateway
When a customer pays through an integrated Payment Gateway, Boxify processes the payment automatically. The resulting order status depends on the shipping option the customer selected, the payment verification result, and the system’s stacking rules.
Order Status After Successful Payment
Section titled “Order Status After Successful Payment”When payment is successful, the system automatically reconciles the payment and sets the item status to Paid. The order status then depends on the shipping option chosen.
Shipping option: “Ship Now”, “WM”, “EM”, “SG”, or similar
Section titled “Shipping option: “Ship Now”, “WM”, “EM”, “SG”, or similar”If the shipping option means the order should ship immediately:
- The order moves to Ready to Ship.
- You can proceed with packing and fulfilment.
- Revenue is recognised.
Examples: Ship Now, WM (West Malaysia), EM (East Malaysia), SG (Singapore).
Shipping option: “Ship Later”
Section titled “Shipping option: “Ship Later””If the customer selects Ship Later:
- The order status stays as Paid.
- The order can continue to accumulate (stack) more items.
- The customer may add more items before the final shipment.
- Revenue is not yet recognised.
Payment Method Behaviour
Section titled “Payment Method Behaviour”The same payment method applies to an order regardless of how many payments are made. Mixed payment methods are not allowed by default.
To allow mixed payment methods, enable this under Setting › Parameters › Shopping Cart.
Orders with Status: “Waiting for Online Payment”
Section titled “Orders with Status: “Waiting for Online Payment””This status means the system is still waiting for confirmation from the Payment Gateway (for example, Billplz). Payment has not yet been confirmed.
While the order is in this status:
- The order cannot be stacked.
Once payment is verified:
- The status changes to Paid (if Ship Later was selected), or
- The status changes to Ready to Ship (if a shipping option was selected).
Security Protection: error_payment_mismatch
Section titled “Security Protection: error_payment_mismatch”Boxify includes a security check to prevent order tampering during online payment. The order status changes to error_payment_mismatch if the system detects either of the following:
A) Payment amount does not match the outstanding amount The outstanding amount on the order does not equal the payment amount received.
B) Order status was modified during payment The order status was not “Waiting for Online Payment” when the customer completed payment, which means the order was changed during the payment process.
This protects you from payment manipulation, incorrect stacking during a gateway transaction, and order amount tampering.
Revenue Reminder
Section titled “Revenue Reminder”Revenue is only recognised when the order status reaches Ready to Ship or Shipped. Payment confirmation alone does not trigger revenue recognition.
Quick Overview
Section titled “Quick Overview”| Scenario | Item Status | Order Status | Stack Allowed? | Revenue Counted? |
|---|---|---|---|---|
| Gateway Payment Success + Ship Later | Paid | Paid | Yes | No |
| Gateway Payment Success + Shipping Selected | Paid | Ready to Ship | No | Yes |
| Waiting for Online Payment | New | Waiting for Online Payment | No | No |
| error_payment_mismatch | — | error_payment_mismatch | No | No |
See also: