Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 17, 2023 07:52:17

tamazav
Зарегистрирован: 2023-01-17
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

qrcode

Добрый день! Подскажите, пожалуйста, как можно решить следующую проблему:

Формирую QR-код c использованием qrcode. В QR-коде, соответственно, указываются реквизиты и сумма к оплате.
В соответствии со стандартом, сумма к оплате умножается на 100.
Проблема в том, что в одних банках (например, в сбере) сумма отображается правильно, а в других (например, в альфа-банке) - не корректно (сумма, умноженная на 100)
QR-код формируется с использованием следующего кода:

 import qrcode
self.QRString = zdes_stroka # здесь строка с данными в соответствии с ГОСТ
self.make_QR = qrcode.make(self.dlyaQR + self.QRString)
self.img_Qr = self.make_QR.save('temp.png')
self.img = Image('temp.png')
self.img.height = 140
self.img.width =140

Может есть в qrcode дополнительные настройки для корректного отображения данных, может я указал не все требуемые параметры?

Офлайн

#2 Янв. 17, 2023 09:02:22

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9873
Репутация: +  853  -
Профиль   Отправить e-mail  

qrcode

tamazav
Проблема в том, что в одних банках (например, в сбере) сумма отображается правильно, а в других (например, в альфа-банке) - не корректно (сумма, умноженная на 100)
И при чём тут qr-код? Если он читается, то он читается однозначно.



Офлайн

#3 Янв. 17, 2023 09:09:23

tamazav
Зарегистрирован: 2023-01-17
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

qrcode

py.user.next
И при чём тут qr-код? Если он читается, то он читается однозначно.

В том то все и дело, что неоднозначно. На сбере все читается и сумма правильная, на альфа банке все читается, только сумма ставится без запятых (т.е. умноженное на 100)

Офлайн

#4 Янв. 17, 2023 09:15:42

tamazav
Зарегистрирован: 2023-01-17
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

qrcode

Понял в чем причина, но не знаю как победить. В сбере если сумма с запятой (например, 420,15), то не читает, хочет с точкой (420.15) . В Альфа банке наоборот - если запятая, что ставит, если точка, то игнорирует.

Офлайн

#5 Янв. 17, 2023 09:20:38

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1352
Репутация: +  118  -
Профиль   Отправить e-mail  

qrcode

Покажи две строки Альфы и Сбера,

Офлайн

#6 Янв. 17, 2023 09:24:23

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9873
Репутация: +  853  -
Профиль   Отправить e-mail  

qrcode

tamazav
но не знаю как победить
Для разных банков делай разные qr-коды. Сделай одну функцию, которая для Сбербанка делает qr-код. Сделай вторую функцию, которая для Альфа-Банка делает qr-код. Эти qr-коды будут различаться полностью.



Отредактировано py.user.next (Янв. 17, 2023 09:24:57)

Офлайн

#7 Янв. 17, 2023 09:34:02

tamazav
Зарегистрирован: 2023-01-17
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

qrcode

xam1816
Покажи две строки Альфы и Сбера,
строка одна, нет отдельно для сбера и альфы. QR-код делал по ГОСТу

py.user.next
Для разных банков делай разные qr-коды. Сделай одну функцию, которая для Сбербанка делает qr-код. Сделай вторую функцию, которая для Альфа-Банка делает qr-код. Эти qr-коды будут различаться полностью.
Думаю, это не решение проблемы.
Потребители оплачивают с разных банков. Эти 2 банка я пример привел, потому что я клиент этих банков, поэтому отсканировал в их приложениях QR-код.

Офлайн

#8 Янв. 17, 2023 10:03:29

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9873
Репутация: +  853  -
Профиль   Отправить e-mail  

qrcode

tamazav
Потребители оплачивают с разных банков.
Ну. Ты получаешь строки для всех банков, а потом для каждой строки делаешь qr-код, отдельный от всех других qr-кодов, индивидуальный. И каждому клиенту ты пачку этих qr-кодов можешь подавать. Для такого банка - такой qr-код, для другого банка - другой qr-код.

Или ты даже не понимаешь, что такое qr-код? Я вот что-то в сомнениях уже на этот счёт. Ты понимаешь, что qr-код никакого отношения к банкам или к банковским системам вообще не имеет? Ты понимаешь, вообще, что это? Может, тебе сначала прочитать, что такое qr-код сам по себе?



Отредактировано py.user.next (Янв. 17, 2023 10:04:27)

Офлайн

#9 Янв. 17, 2023 10:35:54

tamazav
Зарегистрирован: 2023-01-17
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

qrcode

py.user.next
Или ты даже не понимаешь, что такое qr-код? Я вот что-то в сомнениях уже на этот счёт. Ты понимаешь, что qr-код никакого отношения к банкам или к банковским системам вообще не имеет? Ты понимаешь, вообще, что это? Может, тебе сначала прочитать, что такое qr-код сам по себе?

Прекрасно понимаю. Я сделал требуемую программу на delphi. Там используется dll файл для формирования qr-кода (quricol32.dll). При помощи данной библиотеки формируются qr коды и он прекрасно подходит для любого банка.
Решил переписать на python. Использовал qrcode. Подозреваю, что в quricol32.dll предусмотрели подобные конвертации с точкой или зяпятой и может не предусмотрено в qrcode на pythonю (этого не знаю)

Офлайн

#10 Янв. 17, 2023 10:52:43

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1352
Репутация: +  118  -
Профиль   Отправить e-mail  

qrcode

tamazav
строка одна, нет отдельно для сбера и альфы. QR-код делал по ГОСТу
покажи строку

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version