pull down to refresh

Maybe @k00b can say if there is already an update on this? :)
The problem is figuring out how to prorate changes. Otherwise, it's easy to do. If any of you want to brainstorm some prorating rules here or on GH, I'd be happy to implement them.
reply
Maybe it’s not required. If a territory founder wishes to change their payment plan, they have two options. Option A: Wait until the current billing period expires before subscribing to the new conditions. Option B: Switch immediately and accept the loss of the already paid funds. This seems fair from a user's perspective and avoids the complexity associated with prorating rules. Not sure if it adequately addresses the problem, but would that be feasible?
reply
I think that's a good low effort way to present the option, but in a few instances people picked one billing type and immediately/shortly wanted to switch.
Maybe prorating is too high of a bar right now even if it's the only thing that meets expectations.
reply
Ok, I understand the edge cases. It might still be a good starting point, though. Would there be a way to implement a refund based on the remaining payment period, with the amount then being deducted from the new subscription?
reply
There's a way to do anything. It just needs to be decided what is worth doing relative to everything else worth doing.
reply
There are 4 cases as outlined below when changing from the billing type in the row to one in the column, so I need to decide what exactly to do each of these 4 cases.
billing typemonthlyyearlyonce
monthlyxx
yearlyxx
once
reply
Perhaps it just goes into effect during your next billing regardless of the change you make. For monthly->once when you enter your next grace period, renewing means paying the once price and never paying again.
reply
Based on the four scenarios you have described for changing billing types, I will try to break down each scenario. Additionally, I would also suggest prorating scenarios for changes during the billing cycle, aka outside the grace period.
1. Monthly → Yearly a) Grace period: The new plan could take effect at the start of the next billing cycle. b) During billing period: When switching from a monthly to a yearly plan, calculate the unused portion of the monthly payment and apply it as a deduction towards the yearly fee. This would ensure that users are not paying twice for the same period.
YearlyPaymentAdjusted = YearlyRate - (MonthlyRate / DaysInMonth * DaysUsed)
Example: Switching after 4 days in a 31-day month.
1,000,000 - (100,000 / 31 * 4) ≈ 987,097 sats
2. Monthly → Once a) Grace period: The one-time payment could be made effective at the beginning of the next billing cycle. b) During billing period: For a switch from a monthly to a one-time payment, calculate the cost of the days used under the monthly plan and deduct this from the one-time payment.
OncePaymentAdjusted = OnceRate - (MonthlyRate / DaysInMonth * DaysUsed)
Example: Switching after 7 days in a 30-day month.
3,000,000 - (100,000 / 30 * 7) ≈ 2,976,667 sats
3. Yearly → Monthly a) Grace period: Switch to a monthly plan at the beginning of the next billing year. b) During the yearly billing period: If switching from a yearly to a monthly plan, calculate the credit for the unused portion of the year and apply this towards the monthly payments, refunding the remaining balance. Note: This scenario may not align with your business interests, but follows the pattern described for the other changes. Maybe just reconsider that option
MonthlyCredit = (YearlyRate / 12) * MonthsRemaining
Example: Switching after 6 months.
Step 1: (1,000,000 / 12) * (12 - 6) = 500,000 sats Step 2: 500,000 - 100,000 (new monthly payment) Step 3: 400,000 refund
4. Yearly → Once a) Grace period: The one-time payment plan becomes effective at the start of the next billing year. b) During the yearly billing period: For switching from a yearly to a one-time payment plan, determine the cost for the portion of the year already used and subtract this from the one-time payment amount.
OncePaymentAdjusted = OnceRate - (YearlyRate / 12 * MonthsUsed)
Example: Switching after 3 months.
3,000,000 - (1,000,000 / 12 * 3) = 2,250,000 sats
I'm not entirely sure if this addresses all outcomes, but it could provide a fair method to calculate prorations for founders who wish to change their billing types.
reply