Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yup, it's a nightmare. Invoices needing to be in specific number sequences. Any corrections need to be dealt with by reissuing a special "corrective invoice". Don't even get me started on geocoding for taxes. Urgh. Also, when you've got the invoicing right, you've got to work out how to do the feeds to the accounting systems so that it all posts to the right place.


Yep, fortunately in Europe we can issue credit notes, making our job easier. I do think giving the possibility to send charges information to a webhook is a great way to start: this data can be plugged to any invoicing system (or any tax, payment providers) who are trying to solve those things. The hardest part for me, when working in that fintech, was to build the whole logic to trigger the invoice, not so much the invoice itself. But this company was a EU company, probably easier to work with invoices


I’ll add that the accounting side can get complicated really quickly. You end up with lots of different scenarios. Earned but unbilled: out of bundle call charges, for example. Billed but unearned: a paid in advance monthly fee, for example - this may need to be recognised as a percentage per day. Etc etc. So much to take into account when feeding to ledgers.


A credit note. How the ** do you handle it in the US without issuing credit notes in your bookkeeping?


We issue a credit note*

* Except (these aren't the right thing to do, but I've seen it in the wild many times):

- When someone in sales issues an invoice with a negative amount on line 3. Hey, if I take payments with invoices, why not give back?

- When someone agrees to settle up by providing free services and throws it on the next bill.


> When someone in sales issues an invoice with a negative amount

I worked briefly with a tax-saas, and to handle refunds I just... did a negative amount. It worked! Except.... I hadn't looked closely. Their API removed the negative. A charge of -$7.92 was just a charge of $7.92. Their docs indicated "we don't accept negative numbers - use a refund transaction instead" but... the API accepted the negative number, then changed it to a positive, and kept running. No error code returned. Really really poor experience, and I hope they've fixed that.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: