如何使用 Razorpay PHP API 获取付款详情?

Posted

技术标签:

【中文标题】如何使用 Razorpay PHP API 获取付款详情?【英文标题】:How to fetch payment details using Razorpay PHP API? 【发布时间】:2017-08-02 18:16:07 【问题描述】:

我正在尝试集成用于获取付款详细信息的代码。

billno:该值将取自 URL。

我当前的代码:

include 'razorpay/Razorpay.php';
use Razorpay\Api\Api;

$api = new Api('Secret ID', 'Secret Key');

$payment = $api->payment->fetch($_REQUEST['billno']);
$text =  json_encode($payment->toArray());
$obj = json_decode($text);
$shopping_id = $obj->'notes'->'shopping_id';

$rzp_amount = $obj->'amount';//xheck
$real_amount = $rzp_amount/100;
$rzp_key = $obj->'id';
$rzp_status = $obj->'status'; //Authorised cgecj
$rzp_descp = $obj->'description';
$rzp_mail = $obj->'email';
$rzp_phone = $obj->'contact';
$rzp_address = $obj->'notes'->'address';
$rzp_timestamp = $obj->'created_at';
$rzp_method = $obj->'method';

使用代码提取 billno 会给我们上面提到的 $rzp 变量。

【问题讨论】:

您面临的具体问题是什么?您能否提供 billno 的示例值? 面临完全相同的问题。无法获得整个 JSON 响应(可以访问单个值,但不能访问 JSON 对象)。并且它不是错误 JSON,而是为无效凭据传递提供 致命错误 【参考方案1】:

payment->fetch 调用返回一个支付实体,并且所有数据成员都可用于直接访问。您不必自己解码 JSON,这由 SDK 负责:

include 'razorpay/Razorpay.php';
use Razorpay\Api\Api;

$api = new Api('Secret ID', 'Secret Key');

$payment = $api->payment->fetch($_REQUEST['billno']);

echo $payment->amount;
print_r($payment->notes);

免责声明:我为 Razorpay 工作

【讨论】:

嗨@Nemo,我从哪里可以得到payment.captured事件中已付款用户的信息? 请查看完整的支付实体定义here。查看联系人和电子邮件字段。 您好,谢谢。但那不是我在看的东西。这是我正在看的那个。 razorpay.com/docs/virtual-accounts/api @ShashankHegde 你能写一封邮件到integrations@razorpay.com 关于这个吗?这看起来与原始问题无关。 嗨@Nemo 我如何检查付款是否已被捕获?截至目前,在测试模式下通过网上银行成功付款后,我看到捕获为假。

以上是关于如何使用 Razorpay PHP API 获取付款详情?的主要内容,如果未能解决你的问题,请参考以下文章

当我们在 razorpay 中使用测试模式时,是不是在 php 中进行实际支付转账?

如何获取保存的卡详细信息razorpay android

Razorpay 集成。问题:请提供您的 api 密钥以进行身份​​验证

Angular 找不到名称 Razorpay

在集成 Razorpay 支付网关期间没有支付?

Razorpay 如何使用 firebase 调用函数生成 orderId?