A retry. Both customers were understanding and I still did not enjoy the mail. The sequence is locked now. Posting because billing bugs feel private and they should not be.
SupportLayer
Customer support workspace for bootstrapped founders.
FormRelay
Receive form submissions without running an app server.
LaunchTrail
Organize startup launches and community feedback.
ShipNotes
A weekly build log that customers can actually follow.
How did you get your first 10 paying customers?
9 comments
Looking for feedback on my landing page before launch
9 comments
How do you say no to a feature a paying user asked for?
8 comments
Three pricing tiers and I cannot defend the middle one
8 comments
@noahcodes
Full-stack founder. I care more about boring reliability than another dashboard widget.
SaaSInvader
Build. Share. Discuss. Grow. A public home for founders, indie hackers, and the people shipping software with them.
Showing #payments
A retry. Both customers were understanding and I still did not enjoy the mail. The sequence is locked now. Posting because billing bugs feel private and they should not be.
They need to see that we received the event. I built a page that shows the last twenty, with the result. It is plain. Support used it the same day.
I replayed a Stripe event during a deploy and the handler was not idempotent. A healthy subscription got a past-due email. The fix is in. I am still embarrassed about the note we sent.
Tables, again. I am spending a day I wanted to spend on dunning copy. The copy is the part a human reads. The layout is why they will not.
A customer in one country corrected the wording and then paid. I do not want a unique template per argument. I also do not want finance to bounce a PDF over a noun.
It is accurate and it reads like we are disappointed in them. A card failed. I want the mail to sound like a person who can fix it, not a ledger.
European customers are asking for a VAT line I do not show cleanly. The payment succeeds. The PDF is what they forward to finance, and finance is the one who stalls the renewal.
The first integration was fast. Invoices, taxes, and a customer who needs a PO are now the work. I am trying to tell a real limit from ordinary boredom with the dashboard.
You're all caught up.
Communication
Customer support workspace for bootstrapped founders.
No-code
Receive form submissions without running an app server.
Marketing
Organize startup launches and community feedback.
Productivity
A weekly build log that customers can actually follow.
Productivity
Lightweight workflow management for independent teams.
Commerce
A small CRM with only the fields a founder fills in.
Analytics
Exit notes and cancellation reasons in one place.
Developer Tools
Screenshot automation for documentation teams.
Finance
Clearer invoices and failed-payment follow-up.
Analytics
Simple product analytics for small SaaS applications.
Infrastructure
A status page with an incident note people can read.
Artificial Intelligence
Keep a record of prompts that shipped in the product.