Perly Invoice

Bitcoin invoicing

Invoicing in bitcoin is the oldest way to be paid on a chain and the least well served by invoicing tools, which mostly treat BTC as a stablecoin with a worse exchange rate. It is not, and the differences all land on the document.

Price in bitcoin, or price in money

An invoice can ask for 0.1 BTC — eight decimal places, down to the satoshi — or it can ask for €4,000 and name bitcoin as how you would like it settled. The first is an obligation in bitcoin; the second is an obligation in euro with a rate attached. Say which, on the document, because a month between issue and payment is a long time in this particular currency.

The address, and a QR code

Add a Bitcoin wallet and the invoice prints the address in a monospaced face with a QR code beside it. Legacy and segwit addresses both, upper or lower case, because a QR printed in caps is still a valid address. Nothing about it is custodial: it is your address, and the transaction goes from your client's wallet to it.

Watched, but only when confirmed

Turn Watch the chain on and a job asks an open index for that address's own transactions and sums the outputs paying it. Only confirmed transactions count — an unconfirmed one can still be replaced, and marking an invoice paid on a transaction that later vanishes is worse than not watching at all.

This works because the document can be priced in BTC. A dollar invoice against a bitcoin address has an exchange rate in the middle of it, and no fixed number of satoshis to watch for — so price it in BTC if you want the chain to settle it for you.

And what happens to it afterwards

Bitcoin you were paid is a position from the moment it confirms. Perly Invoice does not track that; the Perly app does — cost basis, PnL, and what today did to the invoice you sent last month. Same account. There is also Perly Charts, which is free and asks for nothing.

Common questions

Can I invoice for a fraction of a bitcoin?
Yes — down to eight decimal places. The arithmetic is done in integers, never in floating point, so a satoshi is never lost to rounding.
Will it notice the payment by itself?
If the invoice is priced in BTC and the watcher is on, yes, once the transaction confirms. A dollar-priced invoice has no fixed amount of bitcoin to look for, so you mark that one paid yourself.
Do you support Lightning?
Not yet. The address on the invoice is an on-chain address, and we would rather print one thing that works than two things that might.
Who holds the bitcoin?
You do, from the first confirmation. There is no Perly wallet in the path and no percentage taken.
What about the volatility between issuing and being paid?
That is why the choice of unit matters. Price in BTC and the risk is your client's until they pay; price in your own currency and it is yours. Short terms help either way — see [payment terms](/guide/payment-terms).

Make one now

The generator is the front page. No account, no sign-up, no watermark — fill the document in and the PDF is yours.

Open the invoice generator