Skip to main content

Orders states

Once order has been successfully created API clients and RPI Dashboard users can monitor order's progress by monitoring order status.

Order statusFinal stateDescription
RECEIVEDnoInitial state, order has been received by RPI Print API and queued for async validation.
QUEUEDnoInitial state, order has been received by RPI Print API, but the customer has exceeded their Orders Limit.
VALIDATINGnoOrder is being validated. This includes SKU and address validation and print asset processing & validation. It also includes pricing & tax calculation.
VALID_AWAITING_PAYMENTnoOrder has been validated and is waiting for payment. Default payment method must be set in RPI Print API Dashboard.
VALID_HOLDING_BINnoOrder is in holding bin and is waiting to be sent to printing. While order is in holding bin it can be cancelled.
PRINTINGnoOrder is being printed. Cancellation might no longer be possible
SHIPPEDyesOrder has been shipped. Tracking number (if available) has been provided. Cancellation is no longer possible.
FAILEDyesOrder has failed validation or pre-print processing. There should be an error message included in order details.
CANCELLATION_REQUESTEDnoCancellation has been requested for this order. This is an async process that might take a while to complete.
CANCELLEDyesOrder has been cancelled, full or partial refund has been queued (depending on where in the workflow order was cancelled)
EXCEPTIONyesOrder has entered exception state that requires User's manual action or contacting customer support
REJECTEDyesOrder has exceeded the maximum number of orders queued and is now rejected.
info

Orders in final states cannot be updated.

Success flow

flowchart TD SHIPPED(((SHIPPED))) START{POST /orders/create} START==>RECEIVED RECEIVED==>VALIDATING VALIDATING==>VALID_AWAITING_PAYMENT VALID_AWAITING_PAYMENT==>|Scheduled automatic payment| VALID_HOLDING_BIN VALID_HOLDING_BIN==> |Submitted for printing| PRINTING PRINTING===> |Order shipped|SHIPPED

Full flow

flowchart TB SHIPPED(((SHIPPED))) CANCELLED(((CANCELLED))) FAILED(((FAILED))) EXCEPTION(((EXCEPTION))) START{POST /orders/create} START==>RECEIVED START==>|Customer exceeded the max number of orders in a queue|REJECTED START==>|Customer exceeded their 24h limit|QUEUED subgraph workflow [workflow] direction LR QUEUED ==>RECEIVED RECEIVED==>VALIDATING VALIDATING==>VALID_AWAITING_PAYMENT VALID_AWAITING_PAYMENT==>|Scheduled automatic payment| VALID_HOLDING_BIN VALID_HOLDING_BIN==> |Submitted for printing| PRINTING PRINTING===> |Order shipped|SHIPPED end PRINTING--->|order cancel request| CANCELLATION_REQUESTED PRINTING--->|cancel request rejected| PRINTING cancelFlow ==> |There was an issue with cancellation request| EXCEPTION VALIDATING--->|Validation failed| FAILED CANCELLATION_REQUESTED-->CANCELLED CANCELLATION_REQUESTED-.->EXCEPTION