Skip to main content

Order states

Once an order has been successfully created, API clients and RPI Dashboard users can monitor order's progress by monitoring the 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 has been submitted to the printer. Cancellation requests are forwarded to the printer, which may still reject them.
RECEIVED_BY_PRINTERnoThe printer has accepted the order. Cancellation requests are forwarded to the printer, which may still reject them.
IN_PRODUCTIONnoThe printer has begun producing the order. Cancellation requests are forwarded to the printer, which may still reject them.
READY_TO_SHIPnoThe order has been produced and is ready to ship. Cancellation requests are forwarded to the printer, which may still reject them.
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 an exception state due to a printer cancellation rejection or other internal error. Requires 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.

note

PRINTING is the API and webhook status value for an order that has been submitted to the printer; the RPI Dashboard displays this same status as "Submitted to Printer". The status value on the API/webhook contract remains PRINTING.

The printer then reports progress through RECEIVED_BY_PRINTER, IN_PRODUCTION, and READY_TO_SHIP before SHIPPED.

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==> |Accepted by printer| RECEIVED_BY_PRINTER RECEIVED_BY_PRINTER==> |Production started| IN_PRODUCTION IN_PRODUCTION==> |Production complete| READY_TO_SHIP READY_TO_SHIP===> |Order shipped|SHIPPED

Full flow

flowchart TB START{POST /orders/create} START==>|Over queue limit| REJECTED(((REJECTED))) START==>RECEIVED RECEIVED==>VALIDATING VALIDATING==>VALID_AWAITING_PAYMENT VALID_AWAITING_PAYMENT==>|Payment processed| VALID_HOLDING_BIN VALID_HOLDING_BIN==>|Submitted for printing| PRINTING PRINTING==>|Accepted by printer| RECEIVED_BY_PRINTER RECEIVED_BY_PRINTER==>|Production started| IN_PRODUCTION IN_PRODUCTION==>|Production complete| READY_TO_SHIP READY_TO_SHIP==>|Order shipped| SHIPPED(((SHIPPED))) START==>|Over 24h limit| QUEUED QUEUED==>RECEIVED VALIDATING--->|Validation failed| FAILED(((FAILED))) RECEIVED--->|cancelled| CANCELLED(((CANCELLED))) QUEUED--->|cancelled| CANCELLED VALID_AWAITING_PAYMENT--->|cancelled| CANCELLED VALID_HOLDING_BIN--->|cancelled| CANCELLED PRINTING--->|cancellation sent to printer| CANCELLATION_REQUESTED RECEIVED_BY_PRINTER--->|cancellation sent to printer| CANCELLATION_REQUESTED IN_PRODUCTION--->|cancellation sent to printer| CANCELLATION_REQUESTED READY_TO_SHIP--->|cancellation sent to printer| CANCELLATION_REQUESTED CANCELLATION_REQUESTED-.->|printer rejected cancellation| EXCEPTION(((EXCEPTION))) CANCELLATION_REQUESTED-->|printer confirmed cancellation| CANCELLED