arttiger / laravel-ubki
UBKI集成Laravel包
Requires
- illuminate/support: 5.6.39|5.7.*|5.8.*|^6.0|^7.0|^8.0|^9.0|^10.0
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: ~3.0
- phpunit/phpunit: ^7.5
- sempro/phpunit-pretty-print: ^1.0
- styleci/cli: ^1.1
This package is auto-updated.
Last update: 2024-09-10 13:21:43 UTC
README
乌克兰信用历史局 (УБКИ) 负责收集、存储、处理和提供信用历史。УБКИ从银行、保险公司、融资租赁公司、信贷合作社和其他金融机构获取借款人信息。信息基于自愿原则,并且仅在有借款人书面同意的情况下传输。
为了自动化与УБКИ的交互,存在一个 web-сервис,该服务接收请求,根据请求类型进行处理并返回响应。
此包允许您简单方便地与UBKI的web服务交互。
安装
使用composer安装包
$ composer require arttiger/laravel-ubki
接下来,您需要运行迁移
$ php artisan migrate
配置
为了编辑默认配置,您可以执行
php artisan vendor:publish --provider="Arttiger\Ubki\UbkiServiceProvider"
之后,将创建 config/ubki.php。
环境
设置环境变量(.env)
UBKI_TEST_MODE=true
UBKI_ACCOUNT_LOGIN=
UBKI_ACCOUNT_PASSWORD=
UBKI_AUTH_URL=https://secure.ubki.ua/b2_api_xml/ubki/auth
UBKI_REQUEST_URL=https://secure.ubki.ua/b2_api_xml/ubki/xml
UBKI_UPLOAD_URL=https://secure.ubki.ua/upload/data/xml
UBKI_TEST_AUTH_URL=https://secure.ubki.ua:4040/b2_api_xml/ubki/auth
UBKI_TEST_REQUEST_URL=https://secure.ubki.ua:4040/b2_api_xml/ubki/xml
UBKI_TEST_UPLOAD_URL=https://secure.ubki.ua:4040/upload/data/xml
用法
将 IntegratorUbki-trait 添加到包含客户数据的模型中
use Arttiger\Ubki\Traits\IntegratorUbki;
class Loan extends Model
{
use IntegratorUbki;
...
}
在 config/ubki.php 中设置必要的映射变量
'model_data' => [
'okpo' => 'inn', // ИНН
'lname' => 'lastName', // Фамилия
'fname' => 'firstName', // Имя
'mname' => 'middleName', // Отчество
'bdate' => 'birth_date', // Дата рождения (гггг-мм-дд)
'dtype' => 'passport_type', // Тип паспорта (см. справочник "Тип документа")
'dser' => 'passport_ser', // Серия паспорта или номер записи ID-карты
'dnom' => 'passport_num', // Номер паспорта или номер ID-карты
'ctype' => 'contact_type', // Тип контакта (см. справочник "Тип контакта")
'cval' => 'contact_val', // Значение контакта (например - "+380951111111")
'foto' => 'foto', // <base64(Фото)>
],
此映射建立了您的模型属性与UBKI所需查询字段之间的对应关系。
在类中添加新的方法 ubkiAttributes(),以添加必要的属性并填充数据
use Arttiger\Ubki\Traits\IntegratorUbki;
class Loan extends Model
{
use IntegratorUbki;
...
public function ubkiAttributes($params = [])
{
$client_data = json_decode($this->attributes['client_data']);
$this->attributes['inn'] = trim($client_data->code);
$this->attributes['lastName'] = trim($client_data->lastName);
...
}
}
您可以使用其他方法来创建在 'model_data'(config/ubki.php)中指定的自定义属性。
现在,您可以获取来自UBKI的数据
$loan = Loan::find(1); $result = $loan->ubki();
$result['response'] - UBKI的xml响应(标准报告)。
您也可以传递参数
$result = $loan->ubki($params);
$params['report']- 报告别名,如果您需要其他报告;$params['request_id']- 您的请求ID(如果需要);$params['lang']- 搜索语言;$params['delete_all_history']- 如果您想删除所有历史记录,则设置为true;
您可以发送贷款数据到UBKI
$result = $loan->ubki_upload($params);
$params 将传递到模型的 ubkiAttributes() 方法中。
为了在账户间切换,您应该在params中添加
- 选择第二个账户
$params = [ 'test' => false, 'use_second_account_login' => true ];
- 选择主要账户
$params = [ 'test' => false, 'use_second_account_login' => false ];
如果您没有选择要使用的账户,则将执行最后使用的账户。
变更日志
请参阅变更日志以获取有关最近更改的更多信息。
安全
如果您发现任何安全问题,请通过作者电子邮件联系,而不是使用问题跟踪器。
致谢
许可证
请参阅许可证文件以获取更多信息。