定制 wissemkadri/konnect 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

wissemkadri/konnect

最新稳定版本:v1.0.0

Composer 安装命令:

composer require wissemkadri/konnect

包简介

Konnect PHP SDK

README 文档

README

Konnect

The payment solution for Tunisia. Simple, fast, personalized, immediate and for all !

Installation

composer require wissemkadri/konnect

This SDK follows the PSR-18 "HTTP Client" standard, to allow for more interoperability.

It's most likely your framework will handle the dependencies injection for you, if not you can use any implementation of the spec.

The below example uses this two librairies:

composer require guzzlehttp/guzzle nyholm/psr7

SDK Initialization

<?php

include './vendor/autoload.php';

use GuzzleHttp\Client;
use WissemKadri\Konnect\Gateway;
use WissemKadri\Konnect\ApiException;
use Nyholm\Psr7\Factory\Psr17Factory;

// Use this or bring your own implementation
$psr17Factory = new Psr17Factory();
$client = new Client();
$konnect = new Gateway($psr17Factory, $psr17Factory, $client);

// Mandatory
// Retrieve this from your Konnect dashboard
$apiKey = "xxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxx";
$konnect->setApiKey($apiKey);

// By default, the SDK is in sandbox mode.
// To switch to production, use the following
$konnect->setProductionMode();

API

initPayment(array $params)

Creates a new payment request.

See Konnect's documentation for the full description of request and response data.

/**
 * @throws ApiException|\Psr\Http\Client\ClientExceptionInterface
 */
public function initPayment(array $params): array
See usage sample and output
$response = $konnect->initPayment([
    "receiverWalletId" => "5f7a209aeb3f76490ac4a3d1",
    "token" => "TND",
    "amount" => 10000, // millimes
    "type" => "immediate",
    "description" => "payment description",
    "acceptedPaymentMethods" => [
        "wallet",
        "bank_card",
        "e-DINAR"
    ],
    "lifespan" => 10, // minutes
    "checkoutForm" => true,
    "addPaymentFeesToAmount" => true,
    "firstName" => "John",
    "lastName" => "Doe",
    "phoneNumber" => "22777777",
    "email" => "john.doe@gmail.com",
    "orderId" => "1234657",
    "webhook" => "https://merchant.tech/api/notification_payment",
    "theme" => "dark"
]);

var_dump($response);
/**
array(2) {
["payUrl"]=>
string(83) "https://gateway.konnect.network/pay?payment_ref=6392d70408ac861bcea30337&theme=dark"
["paymentRef"]=>
string(24) "6392d70408ac861bcea30337"
}
*/

getPaymentDetails(string $paymentId)

Gets payment details for the specified id.

See Konnect's documentation for the full description of the returned array.

/**
 * @throws ApiException|\Psr\Http\Client\ClientExceptionInterface
 */
public function getPaymentDetails(string $paymentId): array

Exceptions

This SDK throws a \WissemKadri\Konnect\ApiException if there's anything wrong with your call. The exception's errors property will contains the reported errors.

If however, something is wrong with the Konnect server, a PSR-18 exception will be thrown instead.

try {
    $response = $konnect->initPayment([/* ... */]);

    } catch (ApiException $e) {
        // HTTP status code
        echo $e->getCode();
        // HTTP status message
        echo $e->getMessage();
        // Konnect API usage errors
        var_dump($e->errors);

    } catch (\Psr\Http\Client\ClientExceptionInterface $e) {
        // Transport error, something is wrong with the Konnect API, and they're
        // probably already working on that
    }
}

See also

统计信息

  • 总下载量: 3
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: BSD-3-Clause
  • 更新时间: 2025-06-18