How to accept Bitcoin, for small businesses

From Bitcoin Wiki
Revision as of 06:05, 24 February 2011 by Casascius (talk | contribs) (Businesses that offer gift cards)
Jump to: navigation, search

This guide is intended for small business owners who wish to help promote Bitcoin by accepting it as payment for goods and services. It's written with the assumption that you operate a regular business that sells goods or services for regular fiat currency, and that you wish to accept Bitcoin as another legal way to pay, and that you intend to pay taxes on your Bitcoin income just like any other income.

With Bitcoin being touted as a way to conduct anonymous transactions and a way to compete with the Federal Reserve, many small business owners wonder what's the right way to accept and account Bitcoin, or if it's legal or ethical, or whether they should pay taxes on income received through Bitcoin.

As far as we know, Bitcoin isn't yet formally recognized by governments and authorities as a "currency". But in practice, Bitcoin is likely no different than accepting payment in other forms, such as cash, or gold, or scrip, or gift cards or foreign currency. We think that it is pretty much the same as the local businesses of Great Barrington, Massachusetts choosing to accept their locally-printed "Berkshire Bucks" to support their local economy.

Starting to accept Bitcoin for transactions

Accepting Bitcoin at a small business is best started in whichever manner keeps the accounting simple for you. This will vary by the type of business you are operating.

Start with a sign

If you expect that the number of people interested in using Bitcoin is small, you might simply start by posting a sign or a note: "We Accept Bitcoin", and ask people to contact you directly in order to make a payment. Even if hardly anybody uses Bitcoin as a payment method, you're helping Bitcoin in two ways: one, by increasing awareness, and two, by making your customers more willing to accept Bitcoin as payment from others in the future, because now they know somewhere they can spend it.

Retail businesses

Are you a retail business? The easiest way for a customer to make a Bitcoin payment right now is with their mobile phone. While applications supporting this are in their infancy and don't exist yet for all platforms, most smartphones can browse the web and initiate Bitcoin transactions from websites like Since entering a Bitcoin address on a mobile phone is very cumbersome, you might consider setting up a webpage with a short URL that they can go directly to, that makes use of MyBitcoin's shopping cart capabilities.

Many mobile phones with cameras can now scan two-dimensional barcodes called "QR Codes" that encode a web address. This sends the user directly to the web page of your choice. Free utilities on the web can generate these barcodes. By conspicuously posting a QR code for your payment page, you can allow many mobile phone users to skip the step of typing your URL.


When a customer makes a payment, you might simply issue a credit to their account. Ideally, you want to enter it in a way that suggests you received a payment. You could consider entering it as a "discount", but you may want to consider whether this inappropriately disguises the nature of the transaction. If on the other hand, you're giving "discounts" for Bitcoins, but then you are selling the Bitcoins for currency and then counting that as income, then chances are good that your calculation of income is making up for it. Ask your accountant.

Businesses that offer gift cards

If your business sells gift cards or gift certificates, you may find that the easiest way to accept Bitcoin is to strictly accept it for the purchase of gift cards, and then require the gift cards to be used for actual purchases of goods or services. This way, the accounting practices you already have in place for processing gift cards can be put to use. The accounting for Bitcoins would then be minimized to tracking sales of a single SKU, rather than all of them.

This method is also ideal for retail food establishments and convenience stores, where the payment of Bitcoins through a mobile phone for a small daily food purchase might be cumbersome or disruptive, especially in front of a line of other customers. Bitcoins in this case would be far better used to reload prepaid cards that can then be swiped at point-of-sale.

If you don't accept gift cards, but you already accept credit cards through a swipe terminal, consider the possibility that you could add a retail gift card system through the swipe terminal you already own. Many point-of-sale terminals, including ones from VeriFone®, are designed around the ability to support multiple applications on the same terminal. Gift cards are also highly profitable because a significant percentage of them never get redeemed.

You could consider adding a private label gift card program from a provider who specializes in this, as a jumpstart to accepting Bitcoins. A private label gift card service provider typically doesn't move any money - they simply provide a solution that keeps track of the balance on the cards on your behalf, allows users to check their balances by phone or by web, and makes the cards swipeable through the machine.

Businesses that mail invoices

Does your business send out invoices to customers? Adding one line may make a huge impact for the Bitcoin economy. Perhaps you list it as a payment option just after Visa, MasterCard, and American Express, even if that means your customer must call or e-mail to make a payment.

If you have access to the programming expertise such that you can generate Bitcoin addresses programmatically, consider generating a brand new Bitcoin address for each invoice, and print it on the invoice. When a Bitcoin payment arrives, you'll automatically know where it should arrive.

Customers might wonder how much BTC they should pay in order to satisfy an invoice in full. Your invoice might suggest an amount. For example, if your invoice is for $100 and BTC's are currently worth $1.24 each, your invoice might suggest that it can be paid in full "with a payment of 80.65 BTC if paid by (date)".

You might be able to anticipate the possibility that even though a Bitcoin address can be printed on an invoice or payment stub, that they are very cumbersome for most people to type, especially being a mix of uppercase and lowercase letters. However, you should probably still do it anyway. The customer is probably going to want some paper trail for his payment. Giving him a pre-printed payment stub with a pre-printed address will satisfy that, because the customer can independently and publicly prove through Block Explorer that the payment took place.

Does your business have a website? On your invoice, consider allowing them to go to a special URL to get the address to make a Bitcoin payment just by typing in their invoice number. For example, with a form they can enter their invoice number, or just for paying invoice #60365. This way, they can see the address, copy and paste it directly into their Bitcoin client.

Avoiding fraud

You should also consider the possible risk that fraudsters could send counterfeit invoices to your customers, and entice them to make a payment to a Bitcoin address they control, instead of you. While that isn't likely in general - it depends on how well a fraudster could find out who your customers are in the first place - it would certainly be an unpleasant situation if it ever happened. One way you could control that is, whenever possible, never let people try to type Bitcoin addresses off payment stubs - instead, force people to get the full Bitcoin address from your website via secure SSL. But, still print most of the address on the payment stub (perhaps with four or five characters starred out), so that the customer's need for a paper trail can be satisfied, so they can prove they paid if there is ever a dispute.

Paying taxes on Bitcoin income

We aren't accountants or lawyers, and can't give legal or accounting advice.

But in many respects, Bitcoin transactions work very much like cash. Just like Bitcoin, cash is anonymous and doesn't leave a paper trail, yet is widely used in commerce every day.

Ask yourself how you would handle a cash transaction. Do you accept cash transactions? Do you normally pay taxes on cash transactions? The answer for Bitcoin should probably be the same.

As for how to decide what a Bitcoin transaction is worth... the IRS, as far as we know, has never issued a guide mentioning how to value Bitcoin transactions. But they probably have rules and guidelines on how to value transactions made in foreign currency or "cash equivalents". We imagine the accounting would be similar.

With Bitcoins, there's likely to be some difference between the value of BTC when you received them as payment, versus when you go to exchange them for another currency like USD, should you decide to do so. This scenario, likewise, would be no different if you accepted foreign currency or gold as payment. Under some scenarios, it might make sense to book the dollar value of BTC income as it is received, and then to book any difference incurred when it is exchanged for fiat currency. Under others, it might make sense to book the whole thing at the time of exchange.

Perhaps you might talk to your accountant. You don't need to get into a discussion with your accountant about block chains and private keys or the philosophy behind a decentralized currency. By comparing the fundamentals of Bitcoins to accounting concepts already well understood by the public, you can probably get all the answers you need. What would you ask your accountant if you decided that you wanted to accept Berkshire Bucks or 1-ounce gold coins as payment?

Help this article

This article is a stub, please add to it!

See Also