xenon / nagad-api
这是一个用于PHP应用程序的孟加拉国nagad支付网关API开发库。此库可以轻松用作包依赖项。
v1.9.2.3
2023-06-07 17:35 UTC
Requires
- php: ^7.3|^8.0|^8.1|^8.2
- ext-curl: *
- ext-json: *
- ext-openssl: *
- nesbot/carbon: ^2.59
Requires (Dev)
- phpunit/phpunit: ^7.3|^8.1.3|^9.0.2
- dev-master
- v1.9.2.3
- v1.9.2.2
- v1.9.2.1
- v1.9.2.0
- v1.9.1.9
- v1.9.1.8
- v1.9.1.7
- v1.9.1.6
- v1.9.1.5
- v1.9.1.4
- v1.9.1.3
- v1.9.1.2
- v1.9.1.1
- v1.9.1.0
- v1.9.0.3
- v1.9.0.2
- v1.9.0.1
- v1.9.0.0
- v1.8.4.8
- v1.8.4.6
- v1.8.4.5
- v1.8.4.4
- v1.8.4.3
- v1.8.4.2
- v1.8.4.1
- v1.8.3
- v1.8.2
- v1.8.0
- v1.6.7
- v1.6.6
- v1.6.5
- v1.6.4
- v1.6.3
- v1.6.2
- v1.6.1
- v1.6.0
- v1.5.9
- v1.5.8
- v1.5.7
- v1.5.3
- v1.5.2
- v1.5.1
- v1.5.0
- v0.1.5_alpha
- v0.0.1_alpha
- dev-dev
This package is auto-updated.
Last update: 2024-09-23 22:38:03 UTC
README
Xenon/NagadApi
功能
- 易于安装
- 易于处理支付
- 基于Composer的安装
- 验证支付
- 演示发票代码生成
使用Composer安装
composer require xenon/nagad-api
示例代码
<?php use Xenon\NagadApi\Helper; use Xenon\NagadApi\Base; require 'vendor/autoload.php'; /** * ============================================================================== * all configuration are used here for demo purpose. * for use in dev mode use 'development' * for use in production mode use 'production' * =============================================================================== **/ $config = [ 'NAGAD_APP_ENV' => 'development', // development|production 'NAGAD_APP_LOG' => '1', 'NAGAD_APP_ACCOUNT' => '016XXXXXXXX', //demo 'NAGAD_APP_MERCHANTID' => '6800000025', //demo 'NAGAD_APP_MERCHANT_PRIVATE_KEY' => 'MIIEvFAAxN1qfKiRiCL720FtQfIwPDp9ZqbG2OQbdyZUB8I08irKJ0x/psM4SjXasglHBK5G1DX7BmwcB/PRbC0cHYy3pXDmLI8pZl1NehLzbav0Y4fP4MdnpQnfzZJdpaGVE0oI15l', 'NAGAD_APP_MERCHANT_PG_PUBLIC_KEY' => 'MIIBIjANBc54jjMJoP2toR9fGmQV7y9fzj', 'NAGAD_APP_TIMEZONE' => 'Asia/Dhaka', ]; $nagad = new Base($config, [ 'amount' => 10, 'invoice' => Helper::generateFakeInvoice(15, true), 'merchantCallback' => 'https://example.com/payment/success/id=4', ]);
方法-1 : 用于网站
$status = $nagad->payNow($nagad); //will redirect to payment page
方法-2 : 返回重定向URL。您可以根据需要使用此URL
$paymentUrl = $nagad->payNowWithoutRedirection($nagad); //will return payment url like below. You can use that url and do whatever u want to get payment from clients.
http://sandbox.mynagad.com:10060/check-out/MDYyODAwNTcyNTYxNi42ODMwMDIwMDcxMDQyMjUuOU5PTEFVNkVaWkdUWVRBLmJiZGMyNTE3MTVmZTNiNjIzN2Zk
之后,使用以下方法提取支付响应,它将返回一个数组
$successUrl = 'https://example.com/payment/success/id=4/?merchant=683XXXX225&order_id=CKH060JXXXXXFRA2&payment_ref_id=MXXXXXXXXtIMDYwSjFRSlBRMUZSQTIuMTg0NTE2Yzc3ZmEzNmEwZTJlZjk=&status=Success&status_code=00_0000_000&message=Successful%20Transaction&payment_dt=20211123235008&issuer_payment_ref=MTEyMzIzNDg1NzUwOS42ODMwMDIwMDcxMDQyMjUuQ0tIMDYwSjFRSlBRMUZSQTIuMTg0NTE2Yzc3ZmEzNmEwZTJlZjk=';
$response = Helper::successResponse("$successUrl");
Array
(
[merchant] => 683XXXX225
[order_id] => CKH060JXXXXXFRA2
[payment_ref_id] => MXXXXXXXXtIMDYwSjFRSlBRMUZSQTIuMTg0NTE2Yzc3ZmEzNmEwZTJlZjk=
[status] => Success
[status_code] => 00_0000_000
[message] => Successful Transaction
[payment_dt] => 20211123235008
[issuer_payment_ref] => MTEyMzIzNDg1NzUwOXXXXXtIMDYwSjFRSlBRMUZSQTIuMTg0NTE2Yzc3ZmEzNmEwZTJlZjk=
)
对于支付验证,使用以下方法。您将获得以下JSON作为响应。
$helper = new Helper($config);
$response = $helper->verifyPayment($response['payment_ref_id']);
支付验证响应
{
merchantId: "683XXXX225",
orderId: "CKH060JXXXXXFRA2",
paymentRefId: "MXXXXXXXXtIMDYwSjFRSlBRMUZSQTIuMTg0NTE2Yzc3ZmEzNmEwZTJlZjk=",
amount: "16",
clientMobileNo: "016****5428",
merchantMobileNo: "01XXXXXXX10",
orderDateTime: "2021-11-23 23:48:22.0",
issuerPaymentDateTime: "2021-11-23 23:50:08.0",
issuerPaymentRefNo: "000XXXW",
additionalMerchantInfo: null,
status: "Success",
statusCode: "000",
cancelIssuerDateTime: null,
cancelIssuerRefNo: null
}
维护者
贡献者
重要信息
沙盒环境
- 需要沙盒详细信息进行沙盒测试。检查您从nagad当局收到的电子邮件
- 使用沙盒详细信息,例如pgpublickey、privatekey、merchant-id进行沙盒测试
- 您需要注册一个手机号码进行沙盒测试。请联系您的账户经理进行此操作
- 在上线之前,您应该测试测试环境
生产环境
- 需要生产详细信息进行最终生产。您将通过电子邮件获得这些信息
- 在运行生产之前,您的服务器IP/域名和回调URL应该被列入白名单。您可以使用电子邮件或其他系统联系nagad团队
登录您的 Nagad商户面板
https://auth.mynagad.com:10900/authentication-service-provider-1.0/login
步骤1: 在商户门户中,转到“商户管理”菜单下的“商户集成详情”。您将获得商户ID,这是您的集成商户ID。
然后,点击“生成密钥”并下载商户私钥和商户公钥。
步骤2: _转到“商户管理”菜单下的“商户集成”。输入您的回调URL并上传步骤1中下载的商户公钥。添加并提交!_
步骤3: _使用生产详细信息。您必须使用您下载的公钥和私钥!_
- 如果您有任何问题/查询,请通过电子邮件联系我 arif98741@gmail.com
- 编写代码,疯狂一点
### 如果您发现任何类型的问题或错误,强烈建议您报告。对于报告,请使用[问题选项](https://github.com/arif98741/nagadApi/issues)。您也可以添加拉取请求。对于拉取请求,您应该使用**dev**分支。因为我们的**master**分支目前正在为社区的使用提供服务。我们不想搞砸