В составе Carbon Billing имеется модуль для синхронизации платежей и актов по контрагентам. Поддержка модуля только с версии продукта 3.3.0.
Поддерживаемая конфигурация 1C - Бухгалтерия 8.
!xxxx.png|border=1!
Скриншот модуля для версии 3.9.6 476 и новее.
Логин и пароль - являются логином и паролем учетной записи финансового администратора в биллинге.
id группы - это id группы в биллинге, для всех абонентов которой проводится синхронизация платежей.
h2. Настройка интеграции биллинга с 1С
h4. *1. Включить в локальном меню поддержку api*
Настройка платежных систем...
h5. Через SSL (HTTPS)
h4.
{code}
[X] Включить SSL WEB-сервер для платежей
Разрешенные адреса клиентов для SSL WEB-сервера указать адрес машины с 1С
[X] Требовать и проверять клиентский сертификат
Создать клиентский сертификат...
{code}
Введите имя клиентского сертификата (CN) \- например myname1с
h5. Через HTTP (начиная с версии 396 476)
h4.
*Внимание\!* Рекомендуется использовать только для тестов, затем перейти на https\!
Начиная с версии 396 476 доступна работа без шифрования, т.е. адрес для подключения будет выглядеть как [http://ip\_|http://ip_]сервера:1444.
{code}
[X] Включить HTTP-сервер для платежей
IP-адрес для подключения по HTTP
Порт для подключения по HTTP
Разрешенные адреса клиентов для HTTP-сервера
{code}
Для настройки работы через http можно пропустить шаг 2.
h4. *2. Установка сертификата для HTTPS.*
С помощью WinSCP забрать созданный в пункте 1 сертификат ssl pfx из /var/lib/usrcert или /USRCERT и установить его в браузер IE
Попробовать открыть в браузер IE страницу https://локальный_ip_сервера:1443/
Должна появиться страница с вводом пароля из интерфейса кассира.
h4. *3. Скопировать модуль на ПК с 1С.*
h5. Для версии 3.9.6 476 и новее
h4.
Начиная с версии 396 476 вы можете указывать эти параметры в форме модуля для 1С, *не исправляя его код* и не меняя версию.
Скачать сам модуль для 8 версии можно здесь:* **[Интеграция с 1С^ideco1c8.epf]*
h5. Для более старых версий
h4.
Для 1С 7 версии:
{code}
https://локальный_ip_сервера:1443/ideco1c7.ert
{code}
Для 1С 8 версии:
{code}
https://локальный_ip_сервера:1443/ideco1c8.epf
{code}
Открыть этот файл в конфигураторе и исправить логин пароль {color:#009100}arg1=Administrator&arg2=servicemode{color} и версию поставить {color:#009100}arg3=27{color}
{code}
URL = АдресСервера+"/api.php?cmd=execute&proc=CLN_AUTH_LOGIN&arg1=Administrator&arg2=servicemode&arg3=27";
{code}
Логин и пароль в получившейся ссылке должны совпадать с логином паролем главного администратора в Carbon Manager, текущий номер версии менеджера можно узнать командой на сервере
{code}
sqlexec "select * from gln_getversion"
{code}
h4. *4. Обязательно сделать копию БД 1С и сначала проверять на ней\!*
h4. *5. Пометить в БД Carbon Billing какие старые операции не нужно синхронизировать*
*Установите поле sync1c=-1*
Через ib_expert CTRL+f11:
{code}
update FINANCE_OPERATIONS set sync1c=-1, code1c='old' where FINANCE_OPERATIONS.op_date<'01.01.2011'
{code}
или из консоли рута/помощника:
{code}
sqlexec "update FINANCE_OPERATIONS set sync1c=-1, code1c='old' where FINANCE_OPERATIONS.op_date<'01.01.2011'"
{code}
h4. 6. Отладка
Сделать тестовую группу, завести тестовых абонентов.
Провести тестовые испытания синхронизации в обе стороны по тестовым абонентам убедиться что все работает как вам нужно.
Очистите предыдущие тестовые синхронизации если нужно{code} sqlexec "execute procedure api_clear_all;"
sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL"
sqlexec "update users set sync1c=0, code1c=NULL"
{code}
h4. *7. Тестирование*
Пробовать работать с модулем синхронизации на реальной БД 1С, предварительно сделав резервные копии БД 1С и БД Carbon Billing.
h4. *8. Если что-то не получается обращайтесь в тех.поддержку.*
h2.
Поддерживаемая конфигурация 1C - Бухгалтерия 8.
!xxxx.png|border=1!
Скриншот модуля для версии 3.9.6 476 и новее.
Логин и пароль - являются логином и паролем учетной записи финансового администратора в биллинге.
id группы - это id группы в биллинге, для всех абонентов которой проводится синхронизация платежей.
h2. Настройка интеграции биллинга с 1С
h4. *1. Включить в локальном меню поддержку api*
Настройка платежных систем...
h5. Через SSL (HTTPS)
h4.
{code}
[X] Включить SSL WEB-сервер для платежей
Разрешенные адреса клиентов для SSL WEB-сервера указать адрес машины с 1С
[X] Требовать и проверять клиентский сертификат
Создать клиентский сертификат...
{code}
Введите имя клиентского сертификата (CN) \- например myname1с
h5. Через HTTP (начиная с версии 396 476)
h4.
*Внимание\!* Рекомендуется использовать только для тестов, затем перейти на https\!
Начиная с версии 396 476 доступна работа без шифрования, т.е. адрес для подключения будет выглядеть как [http://ip\_|http://ip_]сервера:1444.
{code}
[X] Включить HTTP-сервер для платежей
IP-адрес для подключения по HTTP
Порт для подключения по HTTP
Разрешенные адреса клиентов для HTTP-сервера
{code}
Для настройки работы через http можно пропустить шаг 2.
h4. *2. Установка сертификата для HTTPS.*
С помощью WinSCP забрать созданный в пункте 1 сертификат ssl pfx из /var/lib/usrcert или /USRCERT и установить его в браузер IE
Попробовать открыть в браузер IE страницу https://локальный_ip_сервера:1443/
Должна появиться страница с вводом пароля из интерфейса кассира.
h4. *3. Скопировать модуль на ПК с 1С.*
h5. Для версии 3.9.6 476 и новее
h4.
Начиная с версии 396 476 вы можете указывать эти параметры в форме модуля для 1С, *не исправляя его код* и не меняя версию.
Скачать сам модуль для 8 версии можно здесь:* **[Интеграция с 1С^ideco1c8.epf]*
h5. Для более старых версий
h4.
Для 1С 7 версии:
{code}
https://локальный_ip_сервера:1443/ideco1c7.ert
{code}
Для 1С 8 версии:
{code}
https://локальный_ip_сервера:1443/ideco1c8.epf
{code}
Открыть этот файл в конфигураторе и исправить логин пароль {color:#009100}arg1=Administrator&arg2=servicemode{color} и версию поставить {color:#009100}arg3=27{color}
{code}
URL = АдресСервера+"/api.php?cmd=execute&proc=CLN_AUTH_LOGIN&arg1=Administrator&arg2=servicemode&arg3=27";
{code}
Логин и пароль в получившейся ссылке должны совпадать с логином паролем главного администратора в Carbon Manager, текущий номер версии менеджера можно узнать командой на сервере
{code}
sqlexec "select * from gln_getversion"
{code}
h4. *4. Обязательно сделать копию БД 1С и сначала проверять на ней\!*
h4. *5. Пометить в БД Carbon Billing какие старые операции не нужно синхронизировать*
*Установите поле sync1c=-1*
Через ib_expert CTRL+f11:
{code}
update FINANCE_OPERATIONS set sync1c=-1, code1c='old' where FINANCE_OPERATIONS.op_date<'01.01.2011'
{code}
или из консоли рута/помощника:
{code}
sqlexec "update FINANCE_OPERATIONS set sync1c=-1, code1c='old' where FINANCE_OPERATIONS.op_date<'01.01.2011'"
{code}
h4. 6. Отладка
Сделать тестовую группу, завести тестовых абонентов.
Провести тестовые испытания синхронизации в обе стороны по тестовым абонентам убедиться что все работает как вам нужно.
Очистите предыдущие тестовые синхронизации если нужно{code} sqlexec "execute procedure api_clear_all;"
sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL"
sqlexec "update users set sync1c=0, code1c=NULL"
{code}
h4. *7. Тестирование*
Пробовать работать с модулем синхронизации на реальной БД 1С, предварительно сделав резервные копии БД 1С и БД Carbon Billing.
h4. *8. Если что-то не получается обращайтесь в тех.поддержку.*
h2.