{% extends 'Layouts/Doc/default.html.twig' %} {% block title %} {{ 'app.documentation.menu.architecture.drivers'|trans }} {% endblock %} {% block headerPageTitle %} {{ 'app.documentation.menu.workflow.order_workflow'|trans|upper }} {% endblock %} {% block body %}

POPINA ORDER allows customers to place orders online and pick them up from a physical shop or have them delivered. The workflow of an order in a click and collect system typically involves several steps.

{% include 'Doc/Diagram/orders-workflow.html.twig' %}

    Once the customer places an order:

  • New order

    • After the customer completes the checkout process and confirms the order, the system generates a unique order number and creates it in the system.
    • The order can be associated with the customer's account or remain anonymous. It includes details such as the items, quantities, total cost, and pickup location.
    • At this stage, the system may perform validation checks to ensure the order is valid and meets any specific requirements.

  • Pending

    • Once the order is created and paid for, it enters the Pending state.
    • If the shop has a webhook enabled and valid, the POS will receive a notification depending on the configured events.
    • Both the customer and shop staff members are notified via Email about the new order and start preparing it for pickup.
    • If the shop has a printer configured, the system sends a request to the Starcloud printer to print the receipt.

  • Accepted | Rejected {% include 'Doc/States/Status/rejected.html.twig' %}
  • Delayed

    • There may be instances where the order cannot be fulfilled in the requested time due to multiple reasons, such as inventory issues or too many orders.
    • In such cases, the shop can delay the order witch will be marked as Delayed. The shop must precise the exact minutes of the delay.
    • The order can be delayed multiple times If further delays occur, and each time the order will be updated with the newest delivery time.
    • On each delay, the customer will receive an SMS message so that he can be informed instantly.

  • Ready

    • When the accepted order's preparation is completed, the shop may mark the order as Ready, so that the customer may collect it.
    • Once again, the customer will receive an SMS message so that he can be informed instantly.

  • Cancelled {% include 'Doc/States/Status/cancelled.html.twig' %}
  • Refunded

    • Orders are refunded if they have been Cancelled or Rejected.

  • Expired {% include 'Doc/States/Status/expired.html.twig' %}
  • Delivered

    • Once the customer collects his order, the shop may mark the order as Delivered.
    • The customer receives the ordered items, and the transaction is considered successful.

{% endblock %}