#rovarma
1 messages ยท Page 1 of 1 (latest)
Hello ๐
Can you share example request IDs for these so that I can take a look at what you're seeing?
https://support.stripe.com/questions/finding-the-id-for-an-api-request
Find help and support for Stripe. Our support center provides answers on all types of situations, including account information, charges and refunds, and subscriptions information. Get your questions answered and find international support for Stripe.
yep, hold on
oh sorry, not that one
this one: req_vf5VpvR9AfhIH4
if you look in the subscription in question, you'll see that there's a 50% discount coupon applied as test (this is all in test mode)
Can you send me the actual body you get back from that call? (Unfortunately bodies of get requests aren't logged in a way where I can see it here)
I'm not sure if I can, I'm using the C# SDK
so I only get the parsed object back
will have a look..
actually, aside from the preview being wrong, it seems this is just broken in general
I just tried to see what would happen if I completed the payment anyway. In my test case I'm going from 1 -> 2 seats. The preview for that is incorrectly showing 0 for all amounts, but if I continue with the update anyway, I can see an invoice is created with a zero total
see in_1M5Vl8By4su9ppSNu1YTfsTs
That is strange. Thanks for the ID, still catching up on some other threads but will be able to check it out in a minute
so the flow of events in my test case was:
- purchase single (1) seat without any discounts applied @ 289 / seat. This was done a while ago (on Oct 20), I'm just reusing an existing test account
- Apply a 50% discount through the dashboard to the subscription (sub_1Lv0VUBy4su9ppSNUNHXu0Je)
- Attempt to add a single (1) seat to the subscription via our custom UI. This should be prorated based on the current date (Nov 18), with the customer being charged immediately
- This results in the preview returning zero for all totals in the preview
- And going through with the subscription update (i.e. 1 -> 2 quantity) results in a zero invoice being actually generated for this update by stripe, so the customer is not charged at all
Hey apologies but I am still looking in to this. The new Invoice showing the same results as the upcoming invoice endpoint is a good sign that this is a more genral subscription behavior question. Still looking and will get back with what I can find
yes, I thought so too. Are coupons supposed to work with subscriptions like this? The dashboard interface seems to indicate that it is, but it's hard to believe that something as basic as updating quantity would be broken when combined with coupons.
And so the end goal is to charge the user for half of the seat that you are adding basically?
not specifically, the 50% is just a test discount I'm trying out here
the idea is:
- the customer has already purchased a subscription in the past with a number of seats (without coupon)
- they'd like to add more seats and we've negotiated a discounted rate with them. We know Stripe has support for tiered pricing, but we don't normally offer that to users, so we haven't set that up.
- Our thinking was that we could just apply a coupon for the discount we've negotiated to their existing subscription and that they could then add the seats they need via our normal interface. The thinking being that stripe would charge them
<normal prorated price>(they are in the middle of their subscription period) -<discount>and then on the next billing cycle they would just be chargedfull price-discount
(where discount is a percentage of whatever the normal price is of what they're purchasing)
Gotcha
So I think I know the issue you are running in to but am not immediately sure how you can best get around it.
Basically, when you update a subscription and prorate it, Stripe checks what the user has already paid, and what they will owe, and then lines them up against each other. Here, the user has already paid 1x the seat price, when upgrading Stripe sees that the user will owe 1/2 of 2x the seat price, which is of course 1x the seat price, which the user has already paid.
So the goal is that the user pays for 1/2 of the seat price (prorated for how far along in the year we are). I am trying to think of the way to get the discount and the proration out of conflict here
okay, so are you saying that this is basically an unfortunate choice of 50% as a discount price?
and that any other discount would basically work?
(and also not exactly doubling the amount of seats in my test case I guess...)
That depends on your goals. If you do want that initial yearly subscription to be discounted as well, then this behavior should line up with what you are trying to do. If you want to keep all the funds from that initial yearly payment and charge 50% or whatever on the new seat, I think that will take some more code to get the correct behavior
no, I think I understand now and I think this behaviour is fine
I don't know if you could really do anything else thinking about it some more, because on the next billing cycle the discount would apply over the full amount anyway
so what you're basically doing is:
current: 1 * 289 (paid)
new: <new seats> * 289 * (1-discount)
so in this case that's
current: 1 * 289
new: 2 * 289 * 0.5 = 289
so the invoice comes down to 289 - 289
Exactly. So this is a result of 2 * .5 - 1 = 0 basically
Good to hear that that behavior is actually fine here!
good to hear and I feel a bit silly now ๐ thanks for the help!
No worries at all, there is a reason that that behavior confused me for a while too. Prorations are just weird to wrap your mind around sometimes
yeah ๐