Rye makes it easy to take payments and sell products from multiple merchants with a single API. This section covers the way to set up payments with Rye, and explains the lifecycle of a Rye order.
Ordering from Rye involves you collecting payments yourself from your customers and using Rye to place orders for products. This requires you to have a payment solution in place, such as Stripe.
Note: The developer—and not Rye—will be the merchant of record for orders placed.
By default, the workflow looks like this:
We offer a net 30 invoicing option for larger accounts. You can opt in to this by contacting us.
You can place your first order from your backend by following our ordering guide.
A single Rye cart can contain products from multiple different merchants. When you submit an order, Rye will transparently handle routing payments and placing orders with the appropriate merchants. More detailed information about how order placement works can be found here.
We also have sequence diagrams available which show the exact data flow for certain order placement scenarios. Note that in practice the data flow can be more complicated than what is shown in these diagrams in cases where multiple merchants are involved. Nonetheless, these diagrams should give you a good idea of how the process generally works.
For products purchased using the Sync API, shoppers can request a refund directly with the merchant. Once the merchant accepts the refund request, Rye will automatically process the refund with no further action on the part of the developer.
Refunds for orders using the Sell Anything API are more involved. Read more about returning Sell Anything API orders here.
Submitting a cart is an asynchronous operation. The successful execution of a submitCart
mutation should not be interpreted as the order succeeding; it is possible for errors to occur after the cart is submitted during order placement and payment capture. After submitting a cart, developers should take care to monitor the status of the order and step in to handle errors as they occur.
You can find detailed instructions on how to handle the checkout lifecycle here.