kenvel / laravel-tinkoff

简单的Тинькофф银行在线支付库。

dev-master 2022-04-20 11:39 UTC

This package is auto-updated.

Last update: 2024-09-20 17:13:37 UTC


README

这是一个用于通过互联网接受Тинькофф银行支付的简单库。

功能

  • 生成商品支付URL
  • 支付确认
  • 查看支付状态
  • 取消支付

安装

使用 Composer

composer require kenvel/laravel-tinkoff

在控制器中连接

use Kenvel\Tinkoff;

使用示例

1. 初始化

$api_url    = 'https://securepay.tinkoff.ru/v2/';
$terminal   = '152619634343';
$secret_key = 'terminal_secret_password';

$tinkoff = new Tinkoff($api_url, $terminal, $secret_key);

2. 获取支付URL

//Подготовка массива с данными об оплате
$payment = [
    'OrderId'       => '123456',        //Ваш идентификатор платежа
    'Amount'        => '100',           //сумма всего платежа в рублях
    'Language'      => 'ru',            //язык - используется для локализации страницы оплаты
    'Description'   => 'Some buying',   //описание платежа
    'Email'         => 'user@email.com',//email покупателя
    'Phone'         => '89099998877',   //телефон покупателя
    'Name'          => 'Customer name', //Имя покупателя
    'Taxation'      => 'usn_income'     //Налогооблажение
];

//подготовка массива с покупками
$items[] = [
    'Name'  => 'Название товара',
    'Price' => '100',    //цена товара в рублях
    'NDS'   => 'vat20',  //НДС
];

//Получение url для оплаты
$paymentURL = $tinkoff->paymentURL($payment, $items);

//Контроль ошибок
if(!$paymentURL){
  echo($tinkoff->error);
} else {
  $payment_id = $tinkoff->payment_id;
  return redirect($result['payment_url']);
}

3. 获取支付状态

//$payment_id Идентификатор платежа банка (полученый в пункте "2 Получить URL для оплаты")

$status = $tinkoff->getState($payment_id)

//Контроль ошибок
if(!$status){
  echo($tinkoff->error);
} else {
  echo($status);
}

4. 取消支付

$status = $tinkoff->cencelPayment($payment_id)

//Контроль ошибок
if(!$status){
  echo($tinkoff->error);
} else {
  echo($status);
}

5. 确认支付

$status = $tinkoff->confirmPayment($payment_id)

//Контроль ошибок
if(!$status){
  echo($tinkoff->error);
} else {
  echo($status);
}

Donate button

如果您觉得这个项目对您有帮助,请考虑小额捐赠 - 这将帮助我改进代码