Orders states
Once order has been successfully created API clients and RPI Dashboard users can monitor order's progress by monitoring 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 exception state that requires User's 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
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