7 ms·
Show HN: PuBilling – Embeddable billing portal for your SaaS app
- mfrye0 8y agoLooks pretty cool. Heads up though. There's a bug on your sample page: https://www.pubilling.io/sample https://www.pubilling.io/sample When you click the "Edit" button for the CC, the UI shrinks into nothing...
- raphaelcosta 8y agoThanks! Which browser are you using?
- scoggs 8y agoIt's happening for me on Chrome Version 70.0.3538.110 (Official Build) (64-bit), for what it's worth. Seems like the Edit Window / Modal / Popup has some sort of resize mechanism to it or tied to it and it repeats shrinking the width of some container on a loop but there's nothing to tell that loop when to stop / what minimum width the loop / shrinking should end at.
- raphaelcosta 8y agoThanks, trying to reproduce here.
- mfrye0 8y agoFor sure. Google Chrome Version 71.0.3578.98 (Official Build) (64-bit)
- raphaelcosta 8y agoThanks, trying to reproduce here.
- raphaelcosta 8y agoI was not able to reproduce, but I changed some resize code, could you please check if it's still happening? Thanks!
- hoffs 8y ago71.0.3578.98 (Official Build) (32-bit) still happening as of right now
- raphaelcosta 8y agoWe identified the issue and fixed! Thanks again!
- bdibs 8y agoIt's also happening on Firefox 64.
- nacs 8y agoAnd Firefox 63 on Mac. It's quite hilarious actually because it starts squeezing everything to the left then it literally just poofs out of existence leaving just the "X" of the close button behind.
- nacs 8y agoHere's a quick video of it in Firefox 63 on Mac: https://gfycat.com/EssentialUglyHarborporpoise https://gfycat.com/EssentialUglyHarborporpoise
- raphaelcosta 8y agoWe identified the issue and fixed! Thanks!
- antoineMoPa 8y agoThat looks really nice for people who want to focus their energy on other parts of their apps.
- raphaelcosta 8y agoThanks!
- yerasame 8y agoYou've got a typo here in the FAQ: >It's PuBilling another payment... Should be >Is PuBilling another...
- raphaelcosta 8y agoThanks for the help! Fixed :)
- bryanrasmussen 8y agoI see you can check your invoices in the billing panel, but nothing about how those invoices are sent out?
- raphaelcosta 8y agoWe have plans to add this feature in the future, but it's not a priority today since Recurly and Stripe already send those invoices to the customers. Do you have any particular need for that? Thanks!
- bryanrasmussen 8y agoI don't, I was just wondering how the invoices are sent since in some countries you might have legal requirements for invoices that the solutions you build upon might not support. In reading the description (albeit quickly) I did not understand if Stripe was sending the invoices or you were just using them for payment, generating invoices sending, or some 3rd way. Which made it hard for me to figure out if there were some possible requirements issue.
- ryanwaggoner 8y agoI may be missing something, but are Stripe customer IDs considered secret? I never really thought of them as secret, and if they’re not, it looks like you’re opening up an unauthenticated API with read/write permissions on my Stripe account?
- raphaelcosta 8y agoWe are using your Stripe token in our backend to get the subscription information, and we also rely on identity verification to make sure that none of your customers can impersonate another one by guessing another Stripe Customer ID (https://docs.pubilling.io/quick-install/identify-verification https://docs.pubilling.io/quick-install/identify-verificatio...). Make sense?
- ryanwaggoner 8y agoWell yeah, it does make sense, but why is it not shown in the sample code on your homepage?
- raphaelcosta 8y agoGood point, I was trying to make the snippet simpler, since this is not required for Stripe setups, but I agree that this should be more clear. Thanks for the feedback!
- ryanwaggoner 8y agoSorry, now I’m more confused. Why isn’t it required for Stripe? The docs say it’s required for everyone.
- tasubotadas 8y agoDo you support EU VAT?
- raphaelcosta 8y agoWe have support for Recurly but not for Stripe today, but we can easily add support for that. Do you have any specific need?
- Cenk 8y ago+1 for EU VAT, if you can automate how much VAT to charge whom that would make life much easier. VAT percentage based on country (default selection via IP location would be fantastic) and wether it’s a person or company. Killer feature since Stripe lacks any support for this and coding it from scratch is a pain.
- aidos 8y agoFYI Chargebee handle EU VAT rules for businesses and consumers, if you’re looking for a solution there (it’s the main reason I started using them)
- runako 8y agoSolid idea, after having built N billing portals in the past, I really like the idea of being able to drop in a billing portal. That said -- raise your prices. You might try something that's more explicitly tied to revenue. But if not, I would try the 3 tiers at 39/99/199 (or 49/199/299). Maybe make a 0-10 customer tier that's lower cost. The bigger customers will demand more features to justify the price point, but many of those features will likely prove relatively easy to implement (SSO, 2FA, let them pay you via PO).
- raphaelcosta 8y agoThanks, @runako! Thanks for your feedback regarding pricing, get tied to revenue could be a great pricing strategy. We got featured on ProductHunt today, would be very nice to have your feedback there also.
- jjeaff 8y agoI think if you tie to revenue, be sure to create a cap. Because if your price is going to go up and up forever for something that everyone knows is mostly fixed cost, then people like me are going to be calculating the point that it would be cost effective to do in house and then jump ship when we get to that point.
- cdolan 8y agoI agree here - if you tie to revenu and get too expensive (to me, over $500-100 a month), I’d find the dev time to replace this before we “overpaid”.
- runako 8y ago> over $500-100 a month Businesses come in different sizes, and it's tempting to project startup-level finances onto your customers. But $100/mo is not an expenditure of note at most businesses. (Neither is $1k/mo, but that starts to be a different market.) Some back-of-the-envelope math on costs for building a billing portal: - First pass of Stripe integration including displaying receipts, upcoming bills, edit of payment info, etc. : at least two solid weeks to more like a month of dev time. Yes, most devs can get something shipped much faster. But to achieve a battle-tested, secure, reasonably complete implementation will take a few revisions. A month of dev time in the US will vary, but $10k fully loaded isn't out of the question. If you're using an agency, this could be much higher. Other features your business may want will drive this cost higher: Salesforce integration, QuickBooks integration, operator-facing tools so customer service reps can see what the customer sees, etc. But let's just say $10k+ of dev time for the implementation. Then don't forget you just added a bunch of code to your codebase that will need to be upgraded, tested etc. when you rev platform versions. If you added any dependencies specifically for the billing portal, congratulations on having your billing portal now drive your release schedule. The billing portal adds permanent technical debt to your project without helping you meaningfully differentiate. For a small app, the billing portal code could reasonably be bigger than the rest of the app. I have seen this too. Crucially, while you're building this code, you're not building code your customers care about. Zero of your customers would upvote "build billing portal" over anything relevant to why they are your customer.
- phoenix24 8y agoI like how you've generated "terms of service" & "privacy policy". But why not add those to your website, as opposed to 3rd party links?
- raphaelcosta 8y agoWe used third-party services to generate that, and that's why we redirect. We are looking to migrate that to our end in the future. Thanks for the question!
- alehul 8y agoReally cool concept, thanks for sharing. :) Small nitpick, but there's an extra l at the end of "renewal" in the mockup. The capitalization of "Next Subscription renewall" is also a bit off-- maybe consider "Renews on:" or "Next renewal"? On the pricing side, I definitely agree with runako. Prices are much easier to lower than raise, and so you should experiment early on with the higher end.
- raphaelcosta 8y agoThanks for the feedback! I will fix those typos.
- InGodsName 8y agoWhat stack does it uses? Where is it hosted? Whag services does it uses?
- raphaelcosta 8y agoThe stack is Rails, React and GraphQL. We are using Heroku for hosting right now, but we are looking to move to AWS.
- ykevinator 8y agoMissing a 0 in screen shot?
- raphaelcosta 8y agowhere? :)
- yazr 8y agoDo you (plan to) support (multiple) one-time billings ? I am kinda of looking for a library to manage each customer billings and balance
- seanwilson 8y agoNitpick but for the embed snippet, why not this simpler snippet? <script src="https://app.pubilling.io/sdk.js" async></script>
- raphaelcosta 8y agoThanks! I basically checked how other embeddable companies are doing, but you are right, I think it could be simpler now, thanks!
- artur_makly 8y ago2 alternatives who tie pricing to revenues: https://www.servicebot.io/pricing https://www.servicebot.io/pricing https://www.chargebee.com/pricing https://www.chargebee.com/pricing this one is free: https://www.chargebee.com/open-source-customer-portal/ https://www.chargebee.com/open-source-customer-portal/