Bitcoin eCommerce Payment Provider Documentation
Documentation last updated: Thursday May 14h 2015
This Add On makes it easy for a merchant to accept the digital currency Bitcoin using the official Concrete5 ecommerce addon
You must have the official Concrete5 ecommerce addon and a Bitcoin Wallet. If you want to get up and running quickly, we recommend getting a free wallet at blockchain.info to get you started.
This plugin must be installed on a live domain in order for the callback function to work. The blockchain.info API will try to make a callback to your web site when a transaction is confirmed and it will not be able to do so if you are using 'localhost' or '127.0.0.1' as your domain.
Installation is very straightforward.
Watch Installation and Setup Video at https://www.youtube.com/watch?v=UCmWoLwbXx0
The following steps are optional.
These steps allow you to see more information about the transaction in the order details page. It involves adding an extra attribute to billing or shipping table called 'ds_order_notes'. If the plugin detects the presence of the 'ds_order_notes' attribute, it will populate it with more information about the transaction such as the exchange rate at the time, whether the site was in test or live mode and the Bitcoin Wallet Addresses used for the transaction.
Please report any bugs, issues or general feedback.
The following information may be useful to more technical customers who want more information in terms of what the plugin is doing and are happy to hack the core eCommerce module to display extra information regarding the transaction. We could not include this information easily within the plugin as the Core eCommerce Addon does not have a notes field that we could use to include this information (although you can create a ds_order_notes textarea attribute to display it in the order table) .
The Bitcoin eCommerce Payment Provider addon adds a table to your Concrete5 database: DatasouthBlockchainTransactionLog This table is added to log incoming data from the blockchain so that you can diagnose faults.
id
2
coreOrderID
5
coreInvoice
000003
bcTransactionHash
6df811dfac5d7bb756fc6982ed71b7c6e9c6279a6363e7086f75abda4ddcc17b
bcCallbackUrl
{This is the long URL to call the Blockchain API}
bcAmount
0.07682131 {Note this does not account for test transactions at 0.0005}
bcResponse
{Response from the Blockchain API}
bcAddressTemp
{This is the temporary address that was assigned by the blockchain API}
bcAddressStore
{This is the Receiving address that you defined in the Payment Setup}
bcStatus
*ok* {Final Status of the transaction from Blockchain}
coreStatus
2
coreCustomer
{Name of Customer}
coreEmail
{Email Address of Customer}
orderAmount
{Value of Order in Commerce Native Currency}
dateAdded
{Date this row was added to the database}
lastUpdated
{Date this row was last updated - ie. when confirmation is received and order is switched to Authorised}