📜  paymob - PHP (1)

📅  最后修改于: 2023-12-03 15:18:16.584000             🧑  作者: Mango

PayMob - PHP介绍

PayMob是一个基于PHP编写的第三方支付库,旨在简化支付接口的集成和实现,同时提供安全和高效的支付处理能力。

功能特点
  • 支持多种支付方式:包括支付宝、微信、银联等多种支付方式的集成和支持
  • 丰富的支付API:提供多种支付接口和支付请求管理功能,方便快速集成和实现
  • 安全可靠:提供完善的支付数据加密和验证机制,确保支付信息的安全性和准确性
  • 灵活易用:API简单易用,可根据实际需求自由配置和调整
  • 多平台支持:支持在多种平台、多种开发环境下使用,包括Web、移动端、桌面等多种应用场景
使用流程
  1. 安装PayMob库:可以使用composer进行安装,在项目目录下使用命令行执行以下命令:

    composer require paymob/paymob-php
    
  2. 配置API参数:在使用PayMob之前需要配置对应的API参数,包括商户ID、密钥等信息,可以通过如下方式进行设置:

    $config = [
        'merchant_id' => 'xxxxx',
        'api_key' => 'xxxxxxxxxxxx',
        'hash_key' => 'xxxxxxxxxxxxxxxx',
    ];
    PayMob::setConfig($config);
    
  3. 创建订单:使用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);
    
  4. 客户支付:根据返回的支付链接或二维码,让客户进行支付操作,支付完成后,PayMob库会将支付结果通知到指定的通知URL上。

  5. 查询订单:可以使用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,可以方便快速地接入和实现支付功能,同时也具备高效安全的支付处理能力,在支付领域有着广泛的应用和推广价值。