xtodx / coinremitter
此包用于在 Laravel 中直接使用 coinremitter API
1.0.0
2020-11-07 21:30 UTC
Requires
- laravel/framework: >=5.2
README
适用于 Laravel 5.2 及以上版本的 Coinremitter 插件
安装指南。
您可以使用 Composer 在 Laravel 中安装 coin remitter 插件
composer require xtox/laravel
将服务提供者注册到您的 config/app.php 文件中,如下所示:
在 providers
数组的底部添加 Coinremitter\CoinremiterServiceProvider::class
行
'providers' => [
Coinremitter\CoinremiterServiceProvider::class,
]
使用以下命令将配置文件发布到 config 文件夹:
php artisan vendor:publish
在 config/coinremitter.php 文件中设置您想要使用的所有硬币的凭证,如下所示:
如果此文件不存在,则创建并设置配置,如下所示。 如何获取 API 密钥和密码?
return [
'BTC'=>[
'API_KEY'=>'YOUR_API_KEY_FROM_COINREMITTER_WALLET',
'PASSWORD'=>'YOUR_PASSWORD_FOR_WALLET',
],
'LTC'=>[
'API_KEY'=>'YOUR_API_KEY_FROM_COINREMITTER_WALLET',
'PASSWORD'=>'YOUR_PASSWORD_FOR_WALLET',
],
];
库的使用
您必须在想要使用此库的任何地方包含包的命名空间,例如:
use Coinremitter\Coinremitter;
使用命名空间后,您可以通过创建类对象来访问库的所有方法,例如:
$btc_wallet = new Coinremitter('BTC');
这里的 "BTC" 必须位于 config/coinremitter.php 文件中的数组中。
获取余额
您可以使用 get_balance 调用来获取您的钱包余额。
$balance = $btc_wallet->get_balance();
这将返回成功响应或错误响应,如果出现错误。以下是成功响应的示例:
{
"flag":1,
"msg":"Get balance successfully !",
"action":"get-balance",
"data":{
"balance":123
}
}
创建新的钱包地址
您可以使用以下方法获取新的钱包地址
$address = $btc_wallet->get_new_address();
成功响应
{
"flag":1,
"msg":"New address created successfully !",
"action":"get-new-address",
"data":{
"address":"MMtU5BzKcrew9BdTzru9QyT3YravQmzokh",
"label":""
}
}
您还可以通过传递参数给 get_new_address 方法来为您的地址分配标签
$param = [
'label'=>'my_label'
];
$address = $btc_wallet->get_new_address($param);
响应将在 label 键中添加给定的标签。
{
"flag":1,
"msg":"New address created successfully !",
"action":"get-new-address",
"data":{
"address":"MMtU5BzKcrew9BdTzru9QyT3YravQmzokh",
"label":"my_label"
}
}
验证钱包地址
使用以下方法来验证钱包地址
$param = [
'address'=>'your_Address_to_validate'
];
$validate = $btc_wallet->validate_address($param);
响应
{
"flag":1,
"msg":"success",
"action":"validate-address",
"data":{
"valid":true
}
}
提取金额
要将金额提取到特定的地址,请使用以下方法
$param = [
'to_address'=>'YOUR_ADDRESS',
'amount'=>123
];
$withdraw = $btc_wallet->withdraw($param);
成功响应
{
"flag":1,
"msg":"Amount Successfully Withdraw !",
"action":"withdraw",
"data":{
"id":"5b5ff10a8ebb830edb4e2a22",
"txid":"1147aca98ced7684907bd469e80cdf7482fe740a1aaf75c1e55f7a60f725ba28",
"explorer_url":"http://btc.com/exp/1147aca98ced7684907bd469e80cdf7482fe740a1aaf75c1e55f7a60f725ba28",
"amount":0.1,
"transaction_fees":0.001,
"processing_fees":0.00023,
"total_amount":0.10123,
"to_address":"YOUR_ADDRESS",
"wallet_id":"5c42ea0ab846fe751421cfb2",
"wallet_name":"wallet_name",
"coin_short_name":"BTC",
"date":"2019-06-02 01:02:03"
}
}
获取交易
使用以下方法通过从 withdraw amount
响应的 id
或从 webhook 的 id
字段获取的 id 来获取交易详情
$param = [
'id'=>'5b5ff10a8ebb830edb4e2a22'
];
$transaction = $btc_wallet->get_transaction($param);
成功响应
{
"flag":1,
"msg":"success",
"action":"get-transaction",
"data":{
"id":"5b5ff10a8ebb830edb4e2a22",
"txid":"1147aca98ced7684907bd469e80cdf7482fe740a1aaf75c1e55f7a60f725ba28",
"explorer_url":"http://btc.com/exp/1147aca98ced7684907bd469e80cdf7482fe740a1aaf75c1e55f7a60f725ba28",
"type":"receive",
"merchant_id":"5bc46fb28ebb8363d2657347",
"coin_short_name":"BTC",
"wallet_id":"5c42ea0ab846fe751421cfb2",
"wallet_name":"wallet_name",
"address":"QYTZkkKz7n1sMuphtxSPdau6BQthZfpnZC",
"amount":0.0003,
"confirmations":3,
"date":"2018-08-15 15:10:42"
}
}
如果响应数据对象中的 type
等于 send
,则响应如下所示:
{
"flag":1,
"msg":"success",
"action":"get-transaction",
"data":{
"id":"5b5ff10a8ebb830edb4e2a22",
"txid":"1147aca98ced7684907bd469e80cdf7482fe740a1aaf75c1e55f7a60f725ba28",
"explorer_url":"http://btc.com/exp/1147aca98ced7684907bd469e80cdf7482fe740a1aaf75c1e55f7a60f725ba28",
"type":"send",
"merchant_id":"5bc46fb28ebb8363d2657347",
"coin_short_name":"BTC",
"wallet_id":"5c42ea0ab846fe751421cfb2",
"wallet_name":"wallet_name",
"address":"QYTZkkKz7n1sMuphtxSPdau6BQthZfpnZC",
"amount":0.0003,
"confirmations":3,
"date":"2018-08-15 15:10:42"
"transaction_fees":0.001,
"processing_fees":0.1,
"total_amount":"2.10100000"
}
}
创建发票
您可以使用以下方法创建发票
$param = [
'amount'=>800, //required.
'notify_url'=>'https://yourdomain.com/notify-url', //optional,url on which you wants to receive notification,
'fail_url' => 'https://yourdomain.com/fail-url', //optional,url on which user will be redirect if user cancel invoice,
'suceess_url' => 'https://yourdomain.com/success-url', //optional,url on which user will be redirect when invoice paid,
'name'=>'random name',//optional,
'currency'=>'usd',//optional,
'expire_time'=>'20',//optional, invoice will expire in 20 minutes.
'description'=>'',//optional.
];
$invoice = $btc_wallet->create_invoice($param);
成功响应
{
"flag":1,
"msg":"Invoice successfully created !!!",
"action":"create-invoice",
"data":{
"id":"5b7650458ebb8306365624a2",
"invoice_id":"BTC02",
"merchant_id":"5bc46fb28ebb8363d2657347",
"url":"https://coinremitter.com/invoice/5b7650458ebb8306365624a2",
"total_amount":0.1,
"paid_amount":0,
"usd_amount":800,
"coin":"BTC",
"name":"random name",
"description":"",
"wallet_name":"wallet_name",
"address":"rger54654fgsd4h6u7dgsg",
"status":"Pending",
"status_code":0,
"notify_url":"http://yourdomain.com/notify-url",
"suceess_url":"http://yourdomain.com/success-url",
"fail_url":"http://yourdomain.com/fail-url",
"expire_on":"2018-12-06 10:35:57",
"invoice_date":"2019-12-04 18:19:10",
"last_updated_date":"2019-12-04 18:19:10"
}
}
获取发票
使用以下方法使用通过以下方法获得的 invoice_id 获取发票详情
$param = [
'invoice_id'=>'ETH002'
];
$invoice = $btc_wallet->get_invoice($param);
成功响应
{
"flag":1,
"msg":"success",
"action":"get-invoice",
"data":{
"id":"5b7650458ebb8306365624a2",
"invoice_id":"BTC02",
"merchant_id":"5bc46fb28ebb8363d2657347",
"url":"http://192.168.0.112/coinremitter/public/invoice/5b7650458ebb8306365624a2",
"total_amount":0.0009,
"paid_amount":0,
"usd_amount":800,
"coin":"ETH",
"name":"random name",
"description":"Hello world",
"wallet_name":"New Test-LTC",
"address":"rger54654fgsd4h6u7dgsg",
"payment_history":[
{
"txid":"c4b853d4be7586798870a4aa766e3bb781eddb24aaafd81da8f66263017b872d",
"explorer_url":"http://btc.com/exp/c4b853d4be7586798870a4aa766e3bb781eddb24aaafd81da8f66263017b872d",
"amount":0.005,
"date":"2019-12-02 12:09:02",
"confirmation":781
},
{
"txid":"a2541253ab72d7cf29f2f9becb1e31320dd0ed418f761ab1973dc9e412a51c7f",
"explorer_url":"http://btc.com/exp/a2541253ab72d7cf29f2f9becb1e31320dd0ed418f761ab1973dc9e412a51c7f",
"amount":0.005,
"date":"2019-12-02 12:15:02",
"confirmation":778
}
],
"status":"Pending",
"status_code":0,
"suceess_url":"http://yourdomain.com/success-url",
"fail_url":"http://yourdomain.com/fail-url",
"expire_on":"2018-12-06 10:35:57",
"invoice_date":"2018-08-17 10:04:13",
"last_updated_date":"2018-08-17 10:04:13"
}
}
获取美元中的实时币价
使用以下方法获取币价
$rate = $btc_wallet->get_coin_rate();
成功响应
{
"flag":1,
"msg":"success",
"action":"get-coin-rate",
"data":{
"BTC":{
"symbol":"BTC",
"name":"Bitcoin",
"price":7289.01
},
"LTC":{
"symbol":"LTC",
"name":"Litecoin",
"price":145.51
},
"DOGE":{
"symbol":"DOGE",
"name":"DogeCoin",
"price":0.0001
}
}
}
有关更多信息,请访问我们的 API 文档