mgamal / paymob-laravel
Paymob API与Laravel集成
v1.1.2
2023-01-11 12:39 UTC
Requires
- php: ^8.1
- friendsofphp/php-cs-fixer: ^3.4
- guzzlehttp/guzzle: ^7.4
- laravel/framework: >=6.20
Requires (Dev)
- orchestra/testbench: ^7.17
- phpunit/phpunit: ^9.5
- roave/security-advisories: dev-latest
README
这是一个Laravel框架与Paymob API的集成,旨在使开发者更容易在他们的应用程序中使用Paymob功能。
安装
您可以通过composer安装此包
composer require mgamal/paymob-laravel
可选,您可以使用以下命令发布配置文件:
php artisan vendor:publish --tag=config --provider="MG\Paymob\PaymobServiceProvider"
用法
- 设置Paymob凭据
PAYMOB_API_KEY = xxxxxxxxxxxxxxxxxxxxxx PAYMOB_INTEGRATION_ID = xxxxxx PAYMOB_IFRAME_ID = xxxxx PAYMOB_HMAC_SECRET = xxxxxxxxx
参考:Paymob集成
- 准备订单项
- 准备账单数据
- 准备总订单
- 使用订单的完整详细信息进行支付:项目、账单数据和总订单。
示例
use MG\Paymob\Paymob; public function checkout(){ // Prepare order items $orderItems = [ [ 'name' => 'Product x', 'amount_cents' => 100, 'description' => 'Product description', 'quantity' => 1 ] ]; // Prepare billing data: Fill empty keys with 'N/A'; required! $billingData = [ 'first_name' => 'John', 'last_name' => 'Doe', 'email' => 'someone@example.com', 'phone_number' => '+1xxxxxxxx', 'apartment' => 'N/A', 'floor' => 'N/A', 'building' => 'N/A', 'street' => 'N/A', 'city' => 'N/A', 'shipping_method' => 'N/A', 'country' => 'N/A', 'state' => 'N/A', ]; // Prepare order itself $orderToPrepare['amount_cents'] = 10; $orderToPrepare['merchant_order_id'] = 101; $orderToPrepare['items'] = $orderItems; $orderToPrepare['billing_data'] = $billingData; // Get payment URL $paymentUrl = $item->makePayment($orderToPrepare); return $paymentUrl; }