A few in back end of SaaS under My Profile show Fatal errors .
In Back end of SaaS it is expired with a different error then the others, states it can’t find subscription , but in Stripe there is a payment for March 2 and it is not cancelled. I was updating the monthly sales tracking google sheets when I noticed anomalies
Reproduction
Switch to customer, View Profile
uws (720.718)
[10-May-2025 16:39:23 UTC] PHP Fatal error: Uncaught Error sending request to Stripe: (Status 400) (Request req_qSaMK6IwBsFIl1)
No such customer: 'cus_JYVqXHHkpNlSgK'; a similar object exists in live mode, but a test mode key was used to make this request.
Stripe\Exception\InvalidRequestException: No such customer: 'cus_JYVqXHHkpNlSgK'; a similar object exists in live mode, but a test mode key was used to make this request.
in
/var/www/html/wp-content/mu-plugins/myslp-payments/include/module/stripe/lib/Exception/ApiErrorException.php:38
...
/var/www/html/wp-content/mu-plugins/
myslp-payments/include/module/stripe/MySLP_Stripe_Payments.php(448)
jhaynes
jhaynes@fruthpharmacy.com , aka, pikewooddigital11)

2)
Second example, issue. Could be the same reason as Fruth pharmacy. If you look in STRIPE under “Steeladvertising or digital studios”, there is shown subscriptions with one of them cancelled. In the back end of SaaS under cheryl.habbe@steeladvertising.com. for site Modern Adoption. Cannot generate Embed because according to our back admin It shows as expired with the “subscription not found” Message under My Profile “Could not locate a valid subscription for this user. Older payment processor subscriptions are automatically purged from MySLP.”
3) email in SaaS is jmercado@americansteelinc.com that I assume is how they would log in but in Stripe “marketing@americansteel” sub_HjN0YE4xk3Aups
In SaaS back end at bottom of their profile it shows blank
Stripe Customer ID: Stripe Subscription ID:
Their site is using dashboard SaaS and does not show expired on their website.
But in our back end admin panel could not find subscription again

Different ISSUE BUT HAS TO DO WITH RECENT CANCELLED SUBSCRIPTIONS
Below Janet Johnson cancelled Feb 17/2025. The deprecated verbiage shows up with all new cancellations.
Example for Janet Johnson info_at_sweetbluemarketing_dot_com

Dev Notes
Upgraded Stripe library.
Add new display of stripe SDK version on Code Versions part of dashboard.
Related: Allow Stripe Live Subscription RO Access
\MySLP_User::__get
Fetching $myslp->User->wp_user
The initial call only has the blog ID (542) set:

So the __get() call in the MySLP_User class tries to fetch by matching on the \MySLP_User:email property…

The getter (__get) fetches the email via the blog_option for admin_email:
$this->$property = get_blog_option( $this->blog_id, 'admin_email' );
HOWEVER, that email is going to get the ORIGINAL email address (pikewood…. in our test case).
The users table (UID: 544) has these fields / values:
- user_login: pikewood…
- user_nicename: pikewood…
- user_email: jhayn… <=== the current user login email
- display_name: pikewood…
The WordPress get_user_by() function can get a user by ID, slug, email, or login.
.. we start with only the blog_id
..
The new MySLP_Customer Class
Create new \MySLP_Customer class to fetch customer (a blog in WPMU terms, or “site” = one MySLP customer) class to rectify this and simplify methods going forward.
\MySLP_Customer::get_primary_user()
Retrieves the primary user associated with the specified blog ID.
If the primary user is not already set, this method fetches the list of users
for the provided blog ID and sets the first user as the primary user.
@param int $blog_id The ID of the blog for which to retrieve the primary user.
@return mixed The primary user object associated with the blog.
WP_User Object
(
[data] => stdClass Object
(
[ID] => 544
[user_login] => pikewood**_dot_com
[user_pass] => $P**0
[user_nicename] => pike**_dot_com
[user_email] => jhay**.com
[user_url] =>
[user_registered] => 2019-09-24 17:44:01
[user_activation_key] => 1**R.
[user_status] => 0
[display_name] => pikewood**_dot_com
[spam] => 0
[deleted] => 0
)
[ID] => 544
[caps] => Array
(
[administrator] => 1
)
[cap_key] => wp_542_capabilities
[roles] => Array
(
[0] => administrator
)
[allcaps] => Array
(
[switch_themes] => 1
...
[administrator] => 1
)
[filter] =>
[site_id:WP_User:private] => 542
)