WooCommerce Steem Payment Method Now Queries 3 Exchanges for STEEM/SBD Prices - 17 March 2019

in #utopian-io5 years ago

Introduction

Version 1.1.0 of this plugin now includes the feature of querying 3 popular exchanges for the exchange rate of STEEM and SBD in respect to the store's FIAT of choice.

Repository

https://github.com/sagescrub/woocommerce-steem-payment-method

Wordpress / WooCommerce Plugin

Use this link to download/install this plugin in your WooCommerce store:
https://wordpress.org/plugins/woo-steem-payment-method/

WooCommerce Steem Payment Method

Latest Updates

Up until now this plugin had been querying only one exchange (Poloniex) to retrieve exchange rate information for STEEM / SBD. This plugin has been updated to query 3 popular exchanges for exchange rate data:

  1. Binance
  2. Bittrex
  3. Poloniex
Exchange Selection

Only trustworthy exchanges with good volume were chosen so that we run less risk of price manipulation. However, it would be worth considering adding other reputable, high volume exchanges in the future. And the new code will allow easily adding new exchanges into this plugin in the future as needed.

Averaging Rates from Multiple Exchanges

The price of STEEM is calculated by averaging the rates discovered from each of the three exchanges. However, because Binance does not yet support SBD rates, only rates discovered by two other exchanges are averaged for the price of SBD.

Averages provides a more accurate price representation of the market than relying on just one exchange

Less Dependence on One Exchange

Querying three exchanges now gives us less dependence on one exchange. There is now not a single point of failure in regard to discovering STEEM/SBD prices.

Exchange Rate Calculation

In the case of all three exchanges, the exchange rate calculation is derived through the price of Bitcoin (BTC) relative to US Dollar (USD).

Of these three exchanges only Bittrex provides prices in true US Dollar equivalents. Binance and Poloniex do not offer prices in USD, but they do offer prices in Tether (USDT), which we are using to represent value in USD.

  • Binance
    Converts USDT to BTC to STEEM (SBD is not supported by Binance)

  • Bittrex
    Converts USD to BTC to STEEM / SBD

  • Poloniex
    Converts USDT to BTC to STEEM /SBD

Future Plans

There are a few plans for improving this plugin in the future:

More Control Over Exchange Data

I would like to offer the ability to turn on or off exchanges that are included in the price averages (described above). This would allow users to decide which exchanges they want to include in price calculation.

Alert Admin for Stale Exchange Data

I see the value in alerting admin by email when exchange rates data have not been retrieved successfully within a certain amount of time, such as several hours or several attempts.

Less Dependency on Tether for Exchange Rates

Give the user the choice to use USDC as an alternative to USDT for exchanges that support it.

KeyChain

Currently Steem Payments are made via SteemConnect. I would like to explore the possibility of integrating KeyChain as an alternative payment method within this plugin. This would give the users more choice as to how to transact.

Subscriptions

@graylan and @techcoderx are exploring the possibility of updating this plugin to support WooCommerce subscription based products. This would allow the possibility of purchasing products with recurring payments.

Collaboration

I am open to collaboration on this plugin regarding the above enhancements or other improvements I have not listed here. Feel free to reach out to me if you are interested in the comments or via discord.

Steemyy API

Special thanks to @justyy for providing free steem APIs. This plugin currently uses one of @justyy’s apis to find matching transactions. Consider giving @justyy a vote for witness to support his efforts providing free steem APIs and other tools.

Websites Using this Plugin

To my knowledge there are now at least 9 websites using this plugin to accept steem/sbd payments:

Homesteaders Co-op

Free community marketplace for sustainable goods and ethical services. A venue used by 28+ vendors in 11+ countries to accept STEEM/SBD. - @homesteaderscoop
https://homesteaderscoop.com

BuildTeam.io

Purchase SteemVoter premium subscriptions - @thecryptodrive
https://shop.buildteam.io/shop/

OneLoveDTube

Decentralized dTube video hosting - @graylan, @techcoderx
https://oneloveipfs.com/

Nicky Havey

Music, Liquid Drum & Bass - @nickyhavey
https://nickyhavey.co.uk/product-category/music/

Cana-Curate

HashKings / Cannabis related merchandise - @qwoyn
https://qwoyn.io/dispensary/

SimplyElated

Steem Graphics Pack for steem posts - @kenanqhd
https://simplyelated.com/index.php/product/graphics-pack/

Davood Faramarzi

Music - @davidfar
http://davoodfaramarzi.com/shop/

MarcoSdk

3DK Render Studio artwork renderings - @marcosdk
https://www.3dkrender.com/shop/

ShopSteem

Tshirts, games and other products for steem/sbd - @patrickulrich
https://shopsteem.com/

Series Backlinks




coopbadgevendor.png

Website | @homesteaderscoop | Discord Community


natural-medicine-banner.jpg

#naturalmedicine | Introducing @naturalmedicine | Discord Community


ghscollective_logo-01-1.png
#ghsc | Introducing @ghscollective | Discord Community


image.png

#tribesteemup | @tribesteemup | The 8 Pillars of TribeSteemUp

Sort:  

Thank you for your contribution.

  1. I would suggest you manage your commits via Pull Requests i.e. you can create a branch and submit a PR to merge to your master branch - this way the branch will contain more descriptive commits instead of single big commit.
  2. You three exchanges could all extend to a interface which has a query_rates function signature. So you code will be much more organized later when you want to switch exchanges.
  3. You might want to look at the APIs from coinmarketcap that can be used to convert between any two currencies/fiat - not use USD/BTC, BTC/STEEM, or BTC/SBD
  4. Getting medians may be better than averaging the rates from exchanges . Sometimes, one exchange may show up abnormal rates because of pumping.

Your contribution has been evaluated according to Utopian policies and guidelines, as well as a predefined set of questions pertaining to the category.

To view those questions and the relevant answers related to your post, click here.


Need help? Chat with us on Discord.

[utopian-moderator]

Hi @justyy. Thank you so much, your comment is packed with helpful suggestions. I appreciate them all and you got me thinking about a few things from different angles, so I appreciate that!

RE #4 I am curious if you are implying calculating median rates weighted by volume or simply taking the middle rate? Definitely want to avoid pumping rates if it is possible, so I value your feedback.

Actually that is related to the reason why we are choosing trusted exchanges vs CoinMarketCap - some people do not trust coinmarketcap to always be an accurate representation. But after reading your comment I can see the value in offering it as a choice, or perhaps treating it as another exchanges from which to choose the median.

Thank you for your review, @justyy! Keep up the good work!

Thank you for developing this plug in, it's great to see how it's progressing and I'm sure the others appreciate the work you've put in!

Posted using Partiko Android

Sweettt.!! Gonna try this out

Man, I need to figure out something to sell on my WordPress site just to use this!

Posted using Partiko Android

I love the enthusiasm! Great! If you do try it out, let me know how it goes :)

excited to use some of this code, thank you for bringing it up to date with the multiple exchange lookup.

Likewise! I am very excited about the work you doing and hope that it benefits many others!

thanks, maybe i should track downloads of that actually for clarity later on, good idea! and thanks again!

Have you explored adding support for Steem Engine tokens in a future iteration? I was just thinking about those and could see them as an interesting addition.

No I have not explored that idea yet. It is something to consider as steem engine matures and gains more use. At least in now tokens can be traded to steem easily and purchased with steem/sbd :)

This post has been included in the latest edition of SoS Daily News - a digest of all the latest news on the Steem blockchain.

Thank you so much @pennsif!

Hi @sagescrub!

Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your post is eligible for our upvote, thanks to our collaboration with @utopian-io!
Feel free to join our @steem-ua Discord server

Hey, @sagescrub!

Thanks for contributing on Utopian.
We’re already looking forward to your next contribution!

Get higher incentives and support Utopian.io!
Simply set @utopian.pay as a 5% (or higher) payout beneficiary on your contribution post (via SteemPlus or Steeditor).

Want to chat? Join us on Discord https://discord.gg/h52nFrV.

Vote for Utopian Witness!

Hello,
Sorry for commenting on this older post, but are there any newer updates for the plugin?
Are you actively developing this still?
Also, does it translate from USD? I don't see it on the list.
Thank you
-Tim

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.033
BTC 64303.16
ETH 3137.29
USDT 1.00
SBD 3.97