So, I’m testing some Stripe subscription stuff (using Bubble’s Stripe plug-in) and I’m getting a little weird behavior. (All of this is in test mode and keys are configured correctly, etc.)
First, when I “Subscribe the user to a plan…” this works successfully, but “Plan name” field does not seem to come across / is empty. Here’s a repeating group that shows a test user’s subscription status:
While the “Plan ID” is there, and the subscription start/end dates are there, “Plan name” is empty…
I created the Product and Plans in my Stripe Dashboard, if that makes any difference.
Anyone run across this before?
Second, I’m getting some weirdness in the “Subscribe the user to a plan…” workflow action interface. While my plans are actually selectable, again the "Plan name"s do not show up in the dropdown. I just see a bunch of blanks and can only see what I’ve selected once I’ve clicked on one.
The field then populates with what would appear to be the “Plan ID”. Again, the Plan names are simply not coming across to Bubble.
I’ve seen similar issues reported in past forum posts, but without much in the way of explanation/resolution. In one case, I see someone reloaded their editor and things started working, but I’ve tried this, different browsers, etc. and always get the same behavior.
My subscribe to a plan workflow step dialog looks like this:
Yeah, that’s what I temporarily had to do. I’ve not checked the second part of this (that Plan Name comes across as populated rather than null) but I’m assuming so.
What Bubble calls “Plan Name” is known as the plan’s “nickname” in the Stripe Dashboard, BTW.
Aaaand… of course, the issue is not yet entirely fixed. While Plan Names populate in the dropdown, when a user is subscribed to a plan, that user’s subscriptions have a null for Plan Name. Example:
This happens when subscribing a user in test mode?
First, ensure that that plan actually exists. If you had to work around the issue I reported, it could be that you signed folks up before by hard coding the plan ID.
The way you’re “supposed” to do this in Bubble if you want their plug-in to work is as follows:
The way that Bubble Stripe plug-in ensures you are selecting the same plan in test and live mode is based on the Plan IDs.
So in Stripe, create your Product. These don’t have to be identical in live mode and test, but it doesn’t hurt.
Create your plans for the product. When you create these DO NOT let Stripe automatically assign Plan IDs. Give them custom names.
Your plans in test view should HAVE THE SAME custom ID in both live and test.
So mine are like:
Nickname: Monthly Calendars Subscription
Plan ID: monthly_calendars_sub
In BOTH test and live.
THEN, Bubble will sub the user to the equivalent plan in both development (which accesses Stripe in test mode) and live version (which accesses Stripe in live mode).
BTW, this issue of Plan Names not coming across was fixed by the Bubble team a couple of days ago and all works as expected again. (A plan’s “Plan name” in Bubble is the plan’s “nickname” in the Stripe Dashboard interface, BTW.)