paneedesign / flypme-bundle
Flyp.me API 的 Symfony 扩展包
Requires
- php: >=7.0.0
- ext-curl: *
- ext-json: *
- mashape/unirest-php: ^3.0
This package is not auto-updated.
Last update: 2024-09-15 23:39:11 UTC
README
为 Flyp.me API 提供的 Symfony 扩展包
安装
composer require paneedesign/flypme-bundle
使用
启用扩展包
<?php // app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = [ // ... new PaneeDesign\FlypMeBundle\PedFlypMeBundle(), ]; // ... } // ... }
创建客户端
$flypme = $this->get('ped_flyp_me.handler');
调用 API
创建
创建新订单
最后一个参数可以是 "invoiced_amount" 或 "ordered_amount"。
您可以选择在请求中指定目的地和退款地址。
$flypme->orderNew("LTC", "ZEC", "0.02", "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T", "invoiced_amount");
结果
{ "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" }
更新
更新订单
最后一个参数可以是 "invoiced_amount" 或 "ordered_amount"。
您可以选择在请求中指定目的地和退款地址。
$flypme->orderUpdate("1b5929e7-0e6c-44a6-a428-e4db856d880e", "LTC", "ZEC", "0.03", "t1SBTywpsDMKndjogkXhZZSKdVbhadt3rVt", "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T", "invoiced_amount");
结果
{ "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" }
接受
接受订单
通过 uuid 接受订单
$flypme->orderAccept("1b5929e7-0e6c-44a6-a428-e4db856d880e");
结果
{ "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" }
检查
通过 uuid 检查订单状态
可能的状态有:WAITING_FOR_DEPOSIT, DEPOSIT_RECEIVED, DEPOSIT_CONFIRMED, EXECUTED, NEEDS_REFUND, REFUNDED, CANCELED 和 EXPIRED。
可能的支付状态有 PENDING, UNDERPAY_RECEIVED, UNDERPAY_CONFIRMED, PAYMENT_RECEIVED, PAYMENT_CONFIRMED, OVERPAY_RECEIVED, OVERPAY_CONFIRMED。有欠付或溢付的订单将由系统退款。
$flypme->orderCheck("1b5929e7-0e6c-44a6-a428-e4db856d880e");
结果
{ "status": "WAITING_FOR_DEPOSIT", "payment_status": "PENDING" }
当支付处于某种 XXX_RECEIVED 状态时,结果也将包括 'confirmations'。
{ "confirmations": "3/47", "payment_status": "PAYMENT_RECEIVED", "status": "DEPOSIT_RECEIVED" }
当订单处于 EXECUTED 状态时,结果还将包括 'txid' 和 'txurl'。
{ "payment_status": "PAYMENT_CONFIRMED", "status": "EXECUTED", "txid": "XXXXX", "txurl": "https://etherscan.io/tx/XXX" }
信息
获取订单完整信息
$flypme->orderInfo("1b5929e7-0e6c-44a6-a428-e4db856d880e");
结果
{ "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" }
当支付处于某种 XXX_RECEIVED 状态时,结果也将包括 'confirmations'。
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", (...) }, (...) "confirmations": "47/47" }
当订单处于 EXECUTED 状态时,结果还将包括 'txid' 和 'txurl'。
{ "order": { "uuid": "1b5929e7-0e6c-44a6-a428-e4db856d880e", (...) }, (...) "txid": "XXXXX", "txurl": "https://etherscan.io/tx/..." }
取消订单
取消挂起的订单
$flypme->orderCancel("1b5929e7-0e6c-44a6-a428-e4db856d880e");
结果
{ "result": "ok" }
添加退款
为没有退款地址的订单添加退款地址
$flypme->addRefund("fc0d5579-5921-4097-8e5c-7e5ec8e7a2ea", "LajyQBeZaBA1NkZDeY8YT5RYYVRkXMvb2T");
结果
{ "result": "ok" }
查询汇率
获取汇率
$flypme->dataExchangeRates();
结果
{ "LTC-BTC": "0.0174777496", "BTC-LTC": "55.724760293", (...) "CREA-FYP": "2.06496", "FYP-CREA": "0.3423985733" }
查询活跃货币
获取可用货币信息
货币需要同时设置交换和发送为 true,才能为无账户交换启用。确认时间是以分钟为单位的预期时间(近似)。其他参数的解释自明。
$flypme->currencies();
结果
{ "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 } }
查询限制
获取 $toCurrency 中的最大和最小限制。要获取 $fromCurrency 中的限制,您必须使用汇率计算。
// $flypme->orderLimits($fromCurrency, $toCurrency) $flypme->orderLimits('BTC', 'ETH');
结果
{ "min": "0.006", "max": "7.26915022" }