📅  最后修改于: 2023-12-03 15:18:16.584000             🧑  作者: Mango
PayMob是一个基于PHP编写的第三方支付库,旨在简化支付接口的集成和实现,同时提供安全和高效的支付处理能力。
安装PayMob库:可以使用composer进行安装,在项目目录下使用命令行执行以下命令:
composer require paymob/paymob-php
配置API参数:在使用PayMob之前需要配置对应的API参数,包括商户ID、密钥等信息,可以通过如下方式进行设置:
$config = [
'merchant_id' => 'xxxxx',
'api_key' => 'xxxxxxxxxxxx',
'hash_key' => 'xxxxxxxxxxxxxxxx',
];
PayMob::setConfig($config);
创建订单:使用PayMob库提供的接口,构建一个支付订单,返回支付链接或二维码用于支付:
$order = [
'amount_cents' => 100,
'currency' => 'EGP',
'merchant_order_id' => '123456',
'shipping_data' => [
'apartment' => 'NA',
'email' => 'test@test.com',
'floor' => 'NA',
'first_name' => 'Test',
'street' => 'NA',
'building' => 'NA',
'phone_number' => '01234567890',
'postal_code' => 'NA',
'city' => 'NA',
'country' => 'NA',
'last_name' => 'Test',
'state' => 'NA',
],
'items' => [
[
'name' => 'Test Item',
'amount_cents' => 100,
'description' => 'Test Item Description',
'quantity' => 1,
]
]
];
$paymentToken = PayMob::getInstance()->createOrder($order);
客户支付:根据返回的支付链接或二维码,让客户进行支付操作,支付完成后,PayMob库会将支付结果通知到指定的通知URL上。
查询订单:可以使用PayMob提供的接口查询订单的支付状态、支付信息等,具体用法如下:
$transactionId = 'xxxxx';
$payment = PayMob::getInstance()->getPayment($transactionId);
下面是一个简单的PayMob使用示例,仅供参考:
<?php
require_once './vendor/autoload.php';
use PayMob\PayMob;
// 配置API参数
$config = [
'merchant_id' => 'xxxxx',
'api_key' => 'xxxxxxxxxxxx',
'hash_key' => 'xxxxxxxxxxxxxxxx',
];
PayMob::setConfig($config);
// 创建订单
$order = [
'amount_cents' => 100,
'currency' => 'EGP',
'merchant_order_id' => '123456',
'shipping_data' => [
'apartment' => 'NA',
'email' => 'test@test.com',
'floor' => 'NA',
'first_name' => 'Test',
'street' => 'NA',
'building' => 'NA',
'phone_number' => '01234567890',
'postal_code' => 'NA',
'city' => 'NA',
'country' => 'NA',
'last_name' => 'Test',
'state' => 'NA',
],
'items' => [
[
'name' => 'Test Item',
'amount_cents' => 100,
'description' => 'Test Item Description',
'quantity' => 1,
]
]
];
$paymentToken = PayMob::getInstance()->createOrder($order);
// 输出支付链接或二维码
echo $paymentToken->payment_link;
echo '<br />';
echo '<img src="' . $paymentToken->qr_code['qr_image_url'] . '" />';
// 查询订单支付状态
$transactionId = 'xxxxx';
$payment = PayMob::getInstance()->getPayment($transactionId);
print_r($payment);
?>
PayMob是一个优秀的PHP支付库,提供多种支付方式和丰富的支付API,可以方便快速地接入和实现支付功能,同时也具备高效安全的支付处理能力,在支付领域有着广泛的应用和推广价值。