Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Show HN: Invoice Dragon – An open source app to create PDF invoices (invoicedragon.com)
564 points by lanijuyi on July 25, 2023 | hide | past | favorite | 175 comments


A lot of the complexity of invoicing isn't in the PDF generation (which this tool does a wonderful job of doing, nice work!) but on the side of tracking which invoices are open vs. paid, which ones are aging, whether there are discounts that can be applied for early payment, and of course integration with whatever accounting tools you're using.

But this looks like a great, simple tool for people who need to occasionally send an invoice or two. Thanks for sharing it.


We see this pattern a lot.

It's like twitter. You can write an app that works just like twitter in a short amount of time. A week tops. But that's not the hard part. Moderation, getting the product profitable, etc, are the hard parts.

People often get a bit of tunnel vision and don't realize there's a whole bunch of behind the scenes stuff that's the real hard part. No reason to feel bad about it, it's a human thing, not just (the proverbial) you.


>You can write an app that works just like twitter in a short amount of time. A week tops. But that's not the hard part. Moderation, getting the product profitable, etc, are the hard parts.

You can buy a Twitter for 44 billion dollars, thats easy - but moderation and user management, not tanking the profits into the red, not killing the brand with weird behavior - these are the hard parts.


It's not like Twitter was beloved before, and neither are people actually leaving the platform (except for the dozens who care a lot).

Like most content on Twitter, the discussion around it is mostly a loud minority complaining.


People have left. A ton of the technical people I follow have moved mostly to mastodon. Dan Luu of HN fame regularly posts on mastodon but hasn’t cross posted on twitter as often (which is sorta funny because he used to work for twitter, and left before the Musk acquisition.) Some people are still “on” twitter but post much less than they do on mastodon, like Daniel Stenberg (you might know him as the maintainer of curl.)

To be honest, as someone who doesn’t care about the twitter culture war and still sees a lot of value in the site, mastodon is steadily becoming a better place for actual technical content. Twitter blue checks have insufferable opinions, and I did better when their existence wasn’t forced on me.


Are people actually not leaving? I had not used Twitter in about a year and a half until last week. I went there and it took 20 seconds to load the web app, then after I logged in it was Elon getting promoted, ads that look like mostly spam, and everyone with a blue check mark. I left because I thought the platform was deteriorating then and it is much, much worse now.


The question is always: What's the alternative? People who are either addicted to what they get from Twitter, or whose job depends on it, have no other place to go. Of course there are other platforms, but those only have a tiny fraction of the user base, meaning less content and less attention.


This is like asking “what’s the alternative to nicotine?” - it may sound trite, but basic health is the alternative. A replacement is not the answer. You just need to quit.


I would guess that people who are addicted to it or whose job depends on it are not the majority of Twitter users.

I agree that even out of those groups, there are not a lot of people deleting accounts and moving to other places. But, my perception is that a lot of people are indeed spending much less time on Twitter. Twitter competitors are not only Mastodon or Threads. It is also YouTube, TikTok, Instagram, Netflix and alikes, advocacy for consuming less social media overall, etc.


It was my favourite social network, and I had multiple accounts. I used it slightly professionally, but wouldn't say my job depended on it. Months ago, I deleted as many tweets as I could without paying to deal with more, and stopped using it. I don't feel like I've missed it all that much. The engagement when active never felt that great, so that probably helped. I've never used Facebook either.

I do feel a bit like "what's the alternative"; I like being an active contributor rather than a passive consumer, so falling back to just reading scraps on the net makes me uneasy.


A ton of people have moved to Threads from Meta which is the most direct competition.

Then there is of course Mastodon and the upcoming Bluesky.


The userbase is the key to the entire platform. Any minority platform that has been created for small groups like Truth are just echo chambers of a single subculture. The wide range of individuals and subcultures on the Twitter platform is the whole reason people still use it.


Addictions can end. Make the experience unpleasant and people stop seeking it.


> Are people actually not leaving?

It can be hard to tell, the published numbers and other people's guesstimates do not tell much of the full tale.

I think many are soft-leaving: using twitter and which-ever alternative they are considering in unison while they see how things play out. Perhaps more than one alternative. People will eventually decide because multiple contact points will be a hassle, at which point we might see a glut of people leaving twitter if one of the alternatives has enough momentum at the time.

A significant problem ex-twitter has is that much of the advertising that left has not returned while user and bot activity hasn't dropped by nearly enough to compensate for that so the on-going losses have grown despite all the staff cuts and so forth. Some advertisers are splitting their spend elsewhere, some are playing wait-and-see like users, and some have just realised that dropping (or reducing) twitter as a channel hasn't harmed their RoI on marketing budget so maybe it wasn't a great channel for them in the first place.

[caveat: I've never actually used Twitter, other than being sent links to threads occasionally and thinking “this is a terrible way to get across an idea worthy of more than one sentence”, so might know nothing – long before the recent kerfuffle I considered it “too full of the sort of people who consider twitter to be a good idea” and from what I gather indirectly it is increasingly home to a lot of the sort of people/content that I already get irritated enough by on other channels!]


Perhaps I chose that example for a reason ;-)


> You can buy a Twitter for 44 billion dollars, thats easy

Go for it.


<<insert>> not cutting the brand off the building as a seemingly random decision is also easy but who are we to judge…


I mean, if you're not paying rent, you might want to pack up the shit that's hard to grab in a hurry


> You can buy a Twitter for 44 billion dollars, thats easy

i'll have to try it one day


Twitter has been horribly mismanaged but the moderation hasnt been much of an issue. Twitters problems are technical, plus this new rebranding which just isnt going to stick .


Twitter has had two profitable quarters ever. The technical quality is actually great; its problems are on the product and business side.


Historically yes, completely agreed. However there were major technical issues which made the site unusable recently. False positives on the rate limiter and even imposing the rate limiter due to problems dealing with load for example.


> You can buy a Twitter for 44 billion dollars, thats easy

I'm not sure about easy: it seemed to take a fair amount of wailing and gnashing of teeth to complete the sale.


I’ll take all of that if the CIA is no longer given access to censor opinions and promote propaganda.


While true, it's often two distinct processes. I work with implementing ERP systems, focusing on accounting and financials. Most systems I see use the ERP system to generate the invoice data and for tracking the invoice status with a separate service to create the PDF (and electronic) invoices through an integration with the ERP system. The ERP system is usually pretty good at invoice tracking but customising the invoices can be both time consuming and expensive. Among larger enterprises there's definitely a market for software that can produce PDF invoices, even without tracking, although they would probably have to support creating PEPPOL BIS compliant XML documents as well.


I could be wrong, but if the business is using ERPs (to the extent of hiring implementation specialists), they're likely already too big for this type of software. In it's current form anyways, this feels like something small business uses to appear professional, big and/or well polished. The bigger company would use the ERP solution because it integrates with their general ledger, etc. and at that scale putting any focus on 'pretty invoices' is probably just a waste of time. It's really better to focus on getting them paid quickly.


Also in some (most?) countries, regulations impose a strict versioning of invoices and a strict irrevocability process (meaning you cannot edit an invoice after its been delivered). To be compliant with the laws, as a company you need to prove you are using a system which is compliant with theses constraints.

For instance in France, it has been mandatory to use such compliant software since 2018 for all companies.


Many EU countries still allow for individuals/small companies to choose to use simpler book keeping, without going through all that bureaucracy. And realistically this types of tools are probably targeting that population...


> Many EU countries still allow for individuals/small companies to choose to use simpler book keeping, without going through all that bureaucracy.

Not really. Well, only if you are a really really small company (read below VAT threshold).

Once you're VAT registered the tax authorities will want the irrevocability.


There is no such thing as irrevocability in IT(unless we talk about physical retail sale registers every retail business has to have - these are certified standalone hardware devices that print receipts and store the transaction details in write once memory). At least in this EU country the requirement is that you keep the original file for the retention period and you present it on request. If you mess with it in the meantime and you get caught you're essentially falsifying financial tax records. It doesn't matter if you keep your invoices in .txt files on a hard drive or in a cloud based "irrevocable" system But if you're doing retail your accounting data better matches with the printout from that hardware device that logs all the sales.

However, having said that the complexity in doing small business accounting (at least here in Poland) is not in generating invoices, but in accounting for them correctly with regards to VAT. Is this just a domestic sale/purchase? Is it an EU goods or services purchase/sale? Is it the same but for outside EU? Is the client a company or an individual? Does he/she want to return a item. Did you send an invoice, but never got paid? (you're still on the hook for the VAT) All those things matter and affect how you're supposed to record your VAT. In many cases of cross border transactions you end up recording VAT in a special way so it cancels out, but you need to report the right amounts. The logic to not mess this up is what makes people pay for this software. There is nothing stopping you doing all of it in Excel if you want, but if you mess up... It might be expensive.


At least in NL, the final version becomes irrevocable when it is send to the customer (or supplier). Corrections are done with a new number (or more than one) Sometimes you need more than one sequence.


Nothing is irrevocable, when it's on my machine


In Sweden, this applies to the accounting system - bookings need to be immutable but there is no certification of the software. The invoice generation is not covered, they need to state due date, VAT number etc, and the invoices need to be booked in the accounting system but can be typed on a typewriter, or written by hand even, as far as I know.


I would assume this would be for cases where your are using that same software to report income, expenses, tax etc. But in Invoice Dragon (i.e. just a template) case you would be keeping a copy of the invoice for later reference in calculations, the same as a handwritten invoice, no? It's just "typing it up" for you. This isn't accounting software, just a template.


> To be compliant with the laws, as a company you need to prove you are using a system which is compliant with theses constraints.

My brother-in-law, Wallace, in the back office, is a system compliant with all of those constraints.


Who ensures the software is compliant? How does the process work?


How does that work? Are you not allowed to fill out an invoice with pen and paper?


When I was independent consulting, GnuCash managed my invoicing and accounts-receivable well enough.

I tracked my hours for a billing period by starting a new invoice in GnuCash, and just adding a line item to it per day. Each line item was updated throughout the day, with very quick notes to myself of what I did.

At the end of each day, I'd print a draft invoice of the unbilled hours thus far, as backup.

When it came time to invoice, GnuCash supports/ed custom invoice scripts, so I'd copied&modified a stock invoice script to do what I want, including hiding the notes to myself, and complying with the occasional format change requests from client. I'd print to PDF or paper.

For a client that also wanted a separate summary of what I did, I'd copy&paste the hidden notes into an editor, and then rewrite that as a concise one-to-few sentences.

As soon as I emailed/mailed the invoice, the GnuCash accounts-receivable functionality would take over. The complexity in how it represented the data was a little scary, but it worked.


A quick and dirty invoice generator is great for people who usually do point of sale or cash transactions and once in a while need to produce an invoice so a business can pay (vs it being expensed).


i never understood the difference between a "bill" and an "expense". my confusion in understanding comes from the idea that a small retail trader for example, pays for 2-3 things.

either capital goods, or purchases of trading goods or expenses. Now, all of these are technically purchases". Just that your accounting ledger defines the further classification. Now, all of these require "invoice", at least in india, that means you can't just say "i paid inr 500 for fuel" without a receipt/invoice. So what is a bill and how is it different than being expensed?


The difference is that a bill is saying "I've done this work for you: now pay me". Or "I've given you these products: now pay me".

But an expense claim is saying "When I was doing what you asked me to do, I had to pay some money on your behalf, so please refund me".


A bill is an invoice you send to someone else, to request payment.

An expense is an invoice someone sends to you for payment. This “invoice” might be as simple as a docket from a cash register.

If you receive an invoice from someone, it can be classified as an expense if it’s legitimately part of your business - depending on local law. If it is an expense then it’s deducted from your income so that you don’t get taxed on it - you should only be taxed on profit, not revenue.

If it’s not a legitimate business expense then you can’t deduct it from your income and the tax you pay is higher.


A bill or an invoice is a document created by the vendor asking the customer to pay. Sometimes you are the vendor and raise an invoice asking the customer to pay. Other times you are the customer, and your vendors send you invoice asking YOU to pay.

It is generally accepted practice in accounting that all outgoing payments should have an invoice from a vendor. Also all incoming payments should have an invoice/receipt raised by you.

Whether something is an expense depends on what you are paying for. If the vendor's invoice is for goods that you are reselling, that is not an expense. That goes to inventory. Similarly when you pay an invoice from your heavy equipment supplier, that is not an expense, that goes to your equipment & machinery. However, when your vendor invoice is for something like janitorial service, utility bills, lawyer fees etc, these are classified as expenses and hence its 'expensed'.


It’s a case of before or after the payment occurs - some businesses want it all handled via invoice so they can check things first.

Usually it’s just internal processes - Uber can be expensed, gas cannot.


You are correct. I'm in the process of trying to find software to manage the collection of 1000s of fines. It's a very niche area. It's not even the payment part, as we have that part completed, it's the tracking and "attempting" at contacting people which may or may not want to be found!


What you’re describing is accounts receivable. As you say, it’s a separate function relative to invoice generation and payment.

It’s not an overly complex problem to solve in the general sense but it is very easy to underestimate the complexity, and this often leads to half baked systems.

I’ve got a ton of experience in this area, reach out via my profile if you would like to connect.


Thanks! I actually ended up finding out that a partner government already had a solution and they even exchange info with the same people we do. They will be giving us a lot of their work for free. A good use of tax payer money!


Excellent, good job.


This would be a fantastic way to give your customers a bear-hug and slowly pull them into a full ERP system.

I have personally seen myself and other business owners issue invoices that are unconnected to any system early on - just generating it using some ill-suited tool like Word.

But once your customer enter their invoice data in Invoice Dragon, it's a simple matter for you to set up a "payment due" reminder for them. And then add on outstanding balance per customer. And so on, and the next thing you know, it's an ERP!


It does look great but indeed, at this point, I would be extremely happy with something that allows me to customize and make GnuCash invoices look nice.


That's doable with the Python interface to GnuCash. I hacked together a little script that sucks out invoice data out of a register file and creates PDFs for new ones using a LaTeX template. My wife uses it for her business, mostly without my involvement, so seems robust enough.


Is said script somewhere in the public internet for some inspiration :) ?


Make LLM or something that can parse invoices for all sorts of random vendors, car parts, pencils, in multiple languages, from shitty scanned PDF's, and you have a billion dollar company.


It won't be a problem if it occasionally sends a serial number instead of a total, right?


Yep: bill.com


I think it depends. Sometimes, for some people, making the actual invoice is the hard part.


I concur. And I have some insight into this. I wrote a command line invoicing tool[1] which I referenced on an earlier thread since I knew a bit about generating PDFs and thought that was the "hard part" of this.

The real value is in being able to respond quickly to queries like "What were the invoices numbers for client X in Jan, Feb 2022?" when your accountant asks them. Managing that, timesheets etc. in a way that can give you insight into business financials is what's really useful once you cross a (low) volume of invoices.

That being said, the output of the tool is extremely good looking.

References:

1: https://github.com/hamon-in/invoice


Not to forget book-keeping.... In the EU for example VAT handling (and associated payments to the gov)


I would understand it more as an api service, or JS lib to plug into a project. Although still hard for me te imagine the case where you have invoice that's not attached to your administration somewhere. Unless you just have excel or something.


This is really useful as it is for a small business starting out - before they get to the stage where they need this complexity


Also fun when I was contracting was dealing with accounts departments which insisted on exact hourly rates, while my contract was specified as a per day rate.

So to put a number which added up accurately I wound up with 5-7 digit fractional hourly rates.


I'm looking at using https://bigcapital.ly/ exactly for these reasons.


If anyone's in the UK I can recommend our product Paycada for this (https://www.paycada.com/)


Bloom (https://bloom.io) solves a lot of this, but without the open source part.


Yeah -- this is nice but doesn't save anyone from having to pay a zillion bucks for some custom ERP integration


Also the tax law may be complicated and/or requiring on-the-fly reporting


Also, connecting to calendar, timekeeping, etc systems including google sheets.


Enter stage left: Google Sheets.


> but on the side of tracking which invoices are open vs. paid, which ones are aging, whether there are discounts that can be applied for early payment, and of course integration with whatever accounting tools you're using.

In my experience

- you either did work for someone who does pay invoices, or doesn't

- if you are boned when the last invoice isn't paid, you are in very deep trouble. That means you're not in the "invoicing" business, you're in the flipping business

- so optimizing for the best case, well, you don't need to really track this stuff, or offer discounts for early payment or whatever

> of course integration with whatever accounting tools you're using.

Of course, you could be charging enough money that you don't really have to think about your costs.

The kind of person doing that has the bandwidth to install and use open source tools.

So ironically, the person who is arguably the best B2B customer, making tons of money, lots of bandwidth, pretty sophisticated, is the person most likely to use a simple open source invoice PDF generating tool. And that's why these things get adoption. That's why open source thrives.

I don't know if Invoice Dragon will make money but its users are necessarily going to be great. Because the person who gets the most out of it is running a great business.


> The kind of person doing that has the bandwidth to install and use open source tools.

> ironically, the person who is arguably the best B2B customer, making tons of money, lots of bandwidth, pretty sophisticated, is the person most likely to use a simple open source invoice PDF generating tool

That doesn't make any sense to me. If you have a thriving profitable business you usually just pay for invoicing software. Why would you invest time fiddling around with an OSS tool? just because you have the bandwidth doesn't mean you'll use it on that. Most people will prefer spending the time on something else that is core to their business or just their personal lives.

Open source thrives for many reasons. I hardly see what you described as one of them.


I thought about using something like this for my invoices, or even doing something on my own, but in reality I made an HTML page with a bunch of "contenteditable" attributes, edit it directly in the browser, sometimes fiddle in devtools to remove some things, and print as pdf. Somehow it feels wrong because my mother couldn't do that, but since I can it's actually the fastest way to get it done for me.

But anyway it's a nice tool for people who want to do something with little fuss. Some nitpicks:

* if I refresh the page, all the data is lost

* custom select boxes are ok, but the list of currencies is huge. in a normal select box I could just type "EUR" and it would select that option. Here I need to scroll for a long time.

* an annoying thing in general is tracking the invoice number. It would be nice if it would remember the last one. Of course there are all sorts of complexities here, like people have different "systems" on how it's called and how to increment

* my company is always the same, so it would be nice if this data was saved. Sorry if it already does, I didn't see it.

But thanks for sharing in any case.


I'm doing pretty much the same for all my routine paperwork, but with page.css for realistic preview and Mavo for the editing and storage part. Here's an example: https://papers.aedge.dev/payout/


Thats actually REALLY cool.

If this were like a notepad++ plugin or a site where I can have multiple tabs of these pages - I like this for resume, cover letters, etc - not sure if this is something new or just based on something existing - but within 30 seconds, I loved it...

So - bring moar.


Thank you so much!

My current plan is to add a couple more templates (CV, generic invoice, maybe some basic contracts), and just list these on the index page. Curious why would you need multiple tabs though?


>>why would you need multiple tabs though?

To have multiple cover letters, documents, etc and be able to manage such in my ADHD MANY ALL THE TAVBS!!!!

So yeah...


Oh yeah, know that feel too :-)

I don't think we'll have a proper document management system, just a bunch of cool templates. Well, not in the MVP, anyway – maybe in some future version though!


I started similarly. I had built a really simple HTML template for my invoices and I generated them using some CLI scripts and Airtable as a database (to keep track of customer addresses, invoice IDs, etc.).

I didn't want to use a full-on accounting tool where everything is kept in the cloud with expensive monthly subscriptions and using Word or something along those lines also didn't work for me.


If anyone is looking for a comprehensive accounting tool for personal finance or small business, GnuCash also has the ability to generate invoices.

In my opinion, the PDF generator made by OP makes way more beautiful invoices than GnuCash. However, generating is only part of the story; tracking invoice balances and knowing who still owes you is another. GnuCash does both in one place, which is why I am plugging it here. It's worked well for my small business. It even gives you a nice pop-up reminder when you open the program that reminds you about unpaid Accounts Receivable.


Without checking for compatibility between the licenses -- if they are both open source, it is possible to combine the best of both tools.


Totally true! I would love to see that. In practice, I doubt that will happen because contributing to GnuCash seems to require a lot of nuanced understanding of their very old codebase and build system. OP's PDF generator is a web app, while GnuCash has basically no way to run in a browser.

That's actually why I built GnuCash-Helper[0]. It's a web-based personal finance tool written with Python and Flask that works with GnuCash files. It's not nearly ready for prime time, but I use it daily, and I don't even open GnuCash anymore.

In general, I really wish that GnuCash would get a visual refresh and some more modern features. It's amazing, but it looks very 2006, and it has bad stories for mobile and web. Obviously, HN readers are a different breed, but good luck convincing most people to run desktop-only software in 2023.

Refs: 0. https://github.com/bxbrenden/gnucash-helper


> Obviously, HN readers are a different breed, but good luck convincing most people to run desktop-only software in 2023.

I was asked by someone to help them find a desktop-only invoicing app because they didn't have reliable internet at their place of business. Sure, most people will want web apps, but there are always subpopulations with specific requirements that one can target.


Thanks! In the past, I've used https://invoice-generator.com/, which is pretty similar, but without the templates. One important thing they do is keep a history of the past invoices, so you don't need to re-type in the information and upload the logo (stored on users local machine without needing to create login). You should consider adding something similar. Without it, I would not consider switching.


Thanks for the shout-out! We have a free API as well for generating invoice PDFs: https://invoice-generator.com/developers


This is what I use for a side project as well. I don't really need features beyond that and it's worked well enough for me.


Looks nice!

I use LaTeX for my invoices, combined with the "rechnung.sty" module which allows creating the typical invoice layout.

The advantage is that I can use the scrlttr document class, which - if I call it correctly - can generate PDFs that perfectly fit in my country's (Switzerland) window envelopes when printed out.

And because I put all my base config in a reusable and importable file, every .tex file with an invoice is really short, essentially just the address and invoice positions.


At KDE, we have to do fairly complex invoicing to recipients in many different jurisdictions (as a non-profit having donors and organizing events all over the globe).

We also wrote a web app (using quart and hypercorn) for this that generates PDFs (it's part of our internal financial dashboard that does a lot of other things as well). But ours runs the jobs on the backend, and uses luatex via latexmk. This internally uses scrlttr2 as well.

Screenshot: https://mero.ng/i/GKeVmAnd.png


Is it open-source by any chance? I would be very interested to see all the logic that is necessary to handle all the different jurisdictions. Sounds complicated!:)


Nice effort, this is my feedback:

* On a short invoice (let's say, 4 invoice lines) Font used for rendering invoice lines is way too big and space between invoice lines too large. I understand the font size and base line are adaptive to the number of lines but invoices with low number of lines are then not rendered very nicely

* Size for the description field is way too limited. Most of the description lines we used are larger than what is accepted in this field.

* Missing a "product reference id" column

* Probably not intended for B2B EU users as a few important pieces of information are missing like company number (the one of the invoicing company and the one of the company being invoiced, payment conditions, bank account, payment reference to be used with the bank transfer and, most importantly, no automatic computation and display of the VAT.

Best of luck with your project !


This looks nice and simple.

I got frustrated with the invoicing landscape being too complex and pricy and have been using a Google Sheet for the last ~10 years. It has an export to PDF button and then I email the PDF to the client. It’s easy enough for any grid-style design which is all you need with an invoice.

What advantages does Invoice Dragon have over a Google Sheet?


I actually created an over-engineered LaTex template for my invoices, and it was such a pain in the arse. I can't believe I never thought of using Google Sheets or Excel.


Did you do it entirely in LaTeX or some hybrid?

I use Python scripts to generate LaTeX invoices/offers/payslips from yaml files. It works very smoothly.

Of course it is more effort than using the built-in templates from the bookkeeping software, but it looks much nicer and I only do a few per month so it is not many minutes wasted.

The effort spent building up these scripts to their current level is perhaps impossible to motivate with any rational arguments... But I had fun doing it!


Excel default invoice templates are great, and you can begin programmatically improving them from there. Excel can even have a separate sheet of “standard line items” you can reference, do the math for you, etc.


Probably the fact that you don't have to do it with Google Sheet if it's not your Jam.


Advantage: None.


I'd love to hear what people are using for sending invoices (with follow up emails if it's not paid) and collecting payment (ACH/CC). I've used Wave Accounting and Stripe for my invoices but I hate paying the Stripe invoice+tax fee but it's still less than the Amex fee on Wave so I put up with it. Maybe these are the best tools available to me at this price point and for my usage (4-6 invoices a year, $2-10K/ea) but I'm open to alternatives.


Self-hosted InvoiceNinja 4 & Stripe integration. Works great, sends follow-up emails, adds gateway fees to the invoice.


I've been using Zoho-books for my minor accounting needs. It's been great (and free!).

https://books.zoho.com/


I use FreeAgent. It connects with all my business accounts and does automatic transaction matching to invoices. Sends emails and follow-ups. It also figures out all the tax things for me in the UK, not sure about other countries though.

https://www.freeagent.com/


Completely unrelated, but reading "FreeAgent" just now released a core memory for me of reading USENET in the 90s with the free version of Forte Agent. This site has the 16-color image that IIRC was the basis of the icon for Free Agent: http://www.diginfoserv.com/agent.html .. I think the icon was just zoomed in on the lady at the table?

edit: wow, of course there was a 16 bit version available:

> Agent is fully supported by the Agent Support Team and is available in 16 bit and 32 bit versions.


Wow, I haven't thought about that application in a long time! I used Forte Agent to read USENET in the '90s and met my first girlfriend on there.


We self-hosted invoiceninja for a few years. I liked it enough, but it wasn't perfect by any means.


What do you not like about InvoiceNinja?


Belgian company, very complete offering ( used to be called OpenERP) - https://www.odoo.com/

Note: I have OpenERP v7 still running for free ( well, except my VPS).


While i have only heard of Odoo and never actually used nor set it up, i thought it is more of a bugger, comprehensive ERP system...which might be overkill if one only needs an invoice generated here or there...no?

EDIT: * bigger


You can use the modules you want.

If you only want the invoicing module, I think it's free in the cloud.


That sounds cool!


I've been self-hosting invoice-ninja for a number of years now... quite like it. Coupled with integration with Mollie payments all invoices also have a payment link and most smaller invoice payments are processed automatically.


I’m using Wave as well and I really like it. I only accept check or bank transfer (I don’t mind the 1% fee). It’s very feature rich for a free product.


I use e-mail with the invoice attached as a PDF for sending invoices, and I receive all my invoices in this way also.


I use Harvest with an option to use Stripe for payment.


I self-host Pancake, I like it.


Seriously, without ability to add VAT? Where is invoice issue date? Where is Tax ID? This looks like something USA-only thingy.


It's a tool built out of personal necessity that they decided to share with the world for free.

But don't despair, contributions are welcome.

https://github.com/LaniJ/invoice-dragon


>Seriously, without ability to add VAT?

99% of people in the US have never heard of VAT, so I'm not sure what you find surprising about a US-based project not including VAT...


This is open source, feel free to make a PR or at least file an issue for these concerns.

I'm happy I might not have to rely no making accounts on a bunch of invoice making apps to make bespoke invoices at some point


Seriously, a VAT registered a not having an accountant tool that costs £10/month? This tool is clearly for freelancers.

For context, to charge VAT in the UK, you need to earn more than £85k/year


Not all sales require VAT. Nor does everybody have the need or desire to pay VAT. This tool is fine - as long as you're invoicing in English that is.


Looks good! And congrats for releasing.

Some feedback from someone who recently built a very similar PoC invoice-generator[1].

1. I'd prefer to have it live-update an HTML view. When I stop typing, it shows what the invoice will look like (by approx.) instead of ending up with 15+ temp pdfs in my Downloads folder.

2. In the EU there's strict rules for invoices. E.g. on numbering, VAT inclusion and so on. Getting this right, is the hard part. A tool like this that works out-of-the-box for e.g. French Invoices or Dutch Invoice to EU company. Getting this right requires a lot of research and domain knowledge. Something that e.g. a French plumber or Dutch Webdesigner will not have.

3. The hard parts of invoicing is not generating the PDF. Nor filling in the blanks in a template[2]. The hard part is getting all the data for point 2 above and then tracking (paid, overdue, reminded, retracted) the invoices correctly. Most online bookkeeping already does all this. Integrated.

4. Including some VAT or Tax lines is a requirement in many (most?) jurisdictions. It now cannot handle it without some weird hacks (desc: "VAT 21%", amount: 1, price: "insert manually calculated number and don't forget to update it"). I understand and applaud not including these calculators. It's impossible to make this general; no software has done this properly; e.g. invoice-ninja requires the user to set this up, but still misses many use-cases/jurisdiction-requirements which then require hacks anyway. But there should really be a way to include specialised line-items. Discount, VAT, WhateverTax, Travelling-costs. That can be in- or excluded from subtotal, but do add up to the total.

I send maybe 10 invoices each year, so I'm probably your target audience. But I am only allowed (by law) to use such a tool if its either flexible enough to make it fit my local requirements, or opiniated and tailored for these local requirements. And for me, the real value would be in tracking these invoices (which most bookkeeping tools already do).

[1] my ultimate goal is to manage invoices in a web-base tool, have plain-text-accounting (beancount/ledger) as its "database" and PDF as export; something I'm now managing with a terrible hodge-podge of scripts, latex and whatnot. Where "manage" is to add medatadata&add line-items, then track them in overviews, and consolidate or book them accordingly.

[2] e.g. https://extensions.libreoffice.org/?q=invoice&action_doExten...


I think I am exactly the target user for this, it looks great; looking forward to using it. In my case, I only generally work for one client at a time, those clients always pay immediately, and the invoice is generally a formality / record. Being able to generate one, and save/send the resulting file is really all that I need. Nice work.


I like where this is going. The simplicity makes this a tool very worthy of a bookmark for people who occasionally need to send an estimate or invoice.

Most small businesses that I am around might send 24 invoices a year. There is an entire demographic that doesn't really have the need or desire for another service to manage.


Wow, what are the odds another invoice tool today! This one definitely wins for PDF design WOW factor but I like how mine lets you store all the client info once SaaS style https://news.ycombinator.com/item?id=36864455


Here in Italy, both paper and PDF invoices are extinct. All invoices are electronic transactions that follow a certain protocol and pass through a giant government-owned interchange, so that the government can control everything invoiced.

Most people use this system through some SAAS platform.


So the government can see every transaction you make?


I think people are misinterpreting this -- it looks fine for, say, the first 20 invoices if you suddenly find yourself needing to generate them. There are plenty of more complex options once the transaction count and tax situation gets too onerous for copying into Excel.


I just tried it and loved the templates. One thing that I miss in these tools is keeping a record of the last invoices generated. It doesn't need to be fancy; just keeping it in local storage would do the job for me. Maybe I'll send a PR later :)


Wasn't there a post not too long ago here on HN for generating invoice PDFs from the command line? I'd favour that (because that could at least in principle be used part of automation) rather than having to type things into an HTML form.


Yeah, but the TAM on that is like you, me and 5 other people also in this thread


Really? I would've thought the TAM on that is the same as people who use GnuCash....


I'd be interested in seeing this if anyone could link me.

Speaking of other invoicing software, does anyone know what generates those ASCII invoices you'll receive occasionally? The 80-column ones that look like a shell script that got piped to lpr? Just wondering if there was a common piece of software that was getting used for these or if everyone's IT dept hacked something together that produced approximately the same output.



Thank you!


This is really well made! I know from my experience building Cakedesk [1] that the requirements of invoices vary greatly from country to country and from user to user.

Some things you can add to appeal to more people that are useful to most:

* Keep track of clients and personal info so the user doesn't have to type the address / invoice IDs every time

* Allow users to keep track of which items are paid/unpaid

* Allow users to declare sales tax on the invoices

* Allow users to upload their own HTML-based invoice designs

* Allow users to add subitems to items

Good luck with the project, it looks well-made and it will be useful for many people!

[1]: https://cakedesk.app


If I recall from a previous company, we used Stripe but would sometimes need to manually invoice a customer and they had the option to generate a unique link to a decent looking invoice page where the customer could fill it out, have everything logged and handled by Stripe, and that was the end of the story.

It seems fantastic, although I wasn't on the finance side of things. Any negatives to using something like that? It seemed awfully convenient for one offs/corrections for large customers when things done need to be slick and automated.


I live in the terminal and recently found https://github.com/maaslalani/invoice, which looks really cool. Still will likely stick with my own solution (a little ruby and some tectonic latex [https://tectonic-typesetting.github.io/en-US/]), which lets me create PDFs more in-line with my aesthetic.


Looks good! Thanks for sharing.

Shameless plug, but here in the UK we built Penny, which is an invoice factoring tool (U.K. only), i.e. You sell us your £1000 invoice that’s due in thirty days and we’ll buy it off you at a discount and pay it the next day.

We don’t have invoice templating but it’s a nice to have.

I’m still trying to crack the easiest way to reduce friction in entering enough but minimal data for us to be able to generate a usable invoice. Tough cookie to crack


the form input boxes, are extremely slow. I'm running it on safari, but the letters are lagging behind every stroke. Are you re rendering the PDF after every stroke?


Checked. Only rendered when a Preview is requested.


Feedback

- Privacy would definitely forbid many people to use this. Make it offline, app or offline deployable ... would help. - obviously translations into other languages


The source appears to be at https://github.com/LaniJ/invoice-dragon , so it presumably is already offline deployable.


it's more or less offline since it's completely frontend based.


This is nice. Actually a lot nicer than my hacked together 'invoice-generator.js' NodeJS-Tool I have used before. I think I am switching!


I didnt see https://invoiceninja.com/ get mentioned yet, but it is my favorite software solution in this space. You can self host it or pay them for hosting. PDF generation and alot more


If we don't need the UX but need to call this functionality programmatically-- to generate PDF account statements / invoices, optionally after showing a preview as a web page -- is there a good open source solution already available that we can integrate into our app.


For Python there is Weasyprint: you prepare the invoice as an HTML document, and Weasyprint turns it into a PDF

https://weasyprint.org/


Thank you!

HTML Jinja templates seem to be fairly standard in this space.


Would be great to have own templates for different countries. In Serbia, for example, should be included special numbers from local IRS, it has its own place in the invoice. I saw some similar products here with price about $500 annually.


I was just looking for something like that! The serendipity on HN is real very often. Ty


Beautiful UI. Keep going. Where is the VAT, VAT ID? This will not align with German legal requirements. There could be a country specific pre-selection or some custom form fields


Nice work!

Reminds me of Manta https://github.com/hql287/Manta, which unfortunately has been abandoned 5 years ago.


I use an Excel template, fill it with the numbers and print to PDF.


Yeah I also just use Excel or Google Sheets, I guess this is useful for those without it


Looks great! I've been using Figma to generate invoices, but might switch to this. Was wondering if it might be possible to get add a date column for the line items?


My only suggestion would be to make it obvious that you need to preview before you can download the PDF. I thought it was broken.

Even just a tooltip would help


Nice work Lani! Super helpful for those one off invoices! Love the way it works and looks - the custom templates is a nice touch too!


Makes sense for what it is. The only thing I'd add would be to save business details in localStorage.


Proudly using Latex for PDF generation!


Unicode chars don't display correctly in the PDF, unfortunately. Hope this can be added.


Canva works surprisingly well for small enough invoices for a solo consulting gig.


It'll be nice if I can mail the invoice to someone straight from the website.


While I agree it would be nice, I can imagine there would be spam related issues at play with that feature. Namely… you’d never know if your invoice was received.


A website can open your mail client for you, but I don’t know if it can attach a PDF for you.


According to Stack Overflow, the answer is No. https://stackoverflow.com/q/5233556


Might be possible to set a download link in the body of an email via an href mailto:.... ?

Attaching the actual PDF might be another 'thing' that triggers some spam filters.


You should have a look at bizzey.com. I've switched 2 months ago from excel to this and it automates most of the tedious tasks of sending out invoices including checking if the payment arrived on your bank.


If you use this your invoice is getting BLOCKED from by my email rules!!!


Because? Do your rules prevent PDF attachments, or what?


Looks great, but you can’t scroll the currency select box on iPhone


Ooh, just when I needed one! Will try it, thanks for sharing :)


Great job! Any planning on RTL (right to left?) ?


Well done and thanks for sharing.


This is neat, thanks.


Oh, what about VAT?


hey, how does this works?, i see it a lot...


needed this badly haha


hey, how does this works?, i see this a lot...




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

Search: