PHPackages                             tigusigalpa/vtb-id-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. tigusigalpa/vtb-id-php

ActiveLibrary[API Development](/categories/api)

tigusigalpa/vtb-id-php
======================

VTB ID OAuth2 integration package for Laravel

v1.0.0(6mo ago)30MITPHPPHP ^8.0|^8.1|^8.2|^8.3CI failing

Since Dec 24Pushed 6mo agoCompare

[ Source](https://github.com/tigusigalpa/vtb-id-php)[ Packagist](https://packagist.org/packages/tigusigalpa/vtb-id-php)[ RSS](/packages/tigusigalpa-vtb-id-php/feed)WikiDiscussions main Synced today

READMEChangelog (1)Dependencies (4)Versions (2)Used By (0)

VTB ID PHP/Laravel Package
==========================

[](#vtb-id-phplaravel-package)

[![VTBID PHP](https://private-user-images.githubusercontent.com/2721390/529891508-681ae94b-51be-4c20-a1be-2ce6c8b5a802.jpg?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODIxNDgzMDAsIm5iZiI6MTc4MjE0ODAwMCwicGF0aCI6Ii8yNzIxMzkwLzUyOTg5MTUwOC02ODFhZTk0Yi01MWJlLTRjMjAtYTFiZS0yY2U2YzhiNWE4MDIuanBnP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDYyMiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA2MjJUMTcwNjQwWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YzUzNmEyZTQ0OTRmZWRiNjY3ODZkYzQwYTEyY2U2NDZiYzRkYTExY2FmMGJiZmFkZDI3MmNhY2NhZDU0NjJkYyZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmcmVzcG9uc2UtY29udGVudC10eXBlPWltYWdlJTJGanBlZyJ9.EHFls54XMjSoIhEBDUPMUpYKDjgZaNRoe8k-wAf2kLc)](https://private-user-images.githubusercontent.com/2721390/529891508-681ae94b-51be-4c20-a1be-2ce6c8b5a802.jpg?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODIxNDgzMDAsIm5iZiI6MTc4MjE0ODAwMCwicGF0aCI6Ii8yNzIxMzkwLzUyOTg5MTUwOC02ODFhZTk0Yi01MWJlLTRjMjAtYTFiZS0yY2U2YzhiNWE4MDIuanBnP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDYyMiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA2MjJUMTcwNjQwWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YzUzNmEyZTQ0OTRmZWRiNjY3ODZkYzQwYTEyY2U2NDZiYzRkYTExY2FmMGJiZmFkZDI3MmNhY2NhZDU0NjJkYyZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmcmVzcG9uc2UtY29udGVudC10eXBlPWltYWdlJTJGanBlZyJ9.EHFls54XMjSoIhEBDUPMUpYKDjgZaNRoe8k-wAf2kLc)

[![Latest Version](https://camo.githubusercontent.com/b6235659744ce7e85278c2eb0d0b2809c30f7c9640888ad87d5a7ffd0720723f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f74696775736967616c70612f7674622d69642d7068702e7376673f7374796c653d666c61742d737175617265)](https://github.com/tigusigalpa/vtb-id-php/releases)[![License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)

PHP/Laravel пакет для интеграции с VTB ID (OAuth2 авторизация через аккаунт в ВТБ Банке).

**🌐 Язык:** Русский | [English](README-en.md)

Содержание
----------

[](#содержание)

- [Требования](#%D1%82%D1%80%D0%B5%D0%B1%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
- [Установка](#%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0)
- [Быстрый старт](#%D0%B1%D1%8B%D1%81%D1%82%D1%80%D1%8B%D0%B9-%D1%81%D1%82%D0%B0%D1%80%D1%82)
- [Конфигурация](#%D0%BA%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B0%D1%86%D0%B8%D1%8F)
- [Использование](#%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)
- [API Reference](#api-reference)
- [Примеры использования](#%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D1%8B-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
- [Безопасность](#%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C)
- [Тестирование](#%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)

Требования
----------

[](#требования)

- PHP 8.0 или выше
- Guzzle HTTP Client 7.x
- Laravel 8.x, 9.x, 10.x, 11.x или 12.x (опционально, для Laravel интеграции)

Установка
---------

[](#установка)

### Через Composer (рекомендуется)

[](#через-composer-рекомендуется)

```
composer require tigusigalpa/vtb-id-php
```

### Публикация конфигурации

[](#публикация-конфигурации)

```
php artisan vendor:publish --tag=vtbid-config
```

### Локальная установка (для разработки)

[](#локальная-установка-для-разработки)

Добавьте репозиторий в `composer.json`:

```
{
    "repositories": [
        {
            "type": "path",
            "url": "./packages/vtb-id-php"
        }
    ],
    "require": {
        "tigusigalpa/vtb-id-php": "@dev"
    }
}
```

Затем установите:

```
composer require tigusigalpa/vtb-id-php:@dev
```

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

[](#быстрый-старт)

### Для Laravel

[](#для-laravel)

#### 1. Установка (1 минута)

[](#1-установка-1-минута)

```
composer require tigusigalpa/vtb-id-php
php artisan vendor:publish --tag=vtbid-config
```

#### 2. Конфигурация (2 минуты)

[](#2-конфигурация-2-минуты)

Добавьте в `.env`:

```
VTBID_CLIENT_ID=ваш_client_id_от_vtb
VTBID_CLIENT_SECRET=ваш_client_secret_от_vtb
VTBID_REDIRECT_URI=https://ваш-сайт.ru/auth/vtb/callback
```

#### 3. Создайте маршруты (2 минуты)

[](#3-создайте-маршруты-2-минуты)

В `routes/web.php`:

```
// Успешная авторизация
Route::get('/auth/vtb/success', function () {
    $user = session('vtbid_user');

    // Здесь создайте/обновите пользователя в БД
    // и авторизуйте его в системе

    dd($user); // Для тестирования
})->name('vtbid.success');

// Ошибка авторизации
Route::get('/auth/vtb/error', function () {
    $error = session('error');
    return redirect('/login')->with('error', $error);
})->name('vtbid.error');
```

#### 4. Добавьте кнопку входа

[](#4-добавьте-кнопку-входа)

В любом blade-шаблоне:

```

    Войти через VTB ID

```

### Для чистого PHP

[](#для-чистого-php)

#### 1. Установка

[](#1-установка)

```
composer require tigusigalpa/vtb-id-php
```

#### 2. Создайте файл конфигурации

[](#2-создайте-файл-конфигурации)

```
// config.php
return [
    'client_id' => 'your_client_id',
    'client_secret' => 'your_client_secret',
    'redirect_uri' => 'https://your-domain.com/callback.php',
];
```

#### 3. Страница авторизации (login.php)

[](#3-страница-авторизации-loginphp)

```
