Bug #7050
openService Subscription payment fails on Stripe submit (Customer & Admin flows)
Description
Steps to Reproduce:
1. Create a Service Subscription.
2. Generate payment link and send to customer via email.
OR
Open the invoice page and attempt payment as Admin.
3. Click the payment link and proceed to Stripe checkout.
4. Enter valid payment details and click Submit.
Actual Result:
Payment fails after clicking Submit on Stripe.
An error is displayed and the transaction does not complete,
in both Customer payment flow (via email) and Admin payment flow (via invoice page).
Expected Result:
Payment should be processed successfully via Stripe,
and the system should redirect to a success/confirmation page
for both Customer and Admin payment flows.
Impact:
Service Subscription payments cannot be completed,
blocking customer subscriptions and revenue collection.

Files
Subtasks
Related issues
Updated by Anonymous 8 days ago
- % Done changed from 0 to 90
- Estimated time set to 2:00 h
Fixed Stripe “No such price” failures by validating variant.stripePriceId in Stripe before using it; if missing/invalid, a new Stripe Product+Price is created and saved back to the variant.
Updated in:
src/services/subscripiton.service.js (createSubscriptionCheckout, createSubscriptionSeason, createSubscriptionFromInvoice, createSubscriptionFromInvoiceOld, createSubscriptionCheckoutRequest)
src/routes/EvergreenInvoice/EverGreen-invoice-controller.js (subscription flow inside addInstallmentAndPayWithSubscription)
Fixed subscription webhook flow when Stripe invoice doesn’t include invoice.subscription:
Added extractSubscriptionIdFromInvoice() to pull subscription id from multiple invoice locations.
Enhanced handleInvoicePaidEvent() to fallback-create a SubscriptionContract from PendingSubscription (and link the original on-store invoice) when no contract is found, then delete the pending record.
Done in src/services/subscripiton.service.js.
Added correct route alias:
Added router.use("/api/v1/subscription", subscripitionRoute); (kept old typo route for backward compatibility).
Done in src/routes/nursery/index.js.
Updated by Sai Mahananda 7 days ago
- Status changed from Resolved to Re-Open
i create requet , qoute and paid the amount its adding doule amount to invoice piad amount and sales in dahsboard please cheack once
Updated by Sai Mahananda 6 days ago
- Assignee changed from Ajit A to Teja Sriram Sangani