oneb-pub / liqpay-php-sdk
PHP SDK for LiqPay
0.2.3
2025-04-08 19:45 UTC
Requires
- php: >=7.4
- ext-json: *
- guzzlehttp/guzzle: ^7
- nesbot/carbon: ^2
- webmozart/assert: ^1.11
Requires (Dev)
- symfony/var-dumper: ^5.4
This package is not auto-updated.
Last update: 2025-04-22 20:32:04 UTC
README
Редакція від OneB
Requirements
- php >=7.4
Поточна документація від LiqPay
https://www.liqpay.ua/documentation/en
Встановлення
composer require oneb-pub/liqpay-php-sdk
Генерація посилання на оплату
$client = new \LiqPay\Client('<YOUR_PUBLIC_KEY>','<YOUR_PRIVATE_KEY>'); $url = $client->createPaymentLink() ->setAmount(100.12) ->setCurrency('USD') ->setDescription('Оплата рахунку №1251-2') ->setLanguage('uk') ->setReferenceId('12345_lkm347sd') //Ваш унікальний ідентифікатор даного платежу ->setReturnUrl('https://oneb.app') ->setWebhookUrl('https://example.com/liqpay-webhook') // Викликаєте, якщо хочете отримати веб-хук із даними про платіж ->setExpirationDate(\Carbon\Carbon::now()->addHours(12)) ->createToken() // Викликаєте, якщо потрібно токенізувати картку ->generate(); print_r(PHP_EOL.$url.PHP_EOL);
Оплата по токену
$client = new \LiqPay\Client('<YOUR_PUBLIC_KEY>','<YOUR_PRIVATE_KEY>'); $charge = $client->createPaymentByToken() ->setCardToken('sandbox_token') ->setAmount(100.12) ->setCurrency('USD') ->setDescription('Оплата рахунку №1251-2') ->setLanguage('uk') ->setReferenceId('12345_lkm347sd') //Ваш унікальний ідентифікатор даного платежу ->setWebhookUrl('https://example.com/liqpay-webhook'); $result = $charge->prepare()->charge(); // Підготовка платежу - необовʼязковий крок if(in_array($result['status'],['error','failure'])){ $errorDescription = $client->tryDescribeError($result['err_code'])??$result['err_description']??'Невідома помилка'; print "Помилка підготовки платежу: {$errorDescription}"; exit(1); } $result = $charge->prepare(false)->charge(); print_r(PHP_EOL.$result.PHP_EOL);
Отримання статусу платежу
$client = new \LiqPay\Client('<YOUR_PUBLIC_KEY>','<YOUR_PRIVATE_KEY>'); $paymentInfo = $client->getPaymentStatus('12345_823gf3'); print_r(PHP_EOL.$paymentInfo.PHP_EOL);
P.S.
API LiqPay містить також і інші фукнції та можливості, тут було релізовано те, що потребувалось. Можливе розширення бібліотеки за потреби, або за допомогою ваших pull-реквестів