Laravel 的 Tap 支付 API

1.1.0 2021-03-08 21:15 UTC

This package is auto-updated.

Last update: 2024-09-07 11:55:34 UTC


README

Software License Latest Version on Packagist Total Downloads GitHub Release Date

为 Laravel 7.x & 8.x 提供支付 API

您需要在 Tap Payment 网站上 创建账户并创建您的访问令牌。

安装

composer require  moathdev/tap

配置

只需在您的 .env 文件中设置以下环境变量。

TAP_SECRET_KEY_LIVE=
TAP_SECRET_KEY_SANDBOX=

高级配置

运行 php artisan vendor:publish --provider="Moathdev\Tap\TapServiceProvider"

/config/tap.php

使用方法

函数

费用

  • getCharge() - 获取先前已创建的费用详情。提供之前请求返回的唯一费用 ID,Tap 将返回相应的费用信息。创建费用时返回相同信息。
  • createCharge() - 要对信用卡或借记卡(Knet、mada、Visa、MasterCard)或现有授权交易进行收费,您需要创建一个费用请求。如果您的 API 密钥处于测试模式,则实际上不会对卡进行收费,但其他所有操作都将像在实时模式下一样执行。
  • updateCharge() - 通过设置传递的参数值来更新指定的费用。任何未提供的参数将保持不变。
  • getAllCharges() - 返回您先前创建的所有费用列表。费用按顺序返回,最新费用排在最前面。

退款

  • getRefund() - 获取现有退款的详情。
  • createRefund() - 创建新的退款将退还先前已创建但尚未退款的费用。资金将退还到原始收费的卡上。
  • UpdateRefund() - 通过设置传递的参数值来更新指定的退款。任何未提供的参数将保持不变。
  • getAllRefunds() - 返回您先前创建的所有退款列表。退款按顺序返回,最新退款排在最前面。

示例

  • 检索费用
Route::get('/getCharge/{charge_id}', function($charge_id)
{
	$res = Tap::getCharge(['charge_id' => $charge_id]);

    dd($res);
});
  • 创建费用
Route::get('/createCharge', function()
{
	    $res  = Tap::createCharge([
            'amount'=> 1,
            'currency' => 'SAR',
            'threeDSecure' => true,
            'save_card' => false,
            'description' => 'Test Description',
            'statement_descriptor' => 'Sample',
            'metadata' => [
                'udf1' => 'test 1',
                'udf2' => 'test 2',
            ],
            'reference' => [
                'transaction' => 'txn_0001',
                'order' => 'ord_0001',
            ],
            'receipt' => [
                'email' => false,
                'sms' => false,
            ],
            'customer' => [
                'first_name' => "test",
                'middle_name' => "test",
                'last_name' => "test",
                'email' => "test@test.com",
                'phone' => [
                    'country_code' => "965",
                    'number' => "50000000",
                ],
            ],
            'merchant' => [
                'id' => ''
            ],
            'source' => [
                'id' => 'src_all',
            ],
            'post' => [
                'url' => 'http://your_website.com/post_url'
            ],
            'redirect' => [
                'url' => 'http://your_website.com/post_url'
            ]
        ]);
        
        dd($res);
});
  • 检索退款
Route::get('/getCharge/{refund_id}', function($refund_id)
{
	$res = Tap::getRefund(['refund_id' => $refund_id]);

    dd($res);
});
  • 创建退款
Route::get('/createRefund', function()
{
    $res  = Tap::createRefund([
        'charge_id' => 'chg_TS022520210006x9R20903398',
        'amount' => 1,
        'currency' => 'SAR',
        'description' => 'Test Description',
        'reason' => 'requested by customer',
        'reference' => [
            'merchant' => 'txn_0001'
        ],
        'metadata' => [
            'udf1' => 'test1',
            'udf2' => 'test2',
        ]
    ]);

    dd($res);

});