#silverry_best-practices
1 messages · Page 1 of 1 (latest)
👋 Welcome to your new thread!
⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
🔗 This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1264784702019993682
📝 Have more to share? Add more details, code, screenshots, videos, etc. below.
Below are links to other discussions we've had with you in the past week in case you want to review that information. If your question is related to one of these previous discussions, please provide a comprehensive summary of the current state and what you need help with now. We help many users simultaneously, so a summary allows us to resolve your issue as soon as possible.
- silverry_best-practices, 4 days ago, 10 messages
Could you share the example subscription ID (sub_xxx) for the scenario you described?
sub_1PebvQRsobVb1TR4gHfAGpsf
Please help me take a look at how to solve this problem, thank you.
In https://dashboard.stripe.com/test/subscriptions/sub_1PebvQRsobVb1TR4gHfAGpsf, the subscription was downgraded to monthly plan, then upgraded to the yearly plan again around the same time. I don't see where the subscription was only downgraded to monthly plan after the yearly plan was expired.
Customer portal doesn't support downgrading/upgrading the plan after the current plan ends. Any change on the plan will take effect immediately.
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
The only way to change the plan after the current plan ends is to use Subscription Schedule API (can't be done via Customer Portal). Here's the guide on how this can be done: https://docs.stripe.com/billing/subscriptions/subscription-schedules/use-cases#changing-subscriptions
thank you,confirm one thing, so the current Customer Portal supports subscription changes that are only immediate, right?
So what is this option used for?
Hi @spiral inlet I'm taking over this thread. Give me a sec to catch up
thank you
Yes the subscription update through billing portal is immediate.
so Will the money for the previous plan be refunded after the plan change?
If it's a cancellation, it can wait until the end of the plan to cancel, but if it's a change, it can only take effect immediately?
You mean cancellation through billing portal? in that case cancellation will only take place at the end of the current billing cycle.
thansk.so if a user change the plan,will the money for the previous plan be refunded after the plan change?
No, the fund will be added to the customer's credit balances and used for the next invoice.
How is the refund calculated? For example, if I paid for a monthly plan at $100 and changed my plan to a $10 monthly plan on the 10th day, is it a full refund or what?
It'll be prorated, see https://docs.stripe.com/billing/subscriptions/prorations
so the fund could only be used for my saas or can be used for other saas?
Are you asking if your customer can use their creidt balance to pay invoices generated from other Stripe accounts?
Yes, for example, if my product is A and a user receives a $100 refund from me, is that $100 only usable for payments within product A, or can it be used freely (such as subscribing to product B)?
Are product A and product B created in your Stripe account?
No, I developed SaaS-A, and other developers developed SaaS-B.
Ok, no they can only use the credit balances on invoices created in your account.
So let me confirm this: if I continue to use the Customer Portal, and a user subscribes to product-A for $100 on a monthly basis in my SaaS product and then changes to product-B which is $30 after ten days, they will receive a prorated refund, for example, $60, based on the ratio (which I define according to the rules in the documentation you sent). Is it correct that this $60 refund can only be used within my SaaS product?
Yes
The ratio mentioned above is it only based on time, or can it be based on other factors (such as the remaining number of tokens)? Which documentation should I refer to for development?
or if product-B comes with 300 credits and product-A only has 100 credits, when a user subscribes and uses up all the tokens and then downgrades to product-A, they would receive a refund? Essentially getting the use of 200 credits for free?
No, usage based billing isn't subject to proration.
If I do not set it to be prorated, will the user still receive a refund when changing plans?
like this
No, just to clarify. The funds will be returned to customer's credit balances, not refund.
Could you please explain the difference between these two concepts?
credit balances and refund?
Credit balances are funds that you can use to offset the future invoice generated for the same customer. They can't be transferred back to customer's original payment method. You can read more here https://docs.stripe.com/billing/customer/balance
Refunds are sent back to the customer's original payment method (i.e., card, bank account) https://docs.stripe.com/refunds#refund-requests
If he changes his plan, will his payment cycle change? For example, if he subscribes on the 1st and changes the plan on the 10th, will the next payment date be on the 1st or the 10th?
It depends. If the the new price's billing interval remains the same, the billing cycle anchor remains the same unless you change (https://docs.stripe.com/api/subscriptions/update?event_types-invoice.payment_succeeded=#update_subscription-billing_cycle_anchor) it to now
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
Thank you very much for your help, I am extremely grateful.