However it’s not the most elegant way to do, because you have to alter a core file of ghost which could be overwritten by the next ghost update (if you update your ghost version)
Name: Customer will see that on first invoice, so it could be something like “Welcome Discount” or “New User Bonus” etc.
ID: you can let stripe create on or define one, we will need it later for the API
Type: In your case, choose fixed amount discount (7$)
Duration: Once
Open Index.js: /var/www/ghost/versions/3.13.1/node_modules/@tryghost/members-api/lib/stripe/index.js
Insert coupon: "insertcouponidhere", at line 125 as seen in the screenshot (change insertcouponidhere to your ID that we created in the stripe coupon dashboard. Click on your Coupon to see your ID.
Notes:
Updating Ghost will likely overwrite the index.js so you have to repeat Step 3-6
This coupon will be applied to every subscription and customer
If a customer subscribes, cancels and resubscribes, he will get the coupon applied again. So by canelling and resubscribing every month, customers could potentially use this to get your discount every month.
Hi there, I think it is a great idea to make some discount for the first month They can provide something to avoid canceling each time after the discount so it is not a problem.
Two pull requests that are worth looking at. If you enable promo codes in ghost you can then setup first time, onetime, Stripe coupons that give the first month free.