Formatting and adding more information

This commit is contained in:
Rich Morgan 2014-12-17 12:55:15 -05:00
parent 44534b508a
commit 7e5e84b7d1
1 changed files with 56 additions and 115 deletions

171
README.md
View File

@ -5,130 +5,86 @@ bitpay/magento-plugin
[![Build Status](https://travis-ci.org/bitpay/magento-plugin.svg?branch=master)](https://travis-ci.org/bitpay/magento-plugin) [![Build Status](https://travis-ci.org/bitpay/magento-plugin.svg?branch=master)](https://travis-ci.org/bitpay/magento-plugin)
# Brief Description
BitPay has the most powerful bitcoin infrastructure on the planet and is trusted by over 40,000 merchants. # Description
# Detail Description Bitcoin is a powerful new peer-to-peer platform for the next generation of financial technology. The decentralized nature of the Bitcoin network allows for a highly resilient value transfer infrastructure, and this allows merchants to gain greater profits.
Bitcoin is a powerful new peer-to-peer platform for the next generation of This is because there are little to no fees for transferring Bitcoins from one person to another. Unlike other payment methods, Bitcoin payments cannot be reversed, so once you are paid you can ship! No waiting days for a payment to clear.
financial technology. The decentralized nature of the Bitcoin network allows
for a highly resilient value transfer infrastructure, and this allows merchants
to gain greater profits.
This is because there are little to no fees for transferring Bitcoins from one
person to another. Unlike other payment methods, Bitcoin payments cannot be
reversed, so once you are paid you can ship! No waiting days for a payment to
clear.
# Requirements # Requirements
* [Magento](http://magento.com/resources/system-requirements) >= 1.9.0.1 (Older version will work, but we do not test against those) * [Magento CE](http://magento.com/resources/system-requirements) 1.9.0.1 or higher. Older versions might work, however this plugin has been validated to work against the 1.9.0.1 Community Edition release.
* [GMP](http://us2.php.net/gmp) You may have to install this as most servers do not come with it. * [GMP](http://us2.php.net/gmp) or [BC Math](http://us2.php.net/manual/en/book.bc.php) PHP extensions. GMP is preferred for performance reasons but you may have to install this as most servers do not come with it installed by default. BC Math is commonly installed however and the plugin will fall back to this method if GMP is not found.
* [mcrypt](http://us2.php.net/mcrypt) Magento requires this so you're fine * [OpenSSL](http://us2.php.net/openssl) Must be compiled with PHP and is used for certain cryptographic operations.
* [OpenSSL](http://us2.php.net/openssl) Must be compiled with PHP * [PHP](http://us2.php.net/downloads.php) 5.4 or higher. This plugin will not work on PHP 5.3 and below.
* PHP >= 5.4
# Upgrade From Version 1.x to 2.x
Merchants who have previous been using the BitPay Magento plugin will need to remove # Upgrade From Plugin Version 1.x to 2.x
previous plugin. This can be done by using the [scripts/delete](https://github.com/bitpay/magento-plugin/blob/master/scripts/delete)
script before installing the new plugin. Very Important: You must complete remove any previous versions of the Bitpay Magento plugin before installing this new updated version. The plugin has been completely re-written to work with BitPay's new cryptographically secure RESTful API and will conflict with any previous plugin versions which use the old API. To help you remove the old plugin files from your system, we have created a convenient shell script for Unix/Linux/Mac OS systems which will scan your webserver for these older files and delete them. You may also remove these files by hand of course and the complete list of the files can be found in the source of the script for your convenience. You can download this delete script here: [scripts/delete.sh](https://github.com/bitpay/magento-plugin/blob/master/scripts/delete.sh).
To use this script, simply download to your server and execute the script from a shell. You may have to mark the script executable before first use.
```sh
chmod +x delete.sh
./delete.sh
```
# Installation # Installation
## Magento Connect Manager ## Magento Connect Manager
Goto [http://www.magentocommerce.com/magento-connect/bitpay-payment-method.html](http://www.magentocommerce.com/magento-connect/bitpay-payment-method.html) Goto [http://www.magentocommerce.com/magento-connect/bitpay-payment-method.html](http://www.magentocommerce.com/magento-connect/bitpay-payment-method.html) and click the *Install Now* link which will give you the *Extension Key* needed for the next step.
and click the *Install Now* link which will give you the *Extension Key* needed
for the next step.
Once you have the key, log into you Magento Store's Admin Panel and navigate to Once you have the key, log into you Magento Store's Admin Panel and navigate to **System > Magento Connect > Magento Connect Manager**.
**System > Magento Connect > Magento Connect Manager**.
***NOTE*** It may ask you to log in again using the same credentials that you use ***NOTE*** It may ask you to log in again using the same credentials that you use to log into the Admin Panel.
to log into the Admin Panel.
All you need to do is paste the extension key and click on the *Install* button. All you need to do is paste the extension key and click on the *Install* button.
***WARNING*** It is good practice to backup your database before installing ***WARNING*** It is good practice to backup your database before installing extensions. Please make sure you Create Backups.
extensions. Please make sure you Create Backups.
## Download ## Download
Visit the [Releases](https://github.com/bitpay/magento-plugin/releases) page of Visit the [Releases](https://github.com/bitpay/magento-plugin/releases) page of this repository and download the latest version. Once this is done, you can just unzip the contents and use any method you want to put them on your server. The contents will mirror the Magento directory structure.
this repository and download the latest version. Once this is done, you can just
unzip the contents and use any method you want to put them on your server. The
contents will mirror the Magento directory structure.
***NOTE*** These files can also up uploaded using the *Magento Connect Manager* ***NOTE*** These files can also up uploaded using the *Magento Connect Manager* that comes with your Magento Store
that comes with your Magento Store
***WARNING*** It is good practice to backup your database before installing extensions. Please make sure you Create Backups.
***WARNING*** It is good practice to backup your database before installing
extensions. Please make sure you Create Backups.
## modman ## modman
Using [modman](https://github.com/colinmollenhour/modman) you can Using [modman](https://github.com/colinmollenhour/modman) you can install the BitPay Magento Plugin. Once you have modman installed, run `modman init` if you have not already done so. Next just run `modman clone https://github.com/bitpay/magento-plugin.git` in the root of the Magento installation. In this case it is `/var/www/magento`.
install the BitPay Magento Plugin. Once
you have modman installed, run `modman init` if you have not already done so. Next
just run `modman clone https://github.com/bitpay/magento-plugin.git` in the root
of the Magento installation. In this case it is `/var/www/magento`.
## Development
For developers wanting to contribute to this project, it is assumed you have a
stable Magento environment to work with, and are familiar with developing for
Magento. You will need to clone this repository or fork and clone the repository
you created.
Once you have cloned the repository, you will need to run [composer install](https://getcomposer.org/doc/00-intro.md#using-composer).
Using and setting up composer is outside the scope, however you will find the
documentation on their site comprehensive.
Once you are done, you can then run the ``scripts/package`` script to create a
distribution files which you can find in ``build/dist``. This is the file that
you can upload to your server to unzip or do with what you will.
If you encounter any issues or implement any updates or changes, please open an
[issue](https://github.com/bitpay/magento-plugin/issues) or submit a Pull Request.
***NOTE*** The ``scripts/package`` file contains some configuration settings that
will need to change for different releases. If you are using this script to build
files that are for distribution, these will need to be updated.
# Configuration # Configuration
Configuration can be done using the Administrator section of your Megento store. Configuration can be done using the Administrator section of your Megento store. Once Logged in, you will find the configuration settings under **System > Configuration > Sales > Payment Methods**.
Once Logged in, you will find the configuration settings under **System > Configuration > Sales > Payment Methods**.
![BitPay Magento Settings](https://raw.githubusercontent.com/bitpay/magento-plugin/master/docs/MagentoSettings.png "BitPay Megento Settings") ![BitPay Magento Settings](https://raw.githubusercontent.com/bitpay/magento-plugin/master/docs/MagentoSettings.png "BitPay Megento Settings")
Here your will need to create a [pairing code](https://bitpay.com/api-tokens) using Here your will need to create a [pairing code](https://bitpay.com/api-tokens) using your BitPay merchant account. Once you have a Pairing Code, put the code in the Pairing Code field. This will take care of the rest for you.
your BitPay merchant account. Once you have a Pairing Code, put the code in the
Pairing Code field. This will take care of the rest for you.
***NOTE*** Pairing Codes are only valid for a short period of time. If it expires ***NOTE*** Pairing Codes are only valid for a short period of time. If it expires before you get to use it, you can always create a new one an use the new one.
before you get to use it, you can always create a new one an use the new one.
***NOTE*** You will only need to do this once since each time you do this, the ***NOTE*** You will only need to do this once since each time you do this, the extension will generate public and private keys that are used to identify you when using the API.
extension will generate public and private keys that are used to identify you
when using the API.
You are also able to configure how BitPay's IPN (Instant Payment Notifications) You are also able to configure how BitPay's IPN (Instant Payment Notifications) changes the order in your Magento store.
changes the order in your Magento store.
![BitPay Invoice Settings](https://raw.githubusercontent.com/bitpay/magento-plugin/master/docs/MagentoInvoiceSettings.png "BitPay Invoice Settings") ![BitPay Invoice Settings](https://raw.githubusercontent.com/bitpay/magento-plugin/master/docs/MagentoInvoiceSettings.png "BitPay Invoice Settings")
# Usage # Usage
Once enabled, your customers will be given the option to pay with Bitcoins. Once Once enabled, your customers will be given the option to pay with Bitcoins. Once they checkout they are redirected to a full screen BitPay invoice to pay for the order.
they checkout they are redirected to a full screen BitPay invoice to pay for
the order. As a merchant, the orders in your Magento store can be treated as any other order. You may need to adjust the Invoice Settings depending on your order fulfillment.
As a merchant, the orders in your Magento store can be treated as any other
order. You may need to adjust the Invoice Settings depending on your order
fulfillment.
# Support # Support
@ -143,30 +99,19 @@ fulfillment.
* [Homepage](http://magento.com) * [Homepage](http://magento.com)
* [Documentation](http://docs.magentocommerce.com) * [Documentation](http://docs.magentocommerce.com)
* [Support Forums](https://www.magentocommerce.com/support/ce/) * [Community Edition Support Forums](https://www.magentocommerce.com/support/ce/)
# Troubleshooting # Troubleshooting
1. Ensure a valid SSL certificate is installed on your server. Also ensure your 1. Ensure a valid SSL certificate is installed on your server. Also ensure your root CA cert is updated. If your CA cert is not current, you will see curl SSL verification errors.
root CA cert is updated. If your CA cert is not current, you will see curl 2. Verify that your web server is not blocking POSTs from servers it may not recognize. Double check this on your firewall as well, if one is being used.
SSL verification errors. 3. Check the `payment_bitpay.log` file for any errors during BitPay payment attempts. If you contact BitPay support, they will ask to see the log file to help diagnose the problem. The log file will be found inside your Magento's `var/log/` directory. ***NOTE*** You will need to enable the debugging setting for the extension to output information into the log file.
2. Verify that your web server is not blocking POSTs from servers it may not 4. Check the version of this plugin against the official plugin repository to ensure you are using the latest version. Your issue might have been addressed in a newer version! See the [Releases](https://github.com/bitpay/magento-plugin/releases) page or the Magento Connect store for the latest version.
recognize. Double check this on your firewall as well, if one is being used. 5. If all else fails, send an email describing your issue **in detail** to support@bitpay.com
3. Check the `payment_bitpay.log` file for any errors during BitPay payment attempts.
If you contact BitPay support, they will ask to see the log file to help
diagnose the problem. The log file will be found inside your Magento's
`var/log/` directory. ***NOTE*** You will need to enable the debugging
setting for the extension to output information into the log file.
4. Check the version of this plugin against the official plugin repository to
ensure you are using the latest version. Your issue might have been
addressed in a newer version! See the [Releases](https://github.com/bitpay/magento-plugin/releases)
page for the latest.
5. If all else fails, send an email describing your issue **in detail** to
support@bitpay.com
***TIP***: When contacting support it will help us is you provide: ***TIP***: When contacting support it will help us is you provide:
* Magento Version (Found at the bottom page in the Administration section) * Magento CE Version (Found at the bottom page in the Administration section)
* Other extensions you have installed * Other extensions you have installed
* Some extensions do not play nice * Some extensions do not play nice
* Configuration settings for the extension (Most merchants take screen grabs) * Configuration settings for the extension (Most merchants take screen grabs)
@ -175,9 +120,17 @@ fulfillment.
* enabled debugging for this extension and send us `var/log/payment_bitpay.log` * enabled debugging for this extension and send us `var/log/payment_bitpay.log`
* Screen grabs of error message if applicable. * Screen grabs of error message if applicable.
# Contribute # Contribute
To contribute to this project, please fork and submit a pull request. For developers wanting to contribute to this project, it is assumed you have a stable Magento environment to work with, and are familiar with developing for Magento. You will need to clone this repository or fork and clone the repository you created.
Once you have cloned the repository, you will need to run [composer install](https://getcomposer.org/doc/00-intro.md#using-composer). Using and setting up composer is outside the scope, however you will find the documentation on their site comprehensive. You can then run the ``scripts/package`` script to create a distribution files which you can find in ``build/dist``. This is the file that you can upload to your server to unzip or do with what you will.
If you encounter any issues or implement any updates or changes, please open an [issue](https://github.com/bitpay/magento-plugin/issues) or submit a Pull Request.
***NOTE*** The ``scripts/package`` file contains some configuration settings that will need to change for different releases. If you are using this script to build files that are for distribution, these will need to be updated.
# License # License
@ -185,20 +138,8 @@ The MIT License (MIT)
Copyright (c) 2011-2014 BitPay, Inc. Copyright (c) 2011-2014 BitPay, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.