flexonexus/laravel-tap-payments
最新稳定版本:v1.0.0
Composer 安装命令:
composer require flexonexus/laravel-tap-payments
包简介
Laravel integration for Tap Payments (charges, refunds, webhooks).
README 文档
README
🚀 Elegant Laravel integration with Tap Payments: charges, refunds, webhooks — the clean Laravel way.
✨ Features
- 🔑 Simple Facade API:
Tap::createCharge(),Tap::refundCharge(), etc. - ⚙️ Configurable via
.env(TAP_SECRET_KEY,TAP_MODE, etc.) - 🔔 Built-in Webhook signature verification
- 📦 PSR-4 autoload & Laravel auto-discovery
- 🧪 Testbench support for easy unit testing
📦 Installation & Setup
Follow these steps to fully install and configure the package:
1. Install via Composer
composer require flexonexus/laravel-tap-payments
2. Publish the Config File
php artisan vendor:publish --tag=tap-config
This will create:
config/tap.php
3. Add Environment Variables
In your .env file:
TAP_MERCHANT_ID=your_merchant_id_here # Your Merchant ID TAP_SECRET_KEY=sk_test_xxx # Your Tap secret key TAP_PUBLIC_KEY=pk_test_xxx # Your Tap public key TAP_WEBHOOK_SECRET=whsec_xxx # Webhook secret for signature verification TAP_MODE=sandbox # sandbox | live
4. Configure Webhook URL
Set the webhook endpoint in your Tap dashboard:
https://your-domain.com/tap/webhook
The package already registers this route automatically.
5. Clear Cached Configs
If your app uses config caching, run:
php artisan config:clear
6. Test the Integration
Use the Facade to create a test charge:
use Tap; $charge = Tap::createCharge([ 'amount' => 50, 'currency' => 'USD', 'customer' => [ 'first_name' => 'Test', 'email' => 'test@example.com', 'phone' => ['country_code' => '966', 'number' => '500000000'], ], 'merchant' => ['id' => config('tap.merchant_id')], 'source' => ['id' => 'src_all'], 'redirect' => ['url' => route('checkout.callback')], 'description' => 'Order #1001', // ...any other Tap fields you need ]); dd($charge);
If you see a JSON response with a charge_id, 🎉 the package is working.
🚀 Usage Examples
Create a Charge
$charge = Tap::createCharge([ 'amount' => 50, 'currency' => 'USD', 'customer' => [ 'first_name' => 'Mohamed', 'email' => 'mohamed@example.com', 'phone' => ['country_code' => '966', 'number' => '500000000'], ], 'merchant' => ['id' => config('tap.merchant_id')], 'source' => ['id' => 'src_all'], 'redirect' => ['url' => route('checkout.callback')], 'description' => 'Order #1234', // ...any other Tap fields you need ]);
Retrieve a Charge
$charge = Tap::retrieveCharge($charge['id']);
Refund a Charge
$refund = Tap::refundCharge($charge['id'], [ 'amount' => 50, 'reason' => 'customer_request' ]);
🔔 Webhooks
- The package registers
/tap/webhookautomatically. - All requests are verified with
TAP_WEBHOOK_SECRET.
Example: Listen for events
Event::listen('tap::charge.succeeded', function ($payload) { // Update your order, mark it as paid });
🧪 Testing
composer test
This uses PHPUnit with Orchestra Testbench.
🤝 Contributing
PRs are welcome!
Please run composer test before submitting.
💡 Credits
- Built with ❤️ by Flexo Nexus
- Tap Payments API — https://www.tap.company
统计信息
- 总下载量: 5
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-09-29