Skip to content

Unlimited first-year promo code rejected with 'minimum amount' in GBP / trial checkout #23300

Open

Description

@mdmohsin7

Product impact (see PRODUCT.md and ISSUE_TRIAGE_GUIDE.MD)

  • Primary loop layer: retrieval-action
  • Involves data loss, failed capture, or broken sync/trust

Describe the bug
Single-use Unlimited codes carry a USD 26900 minimum_amount restriction; checkout in GBP (£209.82) or with a 7-day trial ($0 due) rejects a valid code.

To Reproduce
Open Complete Your Upgrade (Unlimited v2, yearly, 7-day trial, GBP), Add code OMI-4FHY-W6SR.

Current behavior
Error: This code is valid, but your order doesn't meet the minimum amount.

Expected behavior
Code applies and yearly Unlimited is free.

Smartphone + device
Android app 1.0.567, Stripe hosted checkout, GBP presentment

Additional context
Reported by 3 customer(s) through support between 2026-10-20 and 2026-10-21. Customer details are intentionally omitted.

Suspected code: backend/routers/payment.py:640, backend/utils/stripe.py:82

Filed from the Omi Support Desk.

Activity

  1. added
    bugSomething isn't working
    retrieval-actionLayer: Search, questions, tasks, exports
    on Oct 22, 2026
  2. Dimank92 commented on Oct 22, 2026

    @Dimank92

    I have resolved this issue in PR #23314 (#23314).

    Summary of Fix:

    • Disables Adaptive Pricing on checkout sessions when a promotion code is applied so currency stays in the promo code's native USD denomination.
    • Suppresses trial period when a promo code with minimum_amount is applied (initial checkout > 0).
    • Implemented seamless fallback to the underlying coupon object if Stripe rejects promotion code restrictions during checkout or subscription upgrade.
    • Added comprehensive unit tests in test_payment_promo_currency_minimum_amount.py (100% passing).

    Payout Wallet: 0xC345C07229307d4f1c7935aD2cAe48e390215808 (USDC)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingretrieval-actionLayer: Search, questions, tasks, exports

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions