Sell -> Orders -> "Add new Order"by the Shop Employee. See Add new Order page.
The Cart is created in database once first Product is being added into it.
Configure -> Shop parameters -> Customer settings, the related setting is
Re-display cart at login. This setting is implemented in: Context.php.
Configure -> Administration -> General "lifetime of front office cookies").
When creating an Order in the Back Office, a new empty Cart is created once the Customer is selected. You can also choose an existing Cart (already associated with the Customer) or an existing Order on which the new Cart will base.
For a Cart to convert to an Order, the following steps need to be completed:
checkout-delivery-step. It goes directly from
Associate to Customer (checkout-personal-information-step): details like name, email, birthday, etc. In Front Office you can either fill this information manually as a guest (and optionally create a new Customer account) or log in as an existing Customer. If you create an Order from Back Office, you will be asked to select an existing Customer before modifying the existing Cart or creating a new one.
Select shipping and invoice addresses (checkout-addresses-step): provide the shipping and invoice addresses information. The shipping (a.k.a. delivery) address is where the Ordered Products should be sent, while the invoice address is used as a document billing address. In Front Office, you can provide one address to be used as both - shipping and invoice. In Back Office, you must select shipping and invoice addresses (the same address can also be selected for both - shipping and invoices).
Select a shipping method (checkout-delivery-step): after this step is complete, you will need to select one of the available Carriers (Carriers are searched by delivery address, sometimes the total weight of the Products, their prices, and information about the Customer (a group to which the Customer belongs) and can be modified by Shop Employees on Improve -> Shipping -> Carriers page). Note that the Carrier will not be available if a selected country or zone is disabled (in Back Office International -> Locations) or Carrier shipping and locations settings are not configured.
Select payment method (checkout-payment-step): choose how to pay for the Order. Shop Employees can configure payment methods in
Payment -> Payment methods.
All payments are handled by payment modules. PrestaShop comes with 3 payment modules by default:
Improve -> Payment -> Preferences.
Submit Order: Once the Order is submitted, a unique Order reference is generated, and certain records from a Cart and related entities are added into following database tables:
Order_cart_rule(if any discounts were applied)
Order_detail_tax(if any taxes are applied)
Order_detail) to ensure Product data will remain available in the Order even if the Product is deleted or modified afterward. Information about the prices is also duplicated to ensure the Order amount will remain immutable.
Email sending settings can be found in Back Office
Configure -> Advanced parameters -> E-mail. Email translations and templates
Improve -> International -> Translations.
When Order is being created in Back Office, email with the link to a prefilled Cart can be sent before creating the Order (so the
Customer can finish up the checkout process). To do that
More actions -> Send pre-filled Order to the Customer by email in summary block.
Dive more in PrestaShop’s Checkout process: Learn how it works under the hood by looking at:
When creating Order from the Front Office, the initial Order status will differ depending on selected payment method. For example, if “Payment by check” is selected, then Order will be created with the “Awaiting check payment” status, or if “Bank transfer” is selected, the status will be “Awaiting wire payment”.
Order status changing cycle depends on payment module. Some modules (like the default ones provided above) will require
Shop admin to control the Order status manually, which can be done in Back Office
Sell -> Orders -> Orders. Other more
complicated payment modules, which integrates online payments in checkout process, will control the Order status
automatically (e.g. when payment is done, the Order status automatically changes to “Payment accepted”).
Order statuses can be configured in Back Office
Shop parameters -> Order settings -> Statuses.