Интеграция с 1С

Skip to end of metadata
Go to start of metadata

В составе Carbon Billing имеется модуль для синхронизации платежей и актов по контрагентам. Поддержка модуля только с версии продукта 3.3.0.

Поддерживаемая конфигурация 1C - Бухгалтерия 8.


Скриншот модуля для версии 3.9.6 476 и новее.

Логин и пароль - являются логином и паролем учетной записи финансового администратора в биллинге.

id группы - это id группы в биллинге, для всех абонентов которой проводится синхронизация платежей.

Настройка интеграции биллинга с 1С

1. Включить в локальном меню поддержку api

Настройка платежных систем...

Через SSL (HTTPS)

[X] Включить SSL WEB-сервер для платежей 
Разрешенные адреса клиентов для SSL WEB-сервера указать адрес машины с 1С
[X] Требовать и проверять клиентский сертификат 
 Создать клиентский сертификат...

Введите имя клиентского сертификата (CN)  -  например myname1с

Через HTTP (начиная с версии 396 476)

Внимание! Рекомендуется использовать только для тестов, затем перейти на https!

Начиная с версии 396 476 доступна работа без шифрования, т.е. адрес для подключения будет выглядеть как http://ip_сервера:1444.

[X] Включить HTTP-сервер для платежей         
IP-адрес для подключения по HTTP              
Порт для подключения по HTTP                  
Разрешенные адреса клиентов для HTTP-сервера

Для настройки работы через http можно пропустить шаг 2.

2. Установка сертификата для HTTPS.

С помощью WinSCP забрать созданный в пункте 1 сертификат ssl pfx из  /var/lib/usrcert или /USRCERT  и установить его в браузер IE

Попробовать открыть в браузер IE страницу https://локальный_ip_сервера:1443/

Должна появиться страница с вводом пароля из интерфейса кассира.

3. Скопировать модуль на ПК с 1С.

Для версии 3.9.6 476 и новее

Начиная с версии 396 476 вы можете указывать эти параметры в форме модуля для 1С, не исправляя его код и не меняя версию.

Скачать сам модуль для 8 версии можно здесь: ideco1c8.epf

Для более старых версий

Для 1С 7 версии:

https://локальный_ip_сервера:1443/ideco1c7.ert

Для 1С 8 версии:

https://локальный_ip_сервера:1443/ideco1c8.epf

Открыть этот файл в конфигураторе и исправить логин пароль arg1=Administrator&arg2=servicemode и версию поставить arg3=27

URL = АдресСервера+"/api.php?cmd=execute&proc=CLN_AUTH_LOGIN&arg1=Administrator&arg2=servicemode&arg3=27";

Логин и пароль в получившейся ссылке должны совпадать с логином паролем главного администратора в Carbon Manager, текущий номер версии менеджера можно узнать командой на сервере

sqlexec "select * from gln_getversion"

4. Обязательно сделать копию БД 1С и сначала проверять на ней!

5. Пометить в БД Carbon Billing какие старые операции не нужно синхронизировать

Установите поле sync1c=-1

Через ib_expert CTRL+f11:

update FINANCE_OPERATIONS set  sync1c=-1,  code1c='old'  where FINANCE_OPERATIONS.op_date<'01.01.2011'

или из консоли рута/помощника:

 sqlexec "update FINANCE_OPERATIONS set  sync1c=-1,  code1c='old'  where FINANCE_OPERATIONS.op_date<'01.01.2011'"

6. Отладка

Сделать тестовую группу, завести тестовых абонентов.

Провести тестовые испытания синхронизации в обе стороны по тестовым абонентам убедиться что все работает как вам нужно.

Очистите предыдущие тестовые синхронизации если нужно

 sqlexec "execute procedure api_clear_all;"

 sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL"

 sqlexec "update users set sync1c=0, code1c=NULL"

7. Тестирование

Пробовать работать с модулем синхронизации на реальной БД 1С, предварительно сделав резервные копии БД 1С и БД Carbon Billing.

8. Если что-то не получается обращайтесь в тех.поддержку.

Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.