The moment we've all been waiting for has finaly arrived. SteemPayments is live!
I've called this first version beta because i still need to make some code cleanups and complete the full documentation.
Opensource payment gateway for everyone!
Todo the following hours and days
- Further complete the documentation
- Increase the number of working examples
- Prettify the code
- Add more nodes
- Community contest for some nice buttons/logo
- Improve the overall topic and SteemPayments website
- Shopping cart plugins (WooCommerce first)
- Donation button generator
- GUI update by @cass (see https://steemit.com/ui/@cass/steem-pay-ment-button-design-concept-and-design-process-part-1)
This topic will be updated continuously until i'm satisfied and no longer call SteemPayments a beta version. Make sure to follow this topic to keep updated! Git cloners, make sure to update the Git as there are some more changes to come soon.
From highend to lowend code
This project started as a very complex, laravel based module for myself. Then i figured that Steemit is full of highly skilled developers (take a look at steemtools.com) but we all forgot what could be the most important slice of the pie: PHP only users
I assume that most of the websites out there are running on shared hosts, having no console access, or programming skills to start compiling code. They have simple PHP based websites running a shopping cart if lucky, or just offering items in HTML table shape.
I started downgrading my code to run on even the most basic webhost, needing nothing more than PHP/Ajax.
This process was like taking a step in a timemachine, eliminating all the good things frameworks give us today, and going back to POST parameters like in the good old days (hello 1998!).
You'll notice some of that 'oldstyle' code around, just so you know, it's intended that way (Note to fellow dev's).
Using steempayments as frontend.
Let's start by rolling out the service most requested - PHP buttons!
Want to start accepting a payment or donation? Good! Here's how:
Yup. That's it. Click on it to see for yourself (and feel free to donate) :-)
The default URL to start a payment is http://www.steempayments.com/payment
Update use http://steempayments.com/payment/static from inside comments and posts!
Every request needs the following parameters
$data = array( 'paymentID' => Input::get('paymentID'), 'receiver' => Input::get('receiver'), 'amount' => Input::get('amount'), 'callback' => Input::get('callback'), );
You can send it both in json or URL parameters. So to create a payment/donation button, all you need to do is fill in the needed parameters, and you're good to go. The above button for example uses URL parameters.
This could easely be poured into a button style by creating a href with some nice image.
<a href="YOUR_URL"><img src=http://steempayments.com/img/button/steem01.jpg></a>
Alternatively, the same goes to HTML forms. Just name your inputs as the required parameter ID's.
Required parameter details
PaymentID Generate a new ID by calling the SteemHelper PHP class, or generate in JS (Github code).
Receiver Plaintext receiving account (or global variable in PHP).
Amount Plaintext amount needed. Requires 3 decimals [space] SBD or STEEM ( "0.001 STEEM").
Callback urlencoded URL to return after a successfull payment.
Using the PHP files to host everything yourself
All the files can be found on the SteemPayments Github. Documentation resided inside the docs folder.
Public RPC-API servers to connect
This list will be updated as more nodes will be setup. You can find the list inside the github folder.
Feel free to join me on https://steemit.chat/channel/steempayments
Beta version - What this means
Alpha version describes a development status that usually means the first complete version of a program or application, which is most likely unstable, but is useful to show what the product will do to, usually, a selected group—and is also called preview version; the beta version is usually the last version before wide release, often tested by users under real-world conditions.
Bugs could still occur, but all payments are made directly to the blockchain, so transactions are always safe from errors.