burcev-alex/kaspi-qr-sdk

PHP SDK for working with Kaspi QR payments

Maintainers

Package info

github.com/burcev-alex/kaspi-qr-sdk

pkg:composer/burcev-alex/kaspi-qr-sdk

Statistics

Installs: 9

Dependents: 0

Suggesters: 0

Stars: 2

Open Issues: 0

v1.0.4 2025-12-26 16:41 UTC

This package is auto-updated.

Last update: 2026-03-26 17:29:28 UTC


README

SDK для интеграции с Kaspi QR API на PHP.

Установка

composer require burcev-alex/kaspi-qr-sdk

Быстрый старт

use KaspiQrSdk\Config;
use KaspiQrSdk\KaspiScheme;
use KaspiQrSdk\KaspiQrClient;

$config = new Config(
    'ORG_BIN',
    'DEVICE_TOKEN',
    KaspiScheme::EASY,
    'API_KEY',
    'https://qrapi-cert-ip.kaspi.kz'
);
$client = new KaspiQrClient($config);

Примеры использования методов

Подключение с сертификатом

$config = new Config(
    'ORG_BIN',
    'DEVICE_TOKEN',
    KaspiScheme::STRONG,
    'API_KEY',
    'https://qrapi-cert-ip.kaspi.kz'
);
$config->setCaPath('combined_ca.pem');
$config->setCertPath('public.cer');
$config->setKeyPath('private.key');
$config->setKeyPass('asd123456');
$client = new KaspiQrClient($config);

Тестовый режим (отключает валидацию SSL)

$config = new Config(
    'ORG_BIN',
    'DEVICE_TOKEN',
    KaspiScheme::EASY,
    'API_KEY',
    'https://qrapi-cert-ip.kaspi.kz'
);
$config->setTestMode(true);
$client = new KaspiQrClient($config);

Merchant

// Создать инвойс
$invoice = $client->merchant->create('ORDER-123', 1000.0);

// Получить информацию о платеже
$info = $client->merchant->getPaymentInfo($invoice->getId());

// Отменить инвойс
$cancel = $client->merchant->cancel($invoice->getId());

// Возврат платежа
$refund = $client->merchant->refund($invoice->getId(), 500.0);

Partner

// Получить список торговых точек
$tradePoints = $client->partner->tradePoints();

// Зарегистрировать устройство
$register = $client->partner->register('DEVICE_ID', 123456);

// Удалить устройство
$client->partner->delete('DEVICE_TOKEN');

Emulator (только для тестовой среды)

// Проверка доступности API
$ping = $client->emulator->ping();

// Эмулировать сканирование QR
$scan = $client->emulator->scan($invoice->getId());

// Эмулировать подтверждение оплаты
$confirm = $client->emulator->confirm($invoice->getId());

// Эмулировать ошибку сканирования
$scanError = $client->emulator->scanError($invoice->getId());

// Эмулировать ошибку подтверждения
$confirmError = $client->emulator->confirmError($invoice->getId());

Структура

  • src/Config.php — конфиг SDK
  • src/KaspiQrClient.php — основной клиент
  • src/Request/ — запросы
  • src/Response/ — ответы
  • src/Exception/ — исключения

Лицензия

MIT