topvisor / tinkoff-sdk-php
SDK для Tinkoff Api для Topvisor
Installs: 1 170
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 3
Forks: 2
Open Issues: 0
Requires
- php: >=8.0
- ext-curl: *
- ext-date: *
- ext-json: *
- ext-mbstring: *
- ext-openssl: *
README
SDK для Tinkoff Api
Установка
Используйте composer для установки
composer.json
{ "require": { "topvisor/tinkoff-sdk-php": "~0.17" } }
Пример использования библиотеки
Для работы с api требуется авторизоваться в Tinkoff Id.
use Topvisor\TinkoffSdk\Id\AuthToken; use Topvisor\TinkoffSdk\Id\Session; $accessToken = ''; // подставьте ваш access token $expired = (new DateTime('2022-01-01'))->getTimestamp(); $authToken = new AuthToken($accessToken, $expired); $session = new Session($authToken); // используется для дальнейших запросов к api
Методы
Tinkoff Business OpenApi
Пример обработки ошибок
use Topvisor\TinkoffSdk\Business\Error; try { $data = $service->get(); } catch (Throwable $e) { if ($e instanceof Error) { // ошибка Tinkoff Business OpenApi var_dump($e->statusCode); var_dump($e->id); var_dump($e->xRequestId); var_dump($e->getCode()); var_dump($e->getMessage()); var_dump($e->details); } else { // остальные ошибки // ... } }
Выставить счет
use Topvisor\TinkoffSdk\Business\Invoice; use Topvisor\TinkoffSdk\Business\InvoicePayer; use Topvisor\TinkoffSdk\Business\InvoiceItem; use Topvisor\TinkoffSdk\Business\InvoiceService; $payer = new InvoicePayer(); $payer->inn = '730990470834'; $item = new InvoiceItem(); $item->name = 'Test'; $item->price = 10; $item->unit = ' '; $item->vat = 'None'; $item->amount = 1; $invoice = new Invoice(); $invoice->invoiceNumber = '12345'; $invoice->payer = $payer; $invoice->items = [$item]; $invoiceService = new InvoiceService($session); $invoicePdf = $invoiceService->add($invoice); var_dump($invoicePdf);
Получить счета
use Topvisor\TinkoffSdk\Business\BankAccountsService; $bankAccountsService = new BankAccountsService($session); $bankAccounts = $bankAccountsService->get(); var_dump($bankAccounts);
Получить выписку по счету
use Topvisor\TinkoffSdk\Business\BankStatementService; $accountNumber = ''; // подставьте ваш номер счета $from = new DateTime('2021-01-01'); $till = new DateTime('2021-01-31'); $bankStatementService = new BankStatementService($session); $bankStatement = $bankStatementService->get($accountNumber, $from, $till); var_dump($bankStatement);