diff --git a/doc/development/concepts.rst b/doc/development/concepts.rst index d8c9ae2ee..3018addb4 100644 --- a/doc/development/concepts.rst +++ b/doc/development/concepts.rst @@ -82,6 +82,12 @@ Orders ^^^^^^ If a customer completes the checkout process, an **Order** will be created containing all the entered information. -An order can be in one of currently five states that are listed in the diagram below: +An order can be in one of currently four states that are listed in the diagram below: .. image:: /images/order_states.png + +There are additional "fake" states that are displayed like states but not represented as states in the system: + +* An order is considered **canceled (with paid fee)** if it is in **paid** status but does not include any non-cancelled positions. + +* An order is considered **requiring approval** if it is in **pending** status with the ``require_approval`` attribute set to ``True``. diff --git a/doc/images/order_states.png b/doc/images/order_states.png index a47808d4b..84e9b0eb1 100644 Binary files a/doc/images/order_states.png and b/doc/images/order_states.png differ diff --git a/doc/images/order_states.puml b/doc/images/order_states.puml index 743c4207c..5465725af 100644 --- a/doc/images/order_states.puml +++ b/doc/images/order_states.puml @@ -4,7 +4,6 @@ Pending: Order is expecting payment\nOrder reduces quotas Expired: Payment period is over\nOrder does not affect quotas Paid: Order was successful\nOrder reduces quotas Canceled: Order has been canceled\nOrder does not affect quotas -Refunded: Order has been refunded\nOrder does not affect quotas [*] --> Pending: customer\nplaces order Pending --> Paid: successful payment @@ -12,8 +11,9 @@ Pending --> Expired: automatically\nor manually\non admin action Expired --> Paid: if payment is received\nonly if quota left Expired --> Canceled Expired --> Pending: manually\non admin action -Paid --> Refunded: manually on\nadmin action\nor if an external\npayment provider\nnotifies about a\npayment refund +Paid --> Canceled: manually on\nadmin action\nor if an external\npayment provider\nnotifies about a\npayment refund Pending --> Canceled: on admin or\ncustomer action Paid -> Pending: manually on admin action +[*] --> Paid: customer\nplaces free order @enduml