I've done a from-scratch billing system build. As well as the complexities in the article, some of the logic required can result in rather exotic SQL.
Answering questions like "what was the maximum number of concurrent sessions per account between these two dates" with a SQL query is interesting. Making it perform properly adds a layer of fun.
postalrat · 2d ago
In my experience the reason they are so painful is because stuff keeps getting tacked on and nobody wants to clean it up because they are afraid they are going to mess up some crazy business logic that a small fraction of customers depend on.
Basically business logic isn't logical.
chistev · 2d ago
Isn't that what tests are for?
arethuza · 1d ago
Sounds a lot like payroll...
yankcrime · 1d ago
Application error: a server-side exception has occurred while loading www.dmitry.ie (see the server logs for more information).
So is running a website apparently.
xtiansimon · 1d ago
> “Billing isn't just about sending an invoice to your customer. It's the lifeblood of your business.”
Oh. You don’t say?
Continues to say billing is “tough”, but this text seems aimed to wrap it all up in one blog post.
This reads like what you write to convince a small business to hire you as an independent contractor to do their website—sympathize to the emotional pain, then write a survey of challenges to convey knowledge and competence.
Something is still missing as a marketing piece. First, what’s the context—compared to what? Second, this reads like a rational discussion of complexity, but not of difficulty. So what is the author’s challenge? Write the whole code base? Integrate different solutions? What can’t be done with time and diligence?
Not for nothing, this is a timely topic for me. I was chatting with someone about outside service versus custom built solutions. This reads like someone I might be asked to consider to hire, but this isn’t the text that makes me interested to learn more.
porridgeraisin · 1d ago
It isn't just X, it's Y.
Is a classic LLM trope (probably picked up from leading-on twitter slop that go 1/n 2/n,...)
Esophagus4 · 2d ago
Throw in for B2B: large enterprises can actually negotiate their prices with vendors, so the “enterprise plan” might vary in price and structure.
nicbou · 1d ago
What is the recommended approach here? We are going to face this problem soon as we figure out how to pay sales commissions on our product. Basically, we get an arbitrary commission from an insurer, and split it between the broker, me, and possibly a referrer. The payment rules are different for us (one-off percentage plus monthly) and the referrer (fixed one-off). We need invoices for everything, and VAT in most cases.
I dread working on this.
fmajid · 1d ago
I worked on telco billing systems in my youth. One terrifying statistic is that fully 2/3 of such projects failed completely, which is why most telcos still ran on hoary mainframe BSS that were older than the programmers responsible for maintaining them.
journal · 2d ago
Because if it was easy there wouldn't be bureaucratic friction for you to make money from.
Answering questions like "what was the maximum number of concurrent sessions per account between these two dates" with a SQL query is interesting. Making it perform properly adds a layer of fun.
Basically business logic isn't logical.
So is running a website apparently.
Oh. You don’t say?
Continues to say billing is “tough”, but this text seems aimed to wrap it all up in one blog post.
This reads like what you write to convince a small business to hire you as an independent contractor to do their website—sympathize to the emotional pain, then write a survey of challenges to convey knowledge and competence.
Something is still missing as a marketing piece. First, what’s the context—compared to what? Second, this reads like a rational discussion of complexity, but not of difficulty. So what is the author’s challenge? Write the whole code base? Integrate different solutions? What can’t be done with time and diligence?
Not for nothing, this is a timely topic for me. I was chatting with someone about outside service versus custom built solutions. This reads like someone I might be asked to consider to hire, but this isn’t the text that makes me interested to learn more.
Is a classic LLM trope (probably picked up from leading-on twitter slop that go 1/n 2/n,...)
I dread working on this.