rye-test-store.myshopify.com. Use Stripe test cards for payment.
rye-protocol.myshopify.com is also available for production test orders. It uses a live payment gateway — payments are not captured and funds are automatically returned to the card after ~1 week.Shipping & Delivery
Standard Product (Baseline)
Standard Product (Baseline)
Use as a baseline for comparison against edge-case products.
3PL Product (Carrier-Calculated Shipping)
3PL Product (Carrier-Calculated Shipping)
A product fulfilled via third-party logistics (3PL). Shipping rates are calculated dynamically by the carrier based on the buyer’s shipping address, rather than being flat rates set by the merchant.Expected behavior:
- Shipping rates vary based on the buyer’s address
- Applying a discount code may cause the available shipping options to change (e.g., if the discounted total drops below a free shipping threshold)
Digital Product
Digital Product
A digital product (e.g., an ebook or software license) that does not require physical shipping.
Expected behavior:
- A free shipping method is returned on the checkout intent
- Shipping cost is $0
Heavyweight / Oversized Product
Heavyweight / Oversized Product
A product with a very high weight (100 lbs). Tests weight-based shipping rate calculations.
Expected behavior:
- Shipping rates significantly higher than standard products
Delayed Shipping Product
Delayed Shipping Product
Use with the shipment advance test helper to simulate a delayed shipment.Expected behavior:
- The shipment advance helper follows
ordered -> shipped -> out_for_delivery -> delayed -> delivered
Canceled Shipping Product
Canceled Shipping Product
Use with the shipment advance test helper to simulate a canceled shipment.Expected behavior:
- The shipment advance helper follows
ordered -> canceled
Inventory & Availability
Sold Out Product
Sold Out Product
A product with 0 inventory that cannot be purchased.Expected behavior:
- Checkout intent fails with
product_out_of_stock
Partially Out-of-Stock Variants
Partially Out-of-Stock Variants
A product where some variants are in stock and others are sold out.
Expected behavior:
- Selecting an in-stock variant (S or M) succeeds
- Selecting a sold-out variant (L or XL) fails with
product_out_of_stock
Unpublished / Draft Product
Unpublished / Draft Product
A product that is not published to any sales channel (draft or hidden).
Expected behavior:
- Product URL returns 404
- Checkout intent fails with
offer_retrieval_failed
Variants & Options
Different Variant Prices
Different Variant Prices
A product where each variant has a different price point.Expected behavior:
- Offer returns the correct price for the selected variant
- Switching variants updates the price, shipping, and tax accordingly
Many Variants (25+)
Many Variants (25+)
A product with many variant combinations (5 colors x 5 sizes = 25 variants) with different prices per variant.
Expected behavior:
- All 25 variants available for selection
- Offer reflects the correct price for the selected variant
Pricing & Tax
High-Value Product ($9,999.99)
High-Value Product ($9,999.99)
A product at a very high price point.
Expected behavior:
- Offer returns
cost.subtotal.amountSubunits=999999 - Checkout completes successfully
Sale / Compare-at Price
Sale / Compare-at Price
A product with a compare-at (original) price showing a discount on the storefront.
Expected behavior:
- Offer returns the selling price ($19.99), not the compare-at price
Tax-Exempt Product
Tax-Exempt Product
A product that is not subject to sales tax.
Expected behavior:
cost.tax.amountSubunits=0- Total = subtotal + shipping (no tax component)
Gift Card
Gift Card
A gift card product with no shipping required and no tax applied.
Expected behavior:
- A free shipping method is returned
- No tax applied
- Fulfillment is digital (email delivery)
Product Data Edge Cases
No Images
No Images
A product with no product images uploaded.
Expected behavior:
- Offer returns empty images array
- Checkout completes without errors
Long Title & Special Characters
Long Title & Special Characters
A product with a 255-character title containing unicode, accented characters, and special symbols.
Expected behavior:
- Product title returned without truncation or encoding issues
- Checkout completes without errors
Discounts & Promo Codes
Manual Discount Code
Manual Discount Code
A product with a discount code that can be passed via the
promoCodes field.Expected behavior:
- Pass
promoCodes: ["TESTDISCOUNT"]when creating the checkout intent - Offer
cost.discount.amountSubunitsreflects 20% off - Only one discount code per order
Discount That Crosses Free Shipping Threshold
Discount That Crosses Free Shipping Threshold
A product priced just above the free shipping threshold, with a discount code that drops the subtotal below it.
Expected behavior:
- Without discount: free shipping applies
- With
SAVE10: subtotal drops to $42, free shipping no longer available, shipping cost increases
Commissions
Commissions are configured at the store level, not per product. Any product on the test stores earns a commission when the order completes:Commission Test Order
Commission Test Order
Use any product on either store. For a cheap end-to-end test:
Expected behavior:
- When the intent reaches
awaiting_confirmation, the offer includes a projectedcommissionfield with the amount you would earn ({ amount, estimate: true }) - After the order completes, the commission is recorded and returned by
GET /api/v1/commissions?checkoutIntentId=<id>
Commissions must be enabled on your developer account. If
offer.commission is missing on these stores, or no commission appears after checkout, reach out to us to enable it.Checkout Failures
Always Fails During Checkout
Always Fails During Checkout
A product that always fails during checkout submission at the merchant. Useful for exercising post-payment failure handling.Expected behavior:
- Offer retrieval and checkout intent creation succeed
- Checkout intent fails with reason
order_placement_failed
Simulating Payment Failures
No special product needed — use Stripe’s test card numbers to simulate different payment outcomes with any product above.Card Decline Scenarios
Use any future expiration date and any 3-digit CVC.
3D Secure / Authentication Challenges
Malformed Input & Validation Errors
Rye returns synchronous 400 errors for invalid buyer data. No special product needed — just send bad inputs.Address Validation
Buyer Identity Validation
Failure Reason Reference
When a checkout intent fails, the response includes afailureReason with a code and message. Here are the most common failure codes you may encounter during testing:

