Небольшая заметка о том как получить банковские реквизиты в Битрикс24. Продолжение статьи Получить реквизиты/адрес в Битрикс24.
В прошлый раз мы получили реквизиты, такие как Наименование организации/ИП, ОКПО, ОГРН, ИИН…. и его адреса.
Но у компании и ИП также есть банковские реквизиты.
Попробуем их получить. Например у моей компании есть два банковских реквизита. Одно для ИП, другое для Организации:
Как их получить? Для этого есть отдельный класс \Bitrix\Crm\EntityBankDetail.
Пример:
1 2 3 4 5 6 7 8 9 |
$params = ['filter' => [ 'ENTITY_ID' => 1, 'ENTITY_TYPE_ID' => CCrmOwnerType::Requisite] ]; $row = (new \Bitrix\Crm\EntityBankDetail)->getList($params)->fetch(); var_dump($row); |
который возвратит такой массив.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
// много данных 'RQ_BANK_NAME' => string 'БАНК ИМЯ Организация' (length=38) 'RQ_BANK_ADDR' => string '7878' (length=4) 'RQ_BANK_ROUTE_NUM' => null 'RQ_BIK' => string '7777' (length=4) 'RQ_MFO' => null 'RQ_ACC_NAME' => null 'RQ_ACC_NUM' => string '8888' (length=4) 'RQ_IIK' => null 'RQ_ACC_CURRENCY' => string '5555' (length=4) 'RQ_COR_ACC_NUM' => string '9999' (length=4) 'RQ_IBAN' => null 'RQ_SWIFT' => string '78878' (length=5) 'RQ_BIC' => null 'COMMENTS' => string '787878' (length=6) |
Так, а что такое ENTITY_ID? Можно подумать, что это ИД компании. Но нет, это ИД реквизита. А как получить ИД реквизита рассмотрели в прошлой статье.
Рассмотрим как получить все банковские реквизиты для компании с ИД = 1(не путать с ИД реквизита. Просто они у меня совпали).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
$req = new \Bitrix\Crm\EntityRequisite(); $rs = $req->getList([ "filter" => [ "ENTITY_ID" => 1, "ENTITY_TYPE_ID" => CCrmOwnerType::Company, ] ]); $rows = $rs->fetchAll(); foreach ($rows as $companyReq) { $params = [ 'filter' => [ 'ENTITY_ID' => $companyReq['ID'], 'ENTITY_TYPE_ID' => CCrmOwnerType::Requisite] ]; $bankReq = (new \Bitrix\Crm\EntityBankDetail)->getList($params)->fetch(); var_dump($bankReq); } |
В переменной $bankReq содержится реквизиты этой компании.
Для ИП:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
'NAME' => string 'Банковские реквизиты ИП' (length=44) 'CODE' => null 'XML_ID' => null 'ORIGINATOR_ID' => null 'ACTIVE' => string 'Y' (length=1) 'SORT' => string '500' (length=3) 'RQ_BANK_NAME' => string 'БАНК ИМЯ ИП' (length=20) 'RQ_BANK_ADDR' => string '87444 ИП' (length=10) 'RQ_BANK_ROUTE_NUM' => null 'RQ_BIK' => string '88888 ИП' (length=10) 'RQ_MFO' => null 'RQ_ACC_NAME' => null 'RQ_ACC_NUM' => string '888888 ИП' (length=11) 'RQ_IIK' => null 'RQ_ACC_CURRENCY' => string '9888 ИП' (length=9) 'RQ_COR_ACC_NUM' => string '11111 ИП' (length=10) 'RQ_IBAN' => null 'RQ_SWIFT' => string '222222 ИП' (length=11) 'RQ_BIC' => null 'COMMENTS' => string '111111 ИП' (length=11) |
Для Организации:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
'NAME' => string 'Банковские реквизиты Организация' (length=62) 'CODE' => null 'XML_ID' => null 'ORIGINATOR_ID' => null 'ACTIVE' => string 'Y' (length=1) 'SORT' => string '500' (length=3) 'RQ_BANK_NAME' => string 'БАНК ИМЯ Организация' (length=38) 'RQ_BANK_ADDR' => string '7878' (length=4) 'RQ_BANK_ROUTE_NUM' => null 'RQ_BIK' => string '7777' (length=4) 'RQ_MFO' => null 'RQ_ACC_NAME' => null 'RQ_ACC_NUM' => string '8888' (length=4) 'RQ_IIK' => null 'RQ_ACC_CURRENCY' => string '5555' (length=4) 'RQ_COR_ACC_NUM' => string '9999' (length=4) 'RQ_IBAN' => null 'RQ_SWIFT' => string '78878' (length=5) 'RQ_BIC' => null 'COMMENTS' => string '787878' (length=6) |
Ну и конечно, вы можете получить данные только у ИП или Организации, если будете использовать PRESET_ID для \Bitrix\Crm\EntityRequisite::getList(). Пример есть в первой части.
· Permalink
https://uploads.disquscdn.com/images/ba643646e2b488e68722e8b99727e453f21da00459a4b523fba8f4b0e9e51a4b.jpg Здравствуйте, не могли бы подсказать, почему в моем битриксе не выполняются многие методы и функции, постоянно выдает ошибку, даже здесь
· Permalink
Здравствуйте. К сожалению, без текста ошибки сложно разобраться. Битрикс просит включить расширенный вывод ошибок. http://joxi.ru/n2YY9xPCoDjBg2
Возможно забыли подключить модуль CRM. CModule::IncludeModule(«crm»);
Но точно сказать можно только прочитав текст ошибки.
· Permalink
Спасибо, действительно, подключить модуль надо было и заработало)