tingg

一个PHP SDK,帮助开发者将业务集成到Tingg平台

dev-main 2024-03-18 11:28 UTC

This package is not auto-updated.

Last update: 2024-09-24 06:59:13 UTC


README

简介 | 安装 | 许可证

简介

使用我们功能丰富且灵活的SDK,在几分钟内将您的PHP应用程序与Tingg结账集成。

  • 快速结账

安装

SDK可以通过以下命令使用Composer安装:

composer require tingg/checkout

快速结账集成

确保您获取到客户端ID和客户端密钥,然后继续。 查看文档

让我们看看一个简单的Express APP路由,该路由创建一个结账请求

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Tingg\Checkout\Express;

class CheckoutController extends Controller
{
    /**
     * Handle the incoming request.
     */
    public function __invoke(Request $request)
    {
        # Get these values from your .env config   
        $client_secret =env('clientSecret');
        $client_id = env('clientId');
        $environment = "testing";

        // Get the JSON payload from the request
        $payload = $request->json()->all();
        
        // A sample for $request->json()->all() returned value
        // $payload = [
        //     "merchant_transaction_id" => "mtr-dg9823euy3a",
        //     "account_number" => "acc-14n345j5599",
        //     "msisdn" => "254700000000",
        //     "service_code" => "JOHNDOEONLINE",
        //     "country_code" => "KEN",
        //     "currency_code" => "KES",
        //     "customer_last_name" => "John",
        //     "customer_first_name" => "Doe",
        //     "customer_email" => "tingg@cellulant.io",
        //     "request_amount" => "100",
        //     "due_date" => "2023-11-18 16:15:30",
        //     "language_code" => "en",
        //     "request_description" => "Dummy merchant transaction",
        //     "fail_redirect_url" => "https://webhook.site/88390df9-a496-432f-abe5-0cf3380fda54",
        //     "success_redirect_url" => "https://webhook.site/88390df9-a496-432f-abe5-0cf3380fda54",
        //     "callback_url" => "https://webhook.site/88390df9-a496-432f-abe5-0cf3380fda54",
        // ];
        
        // Init a checkout request
        $express = new Express();
        
        // validates & encrypt the request
        $data = $express->create($payload,$environment,$client_id,$client_secret);
        // Handle errors if error key is not empty
        // 1. Returns validation & API errors if any i.e $result['error']['message']

        return response()->json([
            "long_url" => $data['results']['long_url'],
            "short_url" => $data['results']['short_url']
        ]);
    }
}

许可证

此SDK遵循Apache License, Version 2.0,有关更多信息,请参阅LICENSE.txt