Invoicing and Terms Using Bitcoin

Please click here for Part 1

This is Part two in our Accepting Bitcoin Series.  You have decided to now accept bitcoin for your small or medium business and you are now interested in how to proceed.  First ask yourself two fundamental questions:

Am I trying to make it convenient for my customers to make payments, exclusively?


Will I ever issue refund in Bitcoin?


If your first answer is yes and your second answer is no, then I suggest using Bitpay. Creating an account is easy, plus you can set your settlement settings to 100% USD with a daily ACH payout to a US bank account of your choice:


Answering Yes to the 2nd question is also easy enough – Navigate to the Dashboard link and send BTC to the ‘Deposits’ address – this address can be used to issue refunds back in BTC to your customer.

Furthermore, with refunds, I recommend issuing refunds based on your local fiat rate, NOT based on the amount of bitcoin the customer paid you at the time of purchase.  (the only exception to this rule is if you always charge the same rate of Bitcoin for your goods and services and there is a 1:1 correlation with price and value (here on the my storefront does NOT do this: the amount of bitcoin a customer pays at checkout depends on the exchange rate to US dollars.)

{give me the easy answer Frankenmint!}

Okay okay, take bitcoin, but only issue refunds back in your local currency to avoid having to explain or deal with irate customers about currency exchange shrinkage.  Place a Return Policy on your sales reciepts (usually your POS software will have an area for the thermal receipt printer towards the bottom.) A good sample Returns Policy may sound like:

Return policy:


All purchases are denominated in US Dollars and can be returned within the first 30 days of purchase.  All goods require the original receipt for refunds and will only be refunded in US dollars, this includes purchased made with Bitcoin.  Returns without an accompanying receipt can only be redeemed for store credit.  A 15% re-stocking fee will apply for all returned merchandise without original packaging.

Let’s say you instead want to keep some of the bitcoin.  Maybe you want to speculate on the rising price of bitcoin and feel like there is a huge boon to be had if you keep some of the profits in Bitcoin.  To do this, simply navigate back to the settlements page mentioned above, and change the Bitcoin percentage to an amount you feel comfortable ‘investing’ with. You are not specifically investing, per se, but instead you are choosing to hold some value in bitcoin at the end of the day, just in case Bitcoin does in fact increase to a higher value at a later point in time.  If you earned 100 dollars today in bitcoin and chose to hold one dollar of it (1%), if bitcoin happens to increase in value 5 fold, you have now just gained 4 dollars in speculative gain as a result!  (holding a small fraction of your earnings in bitcoin is not as risky as keeping the bitcoin, but still affords you the opportunity to gain from the growth of the bitcoin network).

Moving on, lets say you sell Plumbing supplies to independent plumbers across your region and a sizeable number of those customers pay using Net30 terms – how do you do this with bitcoin?

The answer is: It depends.

Easy Example 1) small business with phoned in credit card payments.  If you choose to go with an easy route (albeit manual in nature) is to create a custom footer note on your invoices, requesting that customers call in to confirm payments using bitcoin (using a monthly remittance Bitcoin address,  you could list the address and resulting QR code into the invoice footer).  Upon sending the payment, the customer would call your office to confirm payment, you would see it on the blockchain and create a payment receipt for Bob with the Transaction ID of the Bitcoin sent to confirm his payment.  At the end of the Day, you would then create a daily closeout invoice with all remittance payments creating a ‘closeout’ invoice for yourself (this way, you can still redeem the benefits of Bitpay to automatically convert your Bitcoin into local currency.)

Medium Example 2) Medium business with an online payments portal.  Your customers may receive emailed invoices in addition to regular invoices and you want things to automate so that customers don’t have to contact you to confirm payment.  Using BitPay you could create an automated invoices within your email that would link to a custom generated invoice to be paid in BTC.  Your bookkeeping staff would then need to process the payment as received within your accounting software – also taking note of the transaction id of the payment.  This system would allow you to only need to update that payments were received on your accounting system.

Difficult Example 3) You’re a large business or you generate 1000s of invoices per month and want to automate the receipt of payments as well.  To fully automate your payments process would involve a full time developer – you could essentially piggyback off of the 2nd solution and write a Json listening wrapper into your payments portal – this listener would create a payment record document to be either written to your accounting documents database, or to be imported within a batch process at the end of business work-day.  I say this method is the most difficult as my description above ‘should’ work in most cases, but many different circumstances do require a 3rd piece of software or automation to facilitate the import and export of data in order to work efficiently.  Also, there is a higher possibility of processes breaking – moreso than with the easy example.


So now that you have received payment, how do you setup proper accounting?

(I will use Quickbooks as an example). I have decided to not store the value as a denomination of bitcoin, although if you wanted/needed to, you could create a custom field for your order, invoice, and receipt templates.

1) (optional) setup a “Bitcoin”  foreign currency record and a “Bitcoin Bank record” using your created foreign currency in Quickbooks [if you plan to retain bitcoin to be used later or to speculate with]

2) setup a “Bitpay Merchant” bank record in Quickbooks.  [this will be the bank account you select for sales orders or receipts]

3) (optional) setup a “bitcoin refunds payable” bank record in Quickbooks [if you plan to hold some bitcoin in your bitpay deposit address, you can use this to account for refunds given in bitcoin, also make sure to set this as using Bitcoin currency]

4) Whenever bookkeeping is done (do(es) your bookkeeper(s) update the books daily, weekly, semi-annually?)  have your staff transfer Bitpay Merchant funds to your matching ACH account in Quckbookx. (I’m presuming you chose to enter your merchant account where your credit card settlements go)

5) (Optional) Transfer your stored bitcoin (not sent via ach at the end of business day) into the Bitcoin account from your “Bitpay merchant account” record in Quickbooks.

6) (Optional)Transfer whatever bitcoin you have set aside into “Bitcoin Refunds Payable”

Part 2.5 Reconcile

Believe it or not, reconciling with Bitcoin is VERY easy.  The process is essentially the same as with cash and credit payments:

1)  Denominate your payments in your local currency.

2)  Use the transaction ID as the unique identifier (reciept number, payment number, etc).

3)  Match the payment record just the same with your Sales Order/Sales Reciept


Holding onto bitcoin and planning to use it to purchase goods from a supplier?  No problem:


1)  Pay the supplier in whatever combination of currency and/or bitcoin you wish

2)  Write check or Pay Bill using your “Bitcoin” bank account created above – just as before, use your transaction id from the sent bitcoin as your Receipt ID.


That sums up how to buy and sell goods from an accounting standpoint using Quickbooks!  Check out Part 3 of my Accepting Bitcoin: Series which explores using BitGo wallet for multiple signatures.  Suppose you work for in the buying department and you’re interested in the ability to pay vendors for merchandise in bitcoin and you need to convince your CFO?  This next guide is for you!

Part 3 : Setting Financial Controller policy in Bitcoin