paneedesign / flypme-bundle
A Symfony Bundle for Flyp.me APIs
Installs: 63
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 3
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=7.0.0
- ext-curl: *
- ext-json: *
- mashape/unirest-php: ^3.0
This package is not auto-updated.
Last update: 2024-11-11 00:26:29 UTC
README
A Symfony Bundle for Flyp.me APIs
Install
composer require paneedesign/flypme-bundle
Usage
Enable the bundle
<?php // app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = [ // ... new PaneeDesign\FlypMeBundle\PedFlypMeBundle(), ]; // ... } // ... }
Create client
$flypme = $this->get('ped_flyp_me.handler');
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" }