A payment gateway for WooCommerce to easily accept XRP as a payment method.
- PHP 5.6 or greater (PHP 7.2 or higher is recommended)
- WordPress 5.1 or greater
- WooCommerce 3.5.6 or greater
- A "self-owned" and activated XRP account. (You may not use an Exchange!)
- You need an account at XRPL Webhook (see below)
- Upload the plugin to the
/wp-content/plugins/woocommerce-xrp
directory folder, or install the plugin through the WordPress plugin screen directly. - Activate the plugin through the
Plugins
screen in Wordpress. - Create a free account at XRPL Webhook and obtain your API keys. This is required as the plugin uses this webhook to update the checkout page whenever a payment is made.
- Go to "WooCommerce -> Settings -> Payments" and configure the plugin.
The node s2.ripple.com is being used to talk to the XRP network. This can easily be changed under Advanced and you can use any public XRP server.
XRPL Webhooks is a free service that send HTTP requests to a specified URL each time a transaction is made to a specific XRP account. The plugin use this service to update the order in real-time when the customer makes a payment.
You can use the decentralized exchange (DEX) on the XRP Ledger, Binance, Bitbank, Bitfinex, Bitlish, BitMEX, Bitrue, Bitsane, Bitstamp, Bittrex, Bitcoin Exchange Thailand, CEX.IO, Coinbase, Kraken or Uphold as the exchange to get the XRP rate when your customer is checking out.
The supported currencies are AUD, BGN, BRL, CAD, CHF, CNY, CZK, DKK, EUR, GBP, HKD, HRK, HUF, IDR, ILS, INR, ISK, JPY, KRW, MXN, MYR, NOK, NZD, PHP, PLN, RON, RUB, SEK, SGD, THB, TRY, USD and ZAR. The rates are updated daily using the XML feed from ECB.
By default, we speak JSON-RPC on port 51234 with the XRP server. Some webservers are behind a firewall that doesn't allow outgoing traffic on non-standard ports. By enabling this feature, we talk to cors-anywhere.herokuapp.com, using TLS on port 443, which then acts as a proxy and relays the traffic to the XRP server.
- Add the decentralized exchange. (DEX)
- Fix the text style on the checkout page.
- Add new exchanges. (Bitsane, CEX.IO, Coinbase, Uphold)
- Add missing sanitation checks for user input.
- Add new order status (Overpaid) for when a customer pays too much.
- Fix potential rounding error when processing payments.
- Fix a bug where the payment gateway was loaded twice.
- Add so the webhook try again if we're unable to talk to the XRP node.
- Remove the use of Google Chart to generate the QR-code. Use qrcodejs instead.
- Change to a singleton layout to avoid conflicting with other plugins.
- Add check to ensure that the specified XRP account is activated.
- Add a new exchange. (Bitrue)
- Fix a bug which prevents us from running on 32bit systems.
- Add 3 new exchanges. (Bitbank, Bitcoin Exchange Thailand and Bitlish)
- Add 31 new currencies.
- Add 2 new languages. (Dutch and Japanese))
- Add a proxy feature to bypass your servers firewall.
- Lots of bugfixes.
- Add extra mitigations against the partial payment exploit.
- Remove the cURL dependency and use wp_remote_get() and wp_remote_post() instead.
- Initial release!
Please see LICENSE.
- A huge thank you to both Ripple and XRPL Labs for being awesome.
- A huge thank you to Jens Twesmann for his code contributions.
- Thanks to the translators! (Chronos Ananké, Bert de Hoogh and Tarotaro)
- Thanks to everyone who tests new unreleased code to help us nail bugs.
If you like this plugin and wish to donate, feel free to send some XRP to rscKqdNj1ECXamMoxxwejTnBmhwTpBvTKz.