Xero + OpenNode

Accept Bitcoin on Xero Invoices with OpenNode

A Bitcoin payment option on your Xero invoices, priced the same whether the client is down the road or on the other side of the world

Register now and get 3 invoices for free → See How It Works

First month free • No credit card required • Cancel anytime

Xero closed FY26 with 4.92 million subscribers and NZ$2.75 billion in operating revenue, most of it now earned outside its home market in New Zealand. The product is used in more than 180 countries, and the invoicing reflects that: multi-currency billing, tax rules per jurisdiction, and a contact record that does not care where the customer sits. Getting paid is where the geography comes back. Xero's built-in online payment options route through Stripe for cards and GoCardless for direct debit, and both are priced by where the card or the bank account was issued.

The gap between a domestic payment and a foreign one is wide enough to notice. On Xero's UK Stripe pricing, a standard UK card costs 1.5% plus 20p, an EEA card 2.5% plus 20p, and an international card 3.25% plus 20p, with a further 2% when currency conversion is required. Rates are exclusive of VAT and are revised from time to time, so check the current page before planning around a number. On a £2,000 invoice paid by a client abroad, that is more than £100 to collect money you have already earned. An international bank transfer looks cheaper on paper and is slower in practice, with fees at both ends and an exchange spread that never appears as a line item.

PayInBTC.me connects Xero to OpenNode so a Bitcoin option sits on the invoices you already send. OpenNode is a Bitcoin payment gateway built around a short path from account to first payment, with Lightning for instant settlement, on-chain for larger amounts, and automatic conversion into local currency for businesses that would rather not hold Bitcoin. Your Xero workflow does not change: same templates, same numbering, same chart of accounts.

Why Xero and OpenNode work together for cross-border invoicing

A payment that costs the same from anywhere

Card pricing is a map. Bitcoin is not. A payment against a Xero invoice costs the same whether the payer is in Manchester, Melbourne, or Manila, because there is no issuing bank, no interchange tier, and no correspondent chain taking a cut along the way. For a business whose client list crosses borders, that turns the most expensive payments in the ledger into the cheapest ones. It also removes the parts of the process that have nothing to do with the work: sending wire details, chasing a transfer that left three days ago, and reconciling an amount that arrived short of what was invoiced.

One route instead of a payment method per market

Xero users selling into several countries tend to accumulate payment methods, one per region, each with its own onboarding, its own settlement account, and its own fee table to explain to a bookkeeper. OpenNode is a single account that works globally. Payments arrive in Bitcoin over Lightning or on-chain, and can be converted automatically into local currency, which OpenNode states it does without charging a conversion fee. A business in Auckland and a business in Bristol connect the same way.

Multi-currency invoices, one checkout

Xero's multi-currency invoicing lets you bill each client in their own currency and hold the exchange difference in your books. PayInBTC.me reads the invoice number, amount, and currency from Xero and calculates the Bitcoin amount at the live rate when the customer opens the payment page. A GBP invoice, an AUD invoice, and a USD invoice all end at the same OpenNode checkout, so adding a currency to your Xero setup does not mean adding a payment integration to go with it.

Read-only on the Xero side, funds you direct

PayInBTC.me connects through Xero's own OAuth authorisation and reads only what the payment page needs. It cannot write to your books, edit an invoice, or change your chart of accounts. The Bitcoin does not pass through PayInBTC.me either. It goes from your customer to OpenNode and on to wherever your withdrawal settings point: a Bitcoin wallet you control, or a bank account if you use local currency settlement. PayInBTC.me charges a flat fee in sats rather than a share of the invoice.

How the integration works

The setup takes about five minutes and needs no crypto knowledge. Once connected, the flow runs on its own for every invoice you choose.

1

Connect Xero and OpenNode

Sign in to PayInBTC.me and authorise your Xero organisation through Xero's OAuth screen, then connect your OpenNode account with an API key from the OpenNode dashboard. The Xero side is read-only, so PayInBTC.me can see invoice details but cannot change your books.
2

Add the Bitcoin link to an invoice

A 'Pay with Bitcoin' link is placed on the invoices you send from Xero, alongside the payment services you already use. Your branding theme, invoice numbering, and layout stay exactly as they are.
3

Customer chooses to pay in Bitcoin

When the customer clicks the link, PayInBTC.me fetches the invoice total and currency from Xero, calculates the Bitcoin amount at the live rate, and redirects to the OpenNode checkout with a QR code and a Lightning invoice.
4

Payment settles through OpenNode

The customer pays over the Lightning Network for near-instant settlement, or on-chain for larger amounts. The payment lands in your OpenNode account, and your withdrawal settings decide what happens next: Bitcoin to your own wallet, or conversion into local currency paid out to your bank.
5

You get a confirmation and mark the invoice paid

PayInBTC.me emails you when the payment clears, and the transaction appears in your OpenNode dashboard with the fiat value at the time of payment. You then mark the invoice as paid in Xero yourself, since the connection does not write back.

What Xero businesses get from this pairing

Overseas invoices stop being the expensive ones

An international card payment through Xero's Stripe connection carries 3.25% plus 20p, and another 2% when the currency has to be converted. A Bitcoin payment against the same invoice is priced identically to a domestic one, so the client's location no longer decides what collection costs.

Settlement in seconds, not banking days

A cross-border transfer takes days and passes through banks that each apply their own timing. A Lightning payment against a Xero invoice clears while the customer is still on the payment page, which shortens the gap between invoice date and cash in hand.

Settle in Bitcoin, local currency, or both

OpenNode supports Bitcoin settlement over Lightning and on-chain, and automatic conversion into local currency for businesses that report in fiat and would rather not carry Bitcoin on the balance sheet.

No chargebacks on work already delivered

A card payment can be reversed months after a project ships, and the dispute lands on the business. A settled Bitcoin payment stays settled, which matters most for firms billing clients they have never met in person.

A flat fee instead of a percentage on our side

PayInBTC.me charges 1,500 sats per invoice on pay-per-use, or 2,500 sats a month for unlimited invoices, whatever the invoice is worth. A £500 invoice and a £15,000 invoice cost the same to put a Bitcoin link on.

Your Xero setup is untouched

The integration adds a payment link and reads invoice data through Xero's OAuth authorisation. It does not alter your branding themes, your chart of accounts, your tracking categories, or the payment services you already have connected.

What it costs on a typical invoice

Take a £2,000 invoice sent from a UK business to a client abroad, a common shape for agencies, consultancies, and software firms running on Xero. Here is roughly how the cost of collecting it compares.

Method Cost on a £2,000 invoice Notes
International card via Stripe in Xero About £105.20 3.25% plus 20p for international cards, plus 2% where currency conversion is required, exclusive of VAT
UK domestic card via Stripe in Xero About £30.20 1.5% plus 20p on standard UK consumer cards, for comparison with the same invoice paid at home
International bank transfer £15 to £40 plus spread Fees at both ends, an exchange spread that is not itemised, and several banking days before the money arrives
Bitcoin via PayInBTC.me and OpenNode About £21 OpenNode publishes typical processing fees of 1%, plus a flat 1,500 sats per invoice to PayInBTC.me, roughly a pound at recent rates

On this invoice, taking Bitcoin instead of an international card cuts collection cost by around 80% and settlement time from days to seconds. Note where the percentage sits: PayInBTC.me charges a flat fee in sats, and the 1% belongs to OpenNode. Businesses that want no percentage at all can point the same Xero connection at a self-custodial provider such as BTCPay Server instead.

Who this fits

UK agencies and consultancies with clients abroad

Firms invoicing in Xero whose best clients are also their most expensive to collect from, where the international card rate and the conversion charge together take more than 5% of a four-figure invoice.

Australian and New Zealand exporters and remote service firms

Businesses selling into Asia, Europe, and North America from a market where Xero is the default ledger, and where a wire from a customer's bank still takes days and arrives short of the invoiced amount.

Xero users in markets banking does not serve well

Xero is used across more than 180 countries, and in plenty of them arranging a merchant account or receiving a foreign transfer is the slowest part of getting paid. A Bitcoin link on the invoice sidesteps that arrangement entirely.

Businesses that want Bitcoin acceptance without holding Bitcoin

Owners who want to offer the option because a client asked for it, but who report in pounds or dollars. OpenNode's conversion into local currency keeps the books in the currency the accountant expects.

Getting started

You need a Xero organisation and an OpenNode account. OpenNode is open to registered businesses and runs a verification check, so allow time for that step before your first invoice.

  1. Create your OpenNode account, complete the business verification, and set your withdrawal preference to Bitcoin, local currency, or a split of the two.
  2. Register at payinbtc.me and authorise Xero through its OAuth screen, then add your OpenNode API key.
  3. Turn on the Bitcoin payment link for the invoices you want to offer it on, then send one as a test.

The first month is free, so you can run a few real invoices through the setup before deciding whether it stays. Full setup instructions are at docs.payinbtc.me.

Frequently Asked Questions

Does this change how I create invoices in Xero?

No. You invoice in Xero exactly as you do now. PayInBTC.me adds a 'Pay with Bitcoin' link to the invoices you choose and reads the invoice number, amount, and currency to build the payment page. Your branding themes, numbering, tracking categories, and existing payment services stay as they are.

Does the payment only work over the Lightning Network?

No. OpenNode handles both. Lightning settles in seconds and suits most invoice amounts, while larger payments can go on-chain and confirm in the usual block time. The customer sees both options at checkout and picks whichever their wallet supports.

Where does the Bitcoin end up?

In your OpenNode account first, then wherever your withdrawal settings send it: a Bitcoin wallet you control, or a bank account if you use OpenNode's conversion into local currency. PayInBTC.me never holds or touches the funds. It reads your Xero invoice data and hands the payment to OpenNode's checkout.

Do I need to understand Bitcoin to use this?

No. The setup takes about five minutes and the payment flow runs on its own afterwards. Your customer handles the Bitcoin side when they pay. If you would rather not hold Bitcoin at all, OpenNode's automatic conversion means the balance you withdraw can be in local currency.

Will paid invoices be marked as paid automatically in Xero?

Not yet. PayInBTC.me has read-only access to Xero and does not write back to it, so you mark the invoice as paid yourself after the confirmation email arrives. Automatic reconciliation is on our roadmap and we will not claim it before it ships.

What does it cost per invoice?

PayInBTC.me charges a flat 1,500 sats per invoice on pay-per-use, or 2,500 sats per month for unlimited invoices, or 25,000 sats per year. The first month is free, with three free invoices on pay-per-use. OpenNode's own processing fee is separate and is published as typically 1%.

Does OpenNode require business verification before I can accept payments?

Yes. OpenNode operates as a registered money services business and runs compliance checks on new accounts, which means providing company and ownership details rather than signing up with an email address alone. Requirements and thresholds change, so read OpenNode's current terms before planning around them. If you want to start without that step, a self-custodial option such as BTCPay Server avoids it.

Can I use this if my business is outside the UK, Australia, or New Zealand?

Yes. Xero is used in more than 180 countries and the PayInBTC.me connection itself carries no geographic restriction. The limiting factor is OpenNode: it serves registered businesses internationally, but account eligibility and the currencies available for settlement depend on your jurisdiction. Where OpenNode is not available, the same Xero connection works with other providers.

More questions? See our full FAQ →

Start today—risk free

Add Bitcoin to Your Xero Invoices with OpenNode

Keep Xero. Keep your workflow. Just add Bitcoin payments via OpenNode.

No credit card required. First 3 invoices free. Cancel anytime.

Register now and get 3 invoices for free →

Questions? Talk to our team