Order expiration
An order expires when one or multiple orderItems inside of the order expire.
This can happen when offered which have been recieved by a connected system are reserved for a fixed period of time but then the customer is waiting too long to continue in the checkout. If this is not handled it will reult in a FulfillmentError which is very inconvenient. This problem can not be solved in all situations but we try to automate it whenever possible and give the client-application the best opportunities to handle it.
To be able to communicate the expiration of the order there is provided property expiresAt
inside of the order response. It might be a good idea to show this to the guest so the guest is aware of this fact.
An order expires before the payment initialization step¶
When placing the order all expired orderItems will be automatically attempted to refresh.
- If the offer is still available to the same price the guest does not recognize anything (except that the expiration time of the order changes).
- If orderItem cannot be automatically updated then the orderItem will be moved to the
Error
state.
Warning
The client application must communicate the error to the guest and remove this orderItem from the order before proceeding.
An order expires after the payment initialization step¶
During the fulfillment (after the payment) all expired orderItems will be automatically attempted to refresh.
- If the offer is still available to the same price everything continues as expected.
- If orderItem cannot be automatically updated then the orderItem will be moved to the
FulfillmentError
state.
In this case the orderItem is handled like always if there is aFulfillmentError
:
The guest does neither receive the product nor does he/she pay for it.