Работа с торговым оборудованием
17.06.2009
В настоящее время в торговле получают все большее распространение системы оплаты с помощью платежных карт. Для этого помимо модулей торговых конфигураций системы 1С:Предприятие 8 на кассах торгово-сбытовых предприятий дополнительно устанавливаются программно-технические комплексы работы с пластиковыми картами международных платежных систем. При этом ввод информации по операциям с пластиковыми картами в информационную базу системы 1С:Предприятие 8 осуществляется вручную. Помимо дополнительной траты времени и неудобства в работе кассира, это может привести к потере информации или ее искажению. Поэтому становится актуальным интеграция эквайринговых продуктов с торговыми конфигурациями системы 1С:Предприятие 8 . Общая схема организации приема платежей на кассах торгово-сбытового предприятия представлена на рис. 1.
Рис. 1
Для организации взаимодействия с конкретной системой эквайринга в состав торговых конфигураций системы 1С:Предприятие 8 включается специальная обработка обслуживания, а программное обеспечение системы эквайринга должно содержать интегрированную с этой обработкой внешнюю компоненту. Использование такого подхода соответствует правилам взаимодействия системы 1С:Предприятие 8 с торговым оборудованием. Общая схема взаимодействия системы 1С:Предприятие 8 с торговым оборудованием представлена на рис.2.
Рис.2
Такой подход позволяет упростить процесс подключения любых новых программно-технических комплексов к системе 1С:Предприятие 8.
Внешняя компонента эквайринговых систем ("ВКЭС") должна соответствовать общей концепции разработки и применения внешних компонент для взаимодействия с торговым оборудованием ("Устройством").
"ВКЭС" должна удовлетворять следующим требованиям:
1. Соответствовать описанным механизмам создания внешних компонент (приведено в документе "Документация по технологии создания внешних компонент" на диске ИТС в разделе "Технология создания внешних компонент" Методической поддержки 1C:Предприятия 8.1.);
2. В полном объеме поддерживать функциональность, описанную в данном документе;
3. Предоставлять определенный в данном документе набор свойств и методов для возможности настройки и управления драйвером.
4. При возникновении ошибки в работе сообщить об этом системе 1С:Предприятие 8 и передать описание произошедшей ошибки.
1. Система 1С:Предприятие 8 (в дальнейшем "Система") инициализирует соединение с "ВКЭС" и загружает ее;
2. "Система" передает конфигурационные параметры "ВКЭС" (если необходимо);
При необходимости оплатить покупку платежной картой "Система" вызывает функцию "Оплатить платежной картой" у "ВКЭС", передавая ему во входном параметре сумму к оплате для списания с карты и номер считанной карты (1234 5678 9012 3456). "ВКЭС" в ответ возвращает результат выполнения функции, а в выходные параметры записывает код RRN, код авторизации.
Если считывание карты будет производиться на терминале (PIN-Pad’e) банка, то в параметре номера считанной карты передается пустая строка. После выполнения функции в параметре номера считанной карты возвращается номер прочитанной на терминале (PIN-Pad’e) банка карты.
Если по требованиям банка полный номер не может быть предоставлен, то в параметре возвращаются только первые 6 цифр номера (1234 56** **** ****).
Если происходит отмена платежа, то "Система" вызывает функцию "Отменить платеж по платежной карте" у "ВКЭС", передавая ей во входных параметрах сумму, которая была указана для списания с карты, номер считанной карты (1234 5678 9012 3456) и код RRN операции, по которой совершается отмена, оплаты картой. "ВКЭС" в ответ возвращает результат выполнения функции.
Если считывание карты будет производиться на терминале (PIN-Pad’e) банка, то в параметре номера считанной карты передается пустая строка. После выполнения функции в параметре номера считанной карты возвращается номер прочитанной на терминале (PIN-Pad’e) банка карты.
Если по требованиям банка полный номер не может быть предоставлен, то в параметре возвращаются только первые 6 цифр номера (1234 56** **** ****).
При возврате платежа "Система" вызывает функцию "Вернуть платеж по платежной карте" у "ВКЭС", передавая ей во входном параметре сумму к возврату на карту и номер считанной карты (1234 5678 9012 3456). "ВКЭС" в ответ возвращает результат выполнения функции, а в выходные параметры записывает код RRN, код авторизации.
Если считывание карты будет производиться на терминале (PIN-Pad’e) банка, то в параметре номера считанной карты передается пустая строка. После выполнения функции в параметре номера считанной карты возвращается номер прочитанной на терминале (PIN-Pad’e) банка карты.
Если по требованиям банка полный номер не может быть предоставлен, то в параметре возвращаются только первые 6 цифр номера (1234 56** **** ****).
В системе 1С:Предприятие 8. Управление торговлей , ред.3.1 соединение с "ВКЭС" закрывается только при завершении работы.
Название (alias) |
Тип |
Доступность |
Описание | |
---|---|---|---|---|
Чтение |
Запись | |||
Название (alias) |
Параметры |
Возвращаемое значение |
Описание | ||
---|---|---|---|---|---|
Имя |
Тип |
Описание | |||
ПолучитьНомерВерсии (GetVersion) | - | - | - | BSTR | Возвращает номер версии драйвера (например, "1.01" или "1.0.0.1") |
ОплатитьПлатежнойКартой (PayByPaymentCard) | НомерКарты (CardNumber) | BSTR [IN/OUT] |
Номер банковской карты | BOOL | Функция оплаты платежной карты1. |
Сумма (Amount) |
LONG [IN] | Сумма к оплате по карте | |||
КодRRN (RRNCode) |
BSTR [OUT] | Возвращается RRN транзакции | |||
КодАвторизации (AuthorizationCode) |
BSTR [OUT] | Возвращается код авторизации транзакции | |||
ОтменитьПлатежаПоПлатежнойКарте (CancelPaymentByPaymentCard) | НомерКарты (CardNumber) | BSTR [IN/OUT] |
Номер банковской карты | BOOL | Функция отмены платежа по карте1. |
Сумма (Amount) |
LONG [IN] |
Отменяемая сумма | |||
КодRRN (RRNCode) |
BSTR [IN] | Код транзакции оплаты, по которой происходит отмена | |||
ВернутьПлатежПоПлатежнойКарте (ReturnPaymentByPaymentCard) | НомерКарты (CardNumber) | BSTR [IN/OUT] |
Номер банковской карты | BOOL | Функция возврата платежа1. |
Сумма (Amount) |
LONG [IN] |
Сумма, возвращаемая на карту | |||
КодRRN (RRNCode) |
BSTR [OUT] | Возвращается RRN транзакции | |||
КодАвторизации (AuthorizationCode) |
BSTR [OUT] | Возвращается код авторизации транзакции | |||
ПреавторизацияПоПлатежнойКарте (AuthorisationByPaymentCard) | НомерКарты (CardNumber) | BSTR [IN/OUT] |
Номер банковской карты | BOOL | Функция преавторизации1. |
Сумма (Amount) |
LONG [IN] |
Сумма операции | |||
КодRRN (RRNCode) |
BSTR [OUT] |
Возвращается RRN транзакции | |||
КодАвторизации(AuthorizationCode) | BSTR [OUT] |
Код авторизации транзакции | |||
ЗавершитьПреавторизациюПоПлатежнойКарте (AuthConfirmationByPaymentCard) | НомерКарты (CardNumber) | BSTR [IN/OUT] |
Номер банковской карты | BOOL | Функция завершения преавторизации1. |
Сумма (Amount) |
LONG [IN] |
Сумма операции (может быть меньше) | |||
КодRRN (RRNCode) |
BSTR [IN/OUT] |
RRN транзакции из проведенной операции преавторизации | |||
КодАвторизации(AuthorizationCode) | BSTR [IN/OUT] |
Код авторизации транзакции из проведенной операции преавторизации | |||
ОтменитьПреавторизациюПоПлатежнойКарте (CancelAuthorisationByPaymentCard) | НомерКарты (CardNumber) | BSTR [IN/OUT] |
Номер банковской карты | BOOL | Функция отмены преавторизации по карте1. |
Сумма (Amount) |
LONG |
Сумма операции | |||
КодRRN (RRNCode) |
BSTR [IN/OUT] |
Код RRN транзакции преавторизации, по которой происходит отмена | |||
АварийнаяОтменаОперации (EmergencyReversal) | НомерКарты (CardNumber) | BSTR [IN/OUT] |
Номер банковской карты | BOOL | Функция аварийной отмены операции1. |
Сумма (Amount) |
LONG [IN] |
Сумма операции | |||
КодRRN (RRNCode) |
BSTR [IN/OUT] |
RRN транзакции | |||
КодАвторизации(AuthorizationCode) | BSTR [IN/OUT] |
Код авторизации транзакции | |||
ИтогиДняПоКартам (Settlement) |
- | - | - | BOOL | Функция подведения итогов дня по операциям с банковскими картами |
ПолучитьОшибку (GetLastError) | ОписаниеОшибки (ErrorDescription) |
BSTR [OUT] | Описание ошибки | LONG | Возвращает код и описание последней произошедшей ошибки |
ТестУстройства (TestDevice) | ДополнительноеОписание (AdditionalDescription) |
BSTR [OUT] |
Описание дополнительного оборудования или любая другая вспомогательная уникальная информация, позволяющая удостовериться в корректности настроенных параметров | BOOL | Проверка корректности настроенных параметров |
1 - Если код карты – пустая строка, то считывание карты ведется средствами самой ЭС (с использованием PIN-Pad’а) и в параметре "НомерКарты" возвращается прочитанный номер карты.
При разработке системы необходимо подготовить макеты слип-чеков в соответствии с внутренними требованиями банка. В настоящем документе, в разделе "Слип-чеки", необходимо разместить макеты чеков под разную ширину чековой ленты. Значения, которые должны подставляться в чек должны быть реализованы в виде свойств "ВКЭС" и описаны в разделе "Описание свойств". Метки значений для подстановки могут быть указаны в квадратных скобках - [], например:
чек оплаты, ширина 36 сим. |
---|
123456789012345678901234567890123456 |
Фирма "1С" |
[Дата] [Время] |
Банк |
БЕЗНАЛИЧНЫЙ РАСЧЕТ |
[Номер карты] [Срок действия] |
ОПЛАТА ТОВАРА |
Сумма: [ Сумма] |
Номер терминала: [ Терминал] |
Номер квитанции: [ Квитанция] |
Код авторизации: [ КодАвторизации] |
Номер ссылки: [ НомерСсылки] |
[ РезультатТранзакции ] |
ПОДПИСЬ КЛИЕНТА |
123456789012345678901234567890123456 |
Для расчета ширины макета используется максимально возможное значение в строке.