SOP — Fix “No such customer” Stripe error on Plan & Billing → Subscribe
Last updated: November 7, 2025
Applies to: All CS agents
Goal: Resolve Stripe error resource_missing → No such customer: 'cus_…' that blocks plan subscription.
Why this happens (plain English):
The workspace is trying to start a subscription in the customer’s Stripe account, but the stored customer_id belongs to a different Stripe account (often our platform’s Stripe). Result: Stripe can’t find that customer in the target account and throws “No such customer.” Synthflow supports connecting customer/agency Stripe accounts for plans and billing, so the correct customer_id must exist in the same Stripe account that receives the subscription call.
A. Confirm the symptom (30–90 seconds)
Reproduce: Go to Plan & Billing in the customer’s workspace → click Subscribe.
Capture the exact error payload popup (it will include something like
code: "resource_missing"andmessage: "No such customer: 'cus_…'").Copy the request_log_url from the error (opens the exact event in Stripe, showing which Stripe account handled the request).
B. Identify the account mismatch (2–3 minutes)
Open the Stripe log via
request_log_url.In the Stripe log page, look at the Account (you’ll see an ID like
acct_…). That’s the Stripe receiving the request (usually the customer’s/agency’s connected Stripe).Copy the failing
customer_id(e.g.,cus_RzD5l…).In that same Stripe account (acct_… from step 2), search for the
customer_id.If found: This SOP likely doesn’t apply—proceed to D. If the customer already exists but it still fails.
If NOT found: You’ve confirmed the classic mismatch (customer exists in a different Stripe account).
Tip: If you also have access to our platform Stripe, quickly search that cus_… there—you’ll usually find it. That confirms the mismatch root cause explained above.
C. Fix the mismatch by creating the customer in the correct Stripe account and updating the mapping (3–5 minutes)
You’ll do two things: (1) create a Stripe Customer in the target Stripe account; (2) tell our backend/UI to use this new customer_id.
Create the customer in the target Stripe
In the Stripe account that handled the failed request (
acct_…from B‑2), go to Customers → + New.Create the customer with the same email used in the workspace (keep it minimal: email is enough).
Copy the newly created
cus_…ID.
Update the stored customer ID in Synthflow
In our admin/billing backend for that workspace (or the place where the email
customer_idmapping lives), replace the oldcus_…with the new one you just created for the correct Stripe account.Save.
Test
Return to Plan & Billing → click Subscribe again.
Expected: subscription initializes and billing activates for the selected plan.
Note: Synthflow’s billing/plan flows rely on the Stripe integration for managing customer and plans under the connected account; make sure you are aligning the customer_id with the same connected Stripe used for plan creation and subscription.
D. If the customer already exists in the correct Stripe but it still fails
Work through these quick checks:
Live vs Test mode: The
cus_…might be in Test while the subscription call is in Live (or vice‑versa).Wrong stored ID: Ensure the mapping in our backend uses the exact
cus_…from the same mode and same account shown in the Stripe log.Multiple customers with same email: Confirm you picked the right
cus_…(the one in the same account receiving the request).Plan/Price on a different account: If the price/product was created under a different Stripe account than the one receiving the call, escalate (see §G).
If none of the above resolves it → proceed to Level‑2 escalation.
E. Customer‑safe update you can paste in the ticket
Update: We identified a billing profile mismatch on the payment side. I’ve aligned your billing customer record and re‑initialized the subscription flow. Please try the Subscribe button again now. If anything looks off, I’m here to help right away.
F. Documentation & closure checklist
Add an internal note to the ticket with:Error snippet (code/message), the
request_log_url, and the acct_… it targeted.Old
cus_…vs newcus_…and where they lived.Final test result (Subscribe succeeded).
If this scenario is likely to repeat, suggest a KB addition: “Creating/Aligning Stripe Customers for Connected Accounts.”
If you created placeholder customer records in Stripe, make sure email is correct and PII practices are followed.