Skip to main content
Ask A Question
You’re not receiving notifications from this thread.

Stripe Subscription with Initial setup fee

Gems / Libraries • Asked by Nick McNeany

Hey Everyone,

I'm building a relatively simple subscription based app using Stripe, Devise, Pundit and a few other resources. My only real hangup at the moment is that the subscription requires an initial setup fee, and I'm really having a hard time with it.

A new user signs-up for Subscription-A; Subscription-A has a yearly interval price of $5. Upon signing up the new user gets charged a one-time fee of $10, then the following years gets charged only $5.

I'm currently in the research phase, but haven't found too much on this topic. I normally would show what I've attempted so far, but in this case I'm having a hard time even getting this started.

Any help/ideas/resources/direction would be greatly appreciated!


Hey Nick,

I remember looking this up before, and I believe the recommended thing from Stripe was to basically create a Charge for $10 and then also setup the user on a Subscription at the same time, but give them a 30 day trial. That way you get your setup fee and first month, but the real subscription doesn't start until a month later.

Just googled it again, turns out you can set the account_balance now instead. This is much easier!

You should be able to just follow my Stripe screencasts and pass in this extra parameter and you'll be good to go!

Awesome! Thanks, Chris!! Exactly the nudge I was looking for!!!

I'll report back, incase anyone else is interested.

I know this is old but for anyone on Google: because of the possibility of the customer not paying the subscription fee I think this is a better solution.

Esentially you:

  1. Create a customer
  2. Create a draft invoice item with the flat fee
  3. Create the subscription (this is the recurring plan).


Login or Create An Account to join the conversation.

Subscribe to the newsletter

Join 30,005+ developers who get early access to new screencasts, articles, guides, updates, and more.

    By clicking this button, you agree to the GoRails Terms of Service and Privacy Policy.

    More of a social being? We're also on Twitter and YouTube.