#Min.K

1 messages · Page 1 of 1 (latest)

open tulipBOT
#

Hello! We'll be with you shortly. 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.

  • Min.K, 1 day ago, 45 messages
  • Min.K, 1 day ago, 7 messages
  • Min.K, 1 day ago, 3 messages
  • Min.K, 1 day ago, 3 messages
  • Min.K, 2 days ago, 21 messages
  • Min.K, 3 days ago, 4 messages
    and 1 more
patent bloom
#

Can you share the request ID (req_xxx) and response that you performed Upcoming Invoice Retrieval with this scenario? Here’s how you can find it: https://support.stripe.com/questions/finding-the-id-for-an-api-request

remote berry
#

Okay, please hold on a second.

#

Upcoming-invoice RequestId

  • req_mgvsST9ejcjImF
#

and

Subscription Id

  • sub_1OKYLAH7t32LLKQxY39iOCBE
#

I was testing billing immediately via ALWAYS_INVOICE when upgrading, it doesn't seem to reflect this if there is a trial period.

I was testing the case of upgrading from a 20 USD / week product to a 100 USD / week product.

patent bloom
#

Can you share the response of the req_mgvsST9ejcjImF? Stripe doesn't store the response of GET request.

remote berry
#

Ok

#

Request

  • Request Id
    => req_Hd5CAlKF0Q4HXV
curl -G https://api.stripe.com/v1/invoices/upcoming \
  -u "sk_test_51Ms43tH7t32LLKQxNdFEvz8ZB9GQ0AiPZ0k4rquUOAb06Yqk1f5RfM8I8ejUlskv2Fhok5TA1MwETZvbPqn6s7AB00aviEtDl9:" \
  -d subscription=sub_1OKYLAH7t32LLKQxY39iOCBE \
  -d "subscription_items[0][id]"=si_P8q1ffJU992deW \
  -d "subscription_items[0][deleted]"=true \
  -d "subscription_items[1][price]"=price_1OKEiiH7t32LLKQxppI3xVrf \
  -d "subscription_items[1][quantity]"=1 \
  -d subscription_proration_behavior=always_invoice \
  -d subscription_proration_behavior=always_invoice \
  -d subscription_trial_end=1702006412

Response

Check message.txt

What i expected

  • USD 0

But actual response

  • USD 50
#

In fact, upgrading a subscription through the Subscription Update API does not result in any additional payment.

Strangeness

  • The Upcoming Invoice API shows 50 USD.
  • When you actually upgrade via the Update Subscription API, no additional payment is made.
patent bloom
#

Ah! This is expected. With providing subscription_trial_end,

the invoice returned will preview updating or creating a subscription with that trial end

The invoice here is the preview after the trial end.

Reference: https://stripe.com/docs/api/invoices/upcoming#upcoming_invoice-subscription_trial_end

remote berry
#

Then, it seems that the subscription_trial_end parameter must not be passed in order to receive 0 USD, the same as an actual subscription update. Is my understanding correct?

However, even if you do not pass the subscription_trial_end parameter, 50 USD is returned.

patent bloom
#

Then, it seems that the subscription_trial_end parameter must not be passed in order to receive 0 USD, the same as an actual subscription update. Is my understanding correct?
When subscription_trial_end is set, it will always show the preview after trial end. As long as subscription_trial_end, $0 will not be returned for this scenario.

However, even if you do not pass the subscription_trial_end parameter, 50 USD is returned.
Can you share the example request ID (req_xxx) and its response?

remote berry
#

Ok.

I'm on my way to my seat now. Please do not close this conversation. We will respond within 30 minutes.

remote berry
#

I'm back, and i will prepare the answer.

#

Request

  • Request id
    => req_zfqEH3P4apq6U2
curl -G https://api.stripe.com/v1/invoices/upcoming \
  -u "sk_test_51Ms43tH7t32LLKQxNdFEvz8ZB9GQ0AiPZ0k4rquUOAb06Yqk1f5RfM8I8ejUlskv2Fhok5TA1MwETZvbPqn6s7AB00aviEtDl9:" \
  -d subscription=sub_1OKYLAH7t32LLKQxY39iOCBE \
  -d "subscription_items[0][id]"=si_P8q1ffJU992deW \
  -d "subscription_items[0][deleted]"=true \
  -d "subscription_items[1][price]"=price_1OKEiiH7t32LLKQxppI3xVrf \
  -d "subscription_items[1][quantity]"=1 \
  -d subscription_proration_behavior=always_invoice 

Response

Check message.txt

What i expected

  • USD 0

But actual response

  • USD 50
#

i changed request id

#

Presumably, if you perform an upgrade via the Subscription Update API on a subscription that is currently on trial, no invoice will be issued.

Therefore, the actual result of the Subscription Update API will be different from the result of the Invoice Upcoming API.

patent bloom
#

In the event that the subscription is updated within trial period with no invoice issue, then there won't be $0 invoice available. The next upcoming invoice API will create the preview of the next applicable invoice which is after trial ends

open tulipBOT
remote berry
#

You need to let your customers know how much they'll be charged when they actually upgrade.

It would be odd if the estimate was 50 USD, but the actual bill was 0 USD.

I'm wondering how we can match the actual bill with the estimated amount.

true silo
#

sorry, i'm not sure i understand what's your question?

remote berry
#

I want to upgrade a product while the subscription is on trial, and the upgrade will not cost me any additional money because I am still within the trial period.

Before I perform the subscription upgrade, I need to show the customer how much additional money the upgrade will cost them immediately.

Therefore, I use the Subscription upcoming invoice API, but it shows a different result than the actual one.

Actual results.

  • No actual payment when upgrading a subscription that exists within the trial period.
  • 50 USD appears when calling the upcoming-invoice API before upgrading a subscription.
true silo
#

like what river mentioned previously

In the event that the subscription is updated within trial period with no invoice issue, then there won't be $0 invoice available. The next upcoming invoice API will create the preview of the next applicable invoice which is after trial ends
remote berry
#

@true silo

In the event that the subscription is updated within trial period with no invoice issue, 

In this case, wouldn't it make sense to call the upcoming invoice API to tell us that there is no upcoming invoice to pay?

true silo
#

I think the idea here is that a customer is typically interested in how much they actually have to pay and not when there's a $0 invoice. I understand where you're coming from though, but that's not how the upcoming invoice currently works. You can write to https://support.stripe.com/?contact=true to explain your use case/feature request as that helps the product team capture demand for prioritisation and features