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 status | Final state | Description |
|---|---|---|
| RECEIVED | no | Initial state, order has been received by RPI Print API and queued for async validation. |
| QUEUED | no | Initial state, order has been received by RPI Print API, but the customer has exceeded their Orders Limit. |
| VALIDATING | no | Order is being validated. This includes SKU and address validation and print asset processing & validation. It also includes pricing & tax calculation. |
| VALID_AWAITING_PAYMENT | no | Order has been validated and is waiting for payment. Default payment method must be set in RPI Print API Dashboard. |
| VALID_HOLDING_BIN | no | Order is in holding bin and is waiting to be sent to printing. While order is in holding bin it can be cancelled. |
| PRINTING | no | Order is being printed. Cancellation might no longer be possible |
| SHIPPED | yes | Order has been shipped. Tracking number (if available) has been provided. Cancellation is no longer possible. |
| FAILED | yes | Order has failed validation or pre-print processing. There should be an error message included in order details. |
| CANCELLATION_REQUESTED | no | Cancellation has been requested for this order. This is an async process that might take a while to complete. |
| CANCELLED | yes | Order has been cancelled, full or partial refund has been queued (depending on where in the workflow order was cancelled) |
| EXCEPTION | yes | Order has entered an exception state due to a printer cancellation rejection or other internal error. Requires manual action or contacting customer support. |
| REJECTED | yes | Order 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
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==>|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
CANCELLATION_REQUESTED-.->|printer rejected cancellation| EXCEPTION(((EXCEPTION)))
CANCELLATION_REQUESTED-->|printer confirmed cancellation| CANCELLED