vittominacori / flypme-php
A PHP wrapper for Flyp.me API
Requires
- php: >=7.0.0
- ext-curl: *
- ext-json: *
- mashape/unirest-php: ^3.0
README
A PHP wrapper for Flyp.me APIs
Install
composer require vittominacori/flypme-php
Usage
Prepare requirements
require __DIR__ . '/vendor/autoload.php'; use \FlypMe\FlypMe;
Create client
$flypme = new FlypMe();
Call APIs
Create
Create a new order
Last param could be "invoiced_amount" or "ordered_amount".
You can optionally specify destination and refund_address on the request.
$flypme->orderNew("LTC", "ZEC", "0.02", "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T", "invoiced_amount");
result:
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", "destination": "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "exchange_rate": "0.5403268038", "ordered_amount": "0.00980653", "invoiced_amount": "0.02", "charged_fee": "0.001", "from_currency": "LTC", "to_currency": "ZEC" }, "expires": 1199, "refund_address": "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T" }
Update
Update an order
Last param could be "invoiced_amount" or "ordered_amount".
You can optionally specify destination and refund_address on the request.
$flypme->orderUpdate("1b5929e7-0e6c-44a6-a428-e4db856d880e", "LTC", "ZEC", "0.03", "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T", "invoiced_amount");
result:
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", "destination": "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "exchange_rate": "0.5292734791", "ordered_amount": "0.0148782", "invoiced_amount": "0.03", "charged_fee": "0.001", "from_currency": "LTC", "to_currency": "ZEC" }, "expires": 1199, "refund_address": "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T" }
Accept
Accept an order
Accept an order by uuid
$flypme->orderAccept("1b5929e7-0e6c-44a6-a428-e4db856d880e");
result:
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", "destination": "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "exchange_rate": "0.5292734791", "ordered_amount": "0.0148782", "invoiced_amount": "0.03", "charged_fee": "0.001", "from_currency": "LTC", "to_currency": "ZEC" }, "expires": 1053, "deposit_address": "MHoWWcJzNH4aWUKvrtMwpqMggRRBsvB7va", "refund_address": "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T" }
Check
Check order status by uuid
Possible status are: WAITING_FOR_DEPOSIT, DEPOSIT_RECEIVED, DEPOSIT_CONFIRMED, EXECUTED, NEEDS_REFUND, REFUNDED, CANCELED and EXPIRED.
Possible payment_status are PENDING, UNDERPAY_RECEIVED, UNDERPAY_CONFIRMED, PAYMENT_RECEIVED, PAYMENT_CONFIRMED, OVERPAY_RECEIVED, OVERPAY_CONFIRMED. Orders with underpay or overpay will be refunded by the system.
$flypme->orderCheck("1b5929e7-0e6c-44a6-a428-e4db856d880e");
result:
{ "status": "WAITING_FOR_DEPOSIT", "payment_status": "PENDING" }
Result will also include 'confirmations' when the payment is in some XXX_RECEIVED status.
{ "confirmations": "3/47", "payment_status": "PAYMENT_RECEIVED", "status": "DEPOSIT_RECEIVED" }
Result will also include 'txid' and 'txurl' when the order is EXECUTED.
{ "payment_status": "PAYMENT_CONFIRMED", "status": "EXECUTED", "txid": "XXXXX", "txurl": "https://etherscan.io/tx/XXX" }
Info
Get order full info
$flypme->orderInfo("1b5929e7-0e6c-44a6-a428-e4db856d880e");
result:
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", "destination": "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "exchange_rate": "0.5292734791", "ordered_amount": "0.0148782", "invoiced_amount": "0.03", "charged_fee": "0.001", "from_currency": "LTC", "to_currency": "ZEC" }, "expires": 961, "status": "WAITING_FOR_DEPOSIT", "payment_status": "PENDING", "deposit_address": "MHoWWcJzNH4aWUKvrtMwpqMggRRBsvB7va", "refund_address": "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T" }
Result will also include 'confirmations' when the payment is in some XXX_RECEIVED status.
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", (...) }, (...) "confirmations": "47/47" }
Result will also include 'txid' and 'txurl' when the order is EXECUTED.
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", (...) }, (...) "txid": "XXXXX", "txurl": "https://etherscan.io/tx/..." }
Cancel order
Cancel a pending order
$flypme->orderCancel("1b5929e7-0e6c-44a6-a428-e4db856d880e");
result:
{ "result": "ok" }
Add refund
Add a refund address for orders not having one
$flypme->addRefund("fc0d5579-5921-4097-8e5c-7e5ec8e7a2ea", "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T");
result:
{ "result": "ok" }
Query rates
Get exchange rates
$flypme->dataExchangeRates();
result:
{ "LTC-BTC": "0.0174777496", "BTC-LTC": "55.724760293", (...) "CREA-FYP": "2.06496", "FYP-CREA": "0.3423985733" }
Query active currencies
Get available currencies information
A currency needs to have both exchange and send set to true to be enabled for the accountless exchange. Confirmation time is the expected time in minutes (approximate). Other parameters are self explanatory.
$flypme->currencies();
result:
{ "BTC": { "code": "BTC", "precision": 8, "display_precision": 4, "created_at": "2014-02-04T02:28:37.000Z", "updated_at": "2017-12-12T17:03:52.000Z", "name": "Bitcoin", "website": "https://bitcoin.org/", "confirmation_time": 20, "default": false, "charged_fee": "0.0008", "currency_type": "CRYPTO", "exchange": true, "send": true }, (...) "ZEC": { "code": "ZEC", "precision": 8, "display_precision": 4, "created_at": "2017-02-24T11:41:27.000Z", "updated_at": "2017-12-12T14:44:02.000Z", "name": "Zcash", "website": "https://z.cash/", "confirmation_time": 5, "default": false, "charged_fee": "0.0008", "currency_type": "CRYPTO", "exchange": true, "send": true } }
Query limits
Get max and min limits in $toCurrency. To get the limits in $fromCurrency you must calculate it using the exchange rate.
// $flypme->orderLimits($fromCurrency, $toCurrency) $flypme->orderLimits('BTC', 'ETH');
result:
{ "min": "0.006", "max": "7.26915022" }
License
Code released under the MIT License.