Live data from Hacker News

Billing systems are a nightmare for engineers

getlago.com

321–330 of 372 posts

Re: Billing systems are a nightmare for engineers

#321

Earlier quoted context omitted.

The US tax system is the legislative equivalent of spaghetti code / big ball of mud.

Nah it’s not a US thing; tax codes are the same most everywhere.

Some are worse than others mind you, at least for certain consumer facing things that most are discussing here.

Re: Billing systems are a nightmare for engineers

#322
post #258
post #147

Earlier quoted context omitted.

Have you not looked at Stripe? Their product is fairly straight forward to set up

Stripe is fairly straight to set up if you sell products in the US and only accept cards. For selling a SaaS worldwide, Stripe quickly becomes just as much of a nightmare. Taxes, billing, chargebacks, subscriptions, web hooks, different payment methods, VAT validation, card expiries, legislation, changing laws, SCA flows, and my favourite: SCA iframes that become non-responsive on browsers in a certain language. It i…

Exactly that. While stripe would tick my needs, it's gonna cause some headaches on the long run. They can calculate the taxes meanwhile, but you have to still take care of e.g. MOSS yourself.

Re: Billing systems are a nightmare for engineers

#323
post #304

Earlier quoted context omitted.

I used to work at a company that managed the systems for back of house in fast food chains. We moved customers from excel to an online system. Omg when it came to doing labouring in the US. It’s scary. If a person clocks in at 9:52M. The company only has to pay them from 10am. But in other states they must pay from 9:45am. There’s so much complexity in the us due to all states being different.

It's so much worse than that. Some payroll tax laws vary by SCHOOL DISTRICT of the employee.

Much like airport taxes around the world are also different and can change at any time.

It is an interesting challenge though, to create software that is easy to maintain while capturing all these complexities.

Re: Billing systems are a nightmare for engineers

#324
post #194

Earlier quoted context omitted.

By "temporal model" do you mean relational tables of "customer X used Y amount of this resource at price Z from timestamp A to timestamp B" or ... ?

In field metering situations you can have the timeline of each meter, when it records data points, and then you have the different timeline of the backend service, when it actually _receives_ data points. Bonus points if the meters can send data out of order.

You just perfectly described what I’m currently working on. And it’s even more complex than you’ve explained (which I’m sure you’d well know haha)

Re: Billing systems are a nightmare for engineers

#325
post #62

Absolutely agree with the poster. This is my life at the moment. Just to take money for a small piece of software I built. Multiple currencies, trial periods, when in the process do you ask for the creditcard, country specific taxes,... And the worst: invoices. While paddle.com takes care of many of those things - I was shocked after realizing how much work this is going to be. Please think carefully about those thin…

Have also been considering Paddle. Would love to know what you found it's missing?

It's hard to figure out what it can do. Everywhere is their branding. As I understand they just send payment receipts, but no invoices.

I'd like to offer a free trial. While they have support for this, a user needs to enter his credit card right at sign up for trials to work.

So in the end I have to build a hybrid solution where my system gets tied to theirs. Still I don't have full control over all e-mails that are sent to the user. I'm not 100% happy, but better than not charging money.

Re: Billing systems are a nightmare for engineers

#326
post #62

Absolutely agree with the poster. This is my life at the moment. Just to take money for a small piece of software I built. Multiple currencies, trial periods, when in the process do you ask for the creditcard, country specific taxes,... And the worst: invoices. While paddle.com takes care of many of those things - I was shocked after realizing how much work this is going to be. Please think carefully about those thin…

Agreed! But I do prefer to build it for me rather than someone else’s startup, though

Curious, what are you working on?

Re: Billing systems are a nightmare for engineers

#327
post #62

Absolutely agree with the poster. This is my life at the moment. Just to take money for a small piece of software I built. Multiple currencies, trial periods, when in the process do you ask for the creditcard, country specific taxes,... And the worst: invoices. While paddle.com takes care of many of those things - I was shocked after realizing how much work this is going to be. Please think carefully about those thin…

Have you looked at Outseta? https://www.outseta.com/billing and https://www.outseta.com/demo . I haven't used it but it looks great. I'd love to hear what you think.

I haven't but will do. Thanks for the links!

Re: Billing systems are a nightmare for engineers

#328
post #49

One design decision that, for me, seems to simplify things is to consider the "business system" a type of state machine that records all business events and serves as a "source of truth". If the events are not recorded, they have not occurred from the business perspective. A ledger-type architecture can be useful. This means that business events or user operations generate state transitions, which eventually are impl…

For sure; I do think an event based solution working as a source of truth for the billing is the right solution. However it still creates engineering difficulties (making sure you don't ingest the event twice for instance). The ledger-type architecture can definitely work. When we built the system for a fintech, it was actually an event-based architecture connected to a ledger (taking the money out of a wallet). I th…

I was reading this and thought event based system for generating the billable quantities. I am sure billing by api call or data consumption must be done by an event driven system, if my customers are doing a billion requests a month, I probably do not want that data in my database. I would have also thought logging would be your friend in generating reports to reconcile your accounts. Some form of message cache to ensure it has not been processed twice would help.

Re: Billing systems are a nightmare for engineers

#329
post #251

Basically everything about enterprise is a nightmare for engineers. What amazes me (after having worked at some of the most profitable companies in the world) is just how little intelligence the leadership has about their own revenue or costs, beyond "wow huge amounts of money is coming in or going out". And how many critical processes are implemented manually, by individuals, with personal spreadsheets, on their lap…

Yup, I work at a tech company and our entire finance & billing team is using excel exclusively (I think our payroll/leave system is the only thing not on excel), where every other team uses one system or another. All of the higher ups makes decisions based on docs created out of all those excel artifacts. I have to admit, their productivity is quite good and they are kings at aggregating and graphing data in sexy ways. It would be a challenge to build them something that actually works better and can adapt quickly to changes (the software lifecycle too slow for them and now they have to deal with some developer types to get something done, so skip all that noise and stick to excel).

Re: Billing systems are a nightmare for engineers

#330

Earlier quoted context omitted.

I agree it was repetitive, but indeed, I did not want people to think I was trying to pretend to be unrelated to the post. Thanks for the constructive feedback!

Wait, who are you again?

I am Anh-Tho blabla... just kidding :)
Post reply on HN