A Checkout Intent represents the end‑to‑end process of purchasing a product through Rye. Each intent progresses through a series of states, from initial creation to final order placement. Understanding these states helps you design robust checkout flows and handle errors gracefully.

States

  • retrieving_offer - When a Checkout Intent is first created, Rye fetches live pricing, availability, taxes, and shipping options from the merchant for the provided productUrl.
  • awaiting_confirmation - An offer is ready and includes pricing and availability details. Your app can collect payment details from the buyer.
  • placing_order - A payment method was provided and Rye is executing the checkout on the merchant site.
  • completed - The order was successfully placed and confirmed by the merchant.
  • failed - The checkout could not be completed (e.g., out of stock, unsupported merchant, declined payment).

Sequence

The diagram below shows the typical happy path (Create -> Confirm -> Fulfill) plus common branches.

Notes

  • Polling Duration: Developers should poll for up to 45 minutes during the retrieving_offer state, as the checkout intent may take that long to transition to the awaiting_confirmation state.
  • Checkout Intent Window: Developers have 45 minutes to confirm a checkout intent. The timer starts as soon as the checkout intent is created in our system. After that time, the checkout intent will be expired and in a failed state, and any confirmation requests for the checkout intent will return a checkout_intent_expired as the failure reason.