How To Accept Bitcoin Payments For Your Business

  • Feb 8, 2019

If you run a small business and want to attract more and more customers by offering bitcoin payments, you may have some questions on how to start. As an electronic payment system, bitcoin is predominantly used online and requires an initial set up from those who wish to use it. There is no way of avoiding taxes. Bitcoin is simply another authorized way to receive payment for goods and services.

USE QR CODES OR RUN A FULL NODE

If you have a brick-and-mortar store, customers can pay for goods using hardware terminals, touch screen apps or simple wallet addresses through QR Codes. There are several apps that generate QR codes for mobile and wallets that support QR code scanning for payments. If you have an online store or any other business, you’ll need to run a full node. This is especially important if you sell big-ticket items.

There are several websites that offer bitcoin management services, like bitpay, coinify and bitcoinpay. Each of these companies charges different fees and has slightly different features, so do your research and find the one that suits you best.

USE BITCOIN ACCEPTED SIGN

In order to notify people that you accept bitcoin payments, you should use bitcoin sign. Simply adding a "Bitcoin Accepted Here" sign to your door if it’s a physical store, or to your website for online businesses. People can then simply contact you to ask for payment details using bitcoin.

ADD BITCOIN PAYMENTS TO YOUR INVOICES

If you've already added a line explaining what payment options are available (VISA, PayPal, etc.) you can simply add Bitcoin as well, even if customers have to contact you to find out the steps.

BitcoinPay offers an API that can be integrated with most eCommerce platforms today including websites and mobile apps. Samples of code with mock server testing are available in php, java, python, Ruby, Perl and more. They even have a designated button generator for dummies. Be sure to let the customer know how much BTC to send since the fluctuations in price are likely to confuse them. While Bitcoin addresses on a paper invoice are incredibly cumbersome, according to Bitcoin Wiki, you should probably add them anyway. Most people need some kind of paper trail when it comes to accounting. Having the address will allow the customer to prove the transaction took place through Block Explorer.

If your customers are paying via your website, simply provide them with a URL to visit that displays the Bitcoin address to send the payment. If they can do this just by entering the invoice number, so much the better. They can also copy and paste the address easily.

HOW TO SET A PRICE IN BITCOIN

Bitcoin’s instability is evident - prices can vary every day. The way most merchants manage this is to quote clients based on the current market rate at the time of the price quote to the customer. However, when you receive bitcoin payments, the best option is to immediately convert and deposit bitcoins into your bank account. Holding onto bitcoin payments can be risky.

Also, there will always be some discrepancy between the price you quote and the price you receive, which may need to be accounted for in a specific way. As a rule of thumb, however, Bitcoin payments are really just like cash, so consider how you handle cash transactions and whether you pay tax on them and do the same for Bitcoin.

ARE THERE SIMPLER SOLUTIONS?

If you want to work with a payment processor but keep the benefits of running a full node, try BTCPay Server. It’s one of the best open source payment processors out there and includes an invoicing API that’s compatible with BitPay.

You can also migrate your code base to your own self-hosted payment processor, which gives you all the benefits of running a full node with less of the hassle. BTCPay is easy to deploy via the one-click deploy on Azure.

Finally, while bitcoin is still well underway in competing with traditional financial systems, it is clear that this amazingly flexible currency is here to stay, and may change our lives forever.