Accepting Bitcoin as Payment

November 10, 2023    Bitcoin

Accepting Bitcoin as Payment

I’ve been learning a lot about Bitcoin in the last few years. I’ve been wondering why we aren’t seeing more business accept payments in Bitcoin in 2023. I think this is coming, but there is a chicken and the egg problem. I asked a friend who runs an online company and he said “It would actually be pretty easy for us to implement crypto payments for us but we haven’t for two reasons (A) almost no one ever asks for it (lack of market demand) (B) there is no support for recurring payments.”

In Switzerland, McDonald’s accepts lightning payments . Why not in the USA? As a developer, I imagine all of their kiosks run the same code with localization, internationalization and feature flags. It’s probably just a small change and bam, you can now pay with Bitcoin in the USA.

There is a lot more to this and many more resources out there. This article is meant as an introduction.

Disclaimer: I don’t have any real life experience accepting Bitcoin or running a business.

Bitcoin coins

Incentives for Businesses and Customers

Visa, MasterCard, etc have a strangle hold on payment transactions. They average 2.24% fees. Merchants need to pay this fee, which cuts into profits. In many busineses this is a big deal. I recently went to the dentist and they added a 4% extra fee if I used my HSA debit card. A lot of those fees cover the convenience and profits, but are spent in fighting and redeeming credit card fraud .

Compare that to “At the time of writing, the base fee per transaction is 1 satoshi (0.00000001 btc), equivalent to 0.04 cents” ~ reference . see current numbers at .

Taking payment on Lightning would enable companies to post the price using Bitcoin/cash and then say if you pay with credit card we’ll charge you an extra 3%.

Accepting Bitcoin payments can also help businesses expand their international reach, reduce payment processing fees, and attract new customers who prefer Bitcoin as a method of payment.

Lightning Network

“The Lightning Network is designed to make bitcoin transactions as fast and cheap as possible.”. I’ll let you read more from Coinbase

or watch what is the Lightning Network? for an introduction.

This layer 2 on top of Bitcoin is essential to getting payments quickly. You don’t want to have to wait 20-40 minutes to verify a few blocks on Bitcoin, unless it was a large purchase.

There are many companies working on applying Lightning Payments. These are just a few.

Levels of accepting payment

Here are a few levels I made up with increasing complexity.

Make sure you understand the regulations for your area. It’d also be good to talk to an accountant and tax person.

Level 1

Setup a Lightning Wallet on a smart phone or tablet. Create a QR Code and put up a sign “we accept Bitcoin Lightning Payments at a 3% discount”. Use the current value of Bitcoin (changing prices in Sats weekly or daily or hourly would be challenging).

If you are online, this is easier. You can find a pre-built option and add it to your checkout process. Here are some examples .

Promote yourself.

Level 2

Setup a point of sale system. NowPayments has a solution. So does Bitpay There are many more.

You can also use these to create invoices and billing.

Use similar systems to integrate to your current online payments and add it as an option.

Level 3

Host it your self. Setup a BTC Server, create a multi-sig hardware wallet and protect your keys


What about accounting?

Standards Board Approves Long-Sought Change in Crypto Accounting Rules - September 6, 2023. X from Michael Saylor .


how would accounting handle Bitcoin payments?

Accounting for Bitcoin payments requires a slightly different approach than traditional accounting methods. Here are some general guidelines for how accounting can handle Bitcoin payments:

Record the transaction: Just like any other payment, Bitcoin payments should be recorded in your accounting system. You should record the date of the transaction, the amount paid, the Bitcoin address used for the transaction, and any associated fees.

Convert Bitcoin to your base currency: Bitcoin is a volatile currency, so it’s important to convert it to your base currency as soon as possible to avoid fluctuations in the value of your income. You can use a cryptocurrency exchange or a payment processor that converts Bitcoin to your base currency to do this.

Record the exchange rate: When you convert Bitcoin to your base currency, you should record the exchange rate used for the conversion. This will allow you to track the value of your Bitcoin income over time.

Keep detailed records: It’s important to keep detailed records of all Bitcoin transactions, including the wallet address used, the transaction ID, and the exchange rate used. This will make it easier to reconcile your accounts and prepare financial statements.

Consider tax implications: Depending on your country’s tax laws, you may need to pay taxes on Bitcoin income. Make sure you consult with a tax professional to ensure that you are compliant with local regulations.

Use specialized accounting software: There are several accounting software programs available that are designed to handle Bitcoin transactions, such as Xero and QuickBooks. These programs can help streamline the accounting process and ensure accurate records are kept.

In summary, accounting for Bitcoin payments involves recording the transaction, converting Bitcoin to your base currency, keeping detailed records, and considering tax implications. By using specialized accounting software and consulting with a tax professional, you can ensure that your Bitcoin payments are properly accounted for in your financial records.

From ChatGPT. Where it says to sell to Fiat, I’d recommend looking very closely at keeping your Bitcoin for a longer term or finding ways to pay with Bitcoin.

Accounting In Bitcoin from Swan Bitcoin February 13, 2024 > and IBEX

Get found:

Recurring Payments

to ChatGPT again (feels a bit like cheating) “How can I setup recurring payments with the lightning network?”

Answer: " Setting up recurring payments with the Lightning Network requires the use of a Lightning Network-enabled wallet that supports the feature. Here are the general steps to set up recurring payments with the Lightning Network:

Choose a Lightning Network-enabled wallet: You’ll need to choose a wallet that supports recurring payments on the Lightning Network. Some popular options include Zap, Phoenix, and Breez.

Set up your Lightning Network node: To use a Lightning Network-enabled wallet, you’ll need to have a Lightning Network node set up. You can either set up your own node or use a custodial service that provides access to Lightning Network channels.

Connect to a payment channel: Once you have a Lightning Network node set up, you’ll need to connect to a payment channel to receive payments. You can either connect to a public channel or open a private channel with another Lightning Network node.

Create a recurring payment invoice: Using your Lightning Network-enabled wallet, create an invoice for the recurring payment that you want to receive. This invoice will include the amount to be paid, the frequency of the payment, and the duration of the recurring payments.

Share the invoice with the payer: Once you’ve created the recurring payment invoice, share it with the payer. They can then set up the recurring payment using their Lightning Network-enabled wallet.

Monitor the payments: Once the recurring payments are set up, you’ll need to monitor them to ensure that they are being received correctly. Most Lightning Network-enabled wallets provide a dashboard or other tools to help you monitor your payments.

In summary, to set up recurring payments with the Lightning Network, you’ll need a Lightning Network-enabled wallet, a Lightning Network node, a payment channel, and an invoice for the recurring payment. By following these steps and monitoring your payments, you can set up a reliable and convenient way to receive recurring payments on the Lightning Network."

Storing Bitcoin

I think you’ll want a multi-sig wallet for more security than a single key.


Look into privacy and mix or coinjoin to protect your business and your users. watch 2/9/24

You can use the Lightning Network to require payment before an API can be accessed. I hope to investigate this in the future and implement it in .Net. Here’s one video I found about it.

It’d be great to hear if you start accepting payments or what you think. You could send me a message on Twitter/X @aligneddev and let me know.

A great discussion from 3/20/2024 : BTC174: Is Bitcoin Property, Currency, or Both? w/ Parker Lewis & Will Cole (Bitcoin Podcast)

Watch the Story for Good News
I gladly accept BTC Lightning Network tips at [email protected]

Please consider using Brave and adding me to your BAT payment ledger. Then you won't have to see ads! (when I get to $100 in Google Ads for a payout, I pledge to turn off ads)

Use Brave

Also check out my Resources Page for referrals that would help me.

Swan logo
Use Swan Bitcoin to onramp with low fees and automatic daily cost averaging and get $10 in BTC when you sign up.