Crypto invoice generator with saved wallets and QR codes

If you have read the explainer and just want the tool, this is it. Save the wallets you receive on once, then generate invoices that carry the right asset, network and address every time. The payment page renders a QR code and a copy button, so nobody is retyping a 34-character string by hand.

Try the live invoice generator

Saved wallets mean fewer typos

Wallet addresses are the easiest thing in billing to get wrong, and a wrong one is not recoverable. Store each wallet in payment methods with its asset and network — TRON TRC20, Ethereum ERC20, BNB Smart Chain BEP20, Bitcoin or Solana — and pick it from a list when you build an invoice.

Because the address comes from your saved list instead of a paste buffer, the identical string appears on the PDF, on the payment page and inside the QR code.

What the generator asks for

Client, currency, line items, discount and tax, due date, then the payment methods you want shown. You can set the invoice currency to USDT, USDC, BTC or ETH directly, or price in fiat and show the crypto amount you expect to receive.

For repeat clients, duplicating last month's invoice and changing the dates is usually faster than filling the form again.

Sharing and following up

Every invoice gets a public link that opens without a login, which is what most clients forward internally for approval, and a PDF for accounting inboxes that will not open links.

Statuses move from draft to issued to paid, so working through what is still outstanding at the end of the week is a short job rather than a spreadsheet exercise.

A pass through the generator (fictional)

Kestrel Motion, a small animation studio, is billing a client 2 ETH for a title sequence. They open a new tax invoice, select the client, and add one line item: 'Title sequence — 12 seconds, two revision rounds'. They set the currency to ETH and the amount to 2.

In the payment step they choose the saved wallet labelled 'Ether — Ethereum (ERC20) — studio'. Because the invoice is in a volatile asset, they add a terms note: priced at 2 ETH, payable within seven days of the issue date. The review screen shows the amount, the network under the address and the due date; they issue, then send the payment page link. Kestrel checks the wallet on receipt and marks the invoice paid themselves.

Setup mistakes worth avoiding

Pasting a fresh address for every invoice instead of saving it. Saved wallets exist precisely so the same verified string reaches the PDF, the payment page and the QR code without passing through your clipboard again.

Mixing up which wallet a label refers to when you hold the same asset on two chains. Include the network in the label, not just the asset.

Sending only a PDF to a client who pays from a phone. The payment page gives them the QR code and the copy button; the PDF gives their accountant a file. Send both when you can.

Expecting every status to move on its own. Only Pro invoices priced in USDT and paid on TRON (TRC20), Ethereum (ERC20) or Polygon with the exact amount turn Paid automatically. Everything else waits for you.

Where the generator stops

It does not custody funds, connect to a wallet or request a signature. On Pro it watches one thing: USDT sent on TRON (TRC20), Ethereum (ERC20) or Polygon to the wallet on an invoice priced in USDT; when the exact amount arrives, it marks the invoice paid. For other assets, networks and amounts, you check your wallet and mark the invoice paid.

That boundary is deliberate: your keys and your bank stay yours, and VegaPal stays a document and payment-instruction tool.

Who this is for

Developers paid in stablecoins

Bill a monthly retainer in USDT with the network fixed, and keep every issued invoice in one place.

Design studios with international retainers

Generate the same invoice each month from a duplicate, changing only the period and the dates.

Anyone tired of address screenshots

Replace pasted addresses in chat threads with a payment page that shows the QR code and the exact amount.

How it works

  1. 01

    Add your wallets

    In payment methods, save each asset, network and address with a label you will recognise later.

  2. 02

    Build the invoice

    Pick the client, add line items, choose the currency and set the due date.

  3. 03

    Select the crypto method

    Choose the saved wallet, or enable crypto and bank together if the client may pay either way.

  4. 04

    Share and reconcile

    Send the link or PDF, confirm the transfer in your wallet, then mark the invoice paid. On Pro, a USDT invoice paid on TRC20, ERC20 or Polygon with the exact amount turns Paid by itself.

Frequently asked questions

Which assets and networks are supported?

USDT, USDC, BTC and ETH as invoice currencies, with networks including TRON TRC20, Ethereum ERC20, BNB Smart Chain BEP20, Bitcoin and Solana.

Is there a QR code for the wallet?

Yes. The public payment page renders a QR code for the receiving address alongside a copy button, and the PDF carries the address in text.

Can I still send a normal fiat invoice?

Yes. The same generator produces fiat invoices with bank transfer or cash instructions — crypto is one payment method among several.

How many invoices can I generate for free?

The free plan covers 3 documents a month, with PDFs, payment pages, saved wallets and bank details included.

Create your next document with VegaPal

The free plan includes 3 documents per month, with PDF downloads and shareable payment pages.