#lukas-customerportal-defaultpm
1 messages · Page 1 of 1 (latest)
Hi 👋
Can you share a couple API request ID that demonstrate this behavior? They will start with req_
Here's how you can find a request ID: https://support.stripe.com/questions/finding-the-id-for-an-api-request
@brisk atlas can you please keep the conversation in this thread?
Yes, if it help, I can send you the customerPortal config ID
Which one? Dashboard or API? And yes, the configuration would help
Configured in dashboard. Extracted the ID and using it in API
I just tested this using a portal session to add a payment method. It set the payment method as the default for that customer
Could you share some session IDs so I can look at the flow to see what is going wrong here?
We re using the nuget stripe.net and want to send the SubscriptionCreate reqeust.
This works perfectly well, if the default payment method is set and throws an error, if not.
Problem identified: The user adds a payment method in customer portal, that is not flagged as default (expect customer finds a sneaky way to flag it via context menu)
where can i find a session ID?
Thank you, I've gathered that so for. So I am trying to find examples of when this is occurring
You shoud be able to find them in the developer logs
In you Stripe dashboard
I created a very basic Configuration via the API using the following payload:
"features": {
"payment_method_update": {
"enabled": "True",
},
},
And when I added a Payment Method, it was set as the default payment method
In the form the customer users, there should be a checkbox allowing them to indicate this should be their default payment method
Here is my example
But if unchecked: The use wont have a default subscription, but an attached one for the subscription?!
The is a pretty flaky state
It is checked by default
So the user actively unchecks it
I don't know what you mean by this sentence
The use wont have a default subscription, but an attached one for the subscription?!
give me some minutes to double check pls
Okay. Ultimately it is possible for the customer to set up their payment method as their default when entering it in the Customer Portal. The Checkbox is checked by default so that means they are actively choosing not to set it as default.
You can still adjust the Subscription to charge the saved payment method or update the customer to use that payment method as the default
There is no such checkbox (sry screenshot is German)
Can you share an example API request where you created this portal session?
Using the stripe.net:
var service = new SessionService(stripeClient);
var options = new SessionCreateOptions
{
Customer = customer.Id,
ReturnUrl = returnUrl,
Configuration = stripeOptions.CustomerPortalConfig,
Locale = locale,
};
var session = service.Create(options);
CustomerPortalConfig = the ID from the config I built in dashboard
stripe.net version 42.8.0
That is not what I am asking for
Please share the ID of a billing portal session or a request ID
ID is bpc_1NO0ADByMgy4BGwwSciCdZEd
I can send you a customer portal link as well, if that's helpful
Taking a look now
I don't see this customer updating their payment method through a billing portal
I do see what you mean, in terms of not seeing the default checkbox as an option
Okay so this did not set the the default payment method for the customer but it did set it for the Subscription
The latest event that was generated from that action was this one: https://dashboard.stripe.com/test/events/evt_1O4Rf2ByMgy4BGwwV064k8LT
And you can see there is now a default_payment_method set on that Subscription
In my test the issue I had was my customer did not have an active subscription. So they were updating their own paymen methods.
But with your customer, they are managing payment methods for that subscription
exactly. Catch is:
I cannot infuence the customer's behavior in the customer portal.
After adding the payment method, the customer now needs to find the context menu and click "as default".
This will never happen
Unfortunately that is up to the Customer. You can listen to webhooks such as payment_method.attached to get notified when the customer creates a new PM and set it as their default. Here is a recent example: https://dashboard.stripe.com/test/events/evt_1O4Rf0ByMgy4BGwwSnHyLVim
Or you could build your own UI to collect these details from the Customer
We were already thinking about this workaround:
listen to webhooks, adding payment methods as default if customer didn't.
But this would catch a mistake made by (stripe) design, IMAO.
Better:
If a customer has just a single payment method set (e.g. attached to subscription): Make it always a customer's default payment method.
Or:
Stay consistent in customer portal UI:
It's jsut the blue button, that messing up. If the customer would take the other option (marked blue) stripe would instantly flag as default payment method
I guess, it's a bug / finding ...
I am still unclear on what you mean by the blue button here. When I follow the same steps to reproduce the issue the payment methods created are set as the default.
And in the example you provided we did see the payment method created set as the default on the subscription.
"blue button":
marked in red. resulting in payment attached to sub, but not setting default payment method (for customer)
marked in green:
the 2nd option a customer can use.
resulting in payment attached to sub AND set as default payment method (for customer)
Unfortunately, the customer is led to the "blue button" visually
lukas-customerportal-defaultpm
@brisk atlas We don't really have an option to configure this today but we'll flag as feedback to the product team. You should flag to our support team too: https://support.stripe.com/contact
Thanks. Maybe that helps in the future