Форум русской поддержки Joomla!® CMS
08.12.2016, 10:02:52 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1] 2 3 4 5 6 7 8 9 10 11   Вниз
  Добавить закладку  |  Печать  
Автор

Оплата квитанцией Сбербанка (форма ПД 4) для Joomla 2.5-3.3

 (Прочитано 36604 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« : 19.03.2012, 13:24:51 »

На форуме нашел 2 ветки про этот способ оплаты, но один из них не работает под Joomla 2.5, второй предусматривает перекройку вручную родных файлов, что на мой взгляд не есть айс ... Пошел другим путем.
Sberbank_PD4_joomla2.5_v.1.09.zip от 05 марта 2014г.
Sberbank_PD4_joomla3.3_v.1.12.zip
Sberbank_PD4_joomla3.4_v.1.13.zip добавлена возможность выделить НДС

** Пока не завершен внешний вид последнего этапа. Модуль выводит их одновременно два. Может у кого будут предложения? Внешний вид в файле finish_view.php . Там всего 4 строки HTML кода... Удаляйте 2 ИЛИ 3 строку на свой вкус.

Возможности:
- Модуль устанавливается обычным способом через JoomShopping
- Пользователь имеет возможность распечатать квитанцию.
- На момент открытия квитанции в браузере заказ уже будет оформлен в магазине не зависимо от дальнейших действий пользователя.
- Администратор может настроить отправку копии квитанции на почту покупателю.
- Администратор может настроить отправку скрытой копии квитанции себе на почту.
- Мультивалютность (Название валюты берется из поля "Код*". Не ISO код, а просто "Код".)
- "Заказ на поставку" отправляется в соответствие с настройками магазина
- В основных браузерах отображается одинаково (IE 8 +,FF16 +,GH22+ ,Opera12+)

Сама квитанция:

Админка:

Для тех кто видит кракозябры в квитанции:
Причин может быть две.
Первая. Браузер не настроен на автоопределение кодировки. Ну так настройте!
Вторая. Более вероятная. Сервер настроен на выдачу в формате 1251.
Путей решения несколько:
1. Если используете Дэнвер на локалке. Найти файл httpd.conf по умолчанию он расположен в директории C:\WebServers\usr\local\apache\conf\
в этом файле находите
AddDefaultCharset windows-1251
и меняете на
AddDefaultCharset utf-8
После перезапуска сервера все будет работать как надо.
2. На хостинге. В настройках хостинга поменять кодировку сайта с win-1251 на utf-8, или разыскать httpd.conf  и сделать в нем изменения как в п.1. Перезагрузите сервер.
3. Использовать  файл .htaccess
Этот метод универсален и будет работать как на Дэнвере, так и на хостинге (если разрешено использование этого файла). В этот файл нужно добавить параметр AddDefaultCharset UTF-8
Это самый надежный и в тоже время самый концептуально неправильный способ (IMHO)

При вводе кавычек в поле ввода названия банка или организации Joomla их отфильтровывает. Если нужны кавычки, то используйте спецсимволы HTML. Например ООО "Ромашка"   - на экране будет выглядеть как ООО "Ромашка".
PS: Это первый нормальный модуль оффлайн оплаты под Joomla 2.5. На его базе легко сделать как строгий счет для юрлиц, так и красивый и необычный дизайнерский счет для любого метода офлайн оплаты. В т.ч. можно собрать в одну кучу несколько реквизитов различных платежных систем для самостоятельного выбора пользователем. И при этом не нужны никакие аттестаты продавца :-)

Квитанция выложенная тут имеет возможность ввода ИНН в 10 знаков. Т.е. подходит для организаций всех форм собственности и частных лиц не зарегистрированных как ИП (они просто не заполняют это поле). Есть еще вариант квитанции с ИНН в 12 знаков и отсутствием поля КПП, такая квитанция нужна для ИП. Ее можно получить двумя способами: переделать самому или обратиться ко мне. Большая просьба к тем кто может переделать все сам - оставляйте свою работу у себя. Не надо ее распространять.
« Последнее редактирование: 26.10.2015, 08:34:16 от Zet13 » Записан
 
igorksan
Завсегдатай
*****

Репутация: +23/-1
Offline Offline

Сообщений: 521



« Ответ #1 : 19.03.2012, 13:28:58 »

вечером проверим. Спасибо
Записан
nevigen
Moderator
*****

Репутация: +734/-16
Offline Offline

Пол: Мужской
Сообщений: 8808


http://n*****n.com


« Ответ #2 : 19.03.2012, 14:33:16 »

+ в репу
и однозначно в FAQ.
Спасибо !
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #3 : 20.03.2012, 11:13:20 »

Немного доработал, теперь печать не стартует автоматически. Пользователь имеет возможность как распечатать квитанцию так и сохранить ее средствами браузера.
На момент открытия квитанции в браузере заказ уже будет оформлен в магазине не зависимо от дальнейших действий пользователя.
« Последнее редактирование: 03.04.2012, 12:25:45 от Zet13 » Записан
ynota
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 39


« Ответ #4 : 20.03.2012, 13:32:42 »

Zet13 К сожалению, нет возможности протестировать. Скажите, если не распечатать или не сохранить квитанцию в процессе заказа, её можно будет потом где то найти, при условии, что заказ оформляется без регистрации пользователя? У меня была такая проблема в Виртуемарте. Народ как то легкомысленно относился к квитанции на стадии заказа, а потом терзал меня, что бы я выслал им квитанцию на почту.
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #5 : 20.03.2012, 16:56:26 »

Нет, потом ее не найдете. Смысл ее хранить?
Значит бывает нужно чтоб отправлялась по почте... Или чтобы из админки ее можно было заново сделать...
Подумаю как это сделать. Но скажите это действительно критично?

Странные покупатели. Если ты покупал без регистрации и что-то не так... Есть срок в течение которого неоплаченный заказ будет просто аннулирован... Просто делаешь другой заказ и распечатываешь..
Может под квитанцией просто текст добавить типа " Сохрани или распечатай больше ты ее не увидишь"?
Записан
ynota
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 39


« Ответ #6 : 20.03.2012, 17:47:50 »

Когда работал с Виртуемартом, такая история постоянно. Клиенты сохраняют ссылку на квитанцию, а потом не могут её найти по
этой ссылке.
Записан
besmobile
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #7 : 23.03.2012, 14:20:22 »

Супер. Спасибо!

Заказ нормально формируется в бэкэнде. Но. После отрисовки квитанции видим под ней кнопки "Напечатать" и "Закрыть". При щелчке на "Закрыть" закрывается закладка браузера (со всем магазином). Если снова зайти в магазин или восстановить закрытую вкладку, вижу, что корзина не опустела. Как быть?
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #8 : 26.03.2012, 12:43:56 »

Не должно быть так... Кнопка "закрыть" перебрасывает назад в магазин.
Какая версия магазина, Joomla, какой браузер?
В FF работает нормально.
Попробуйте v.081  - переделал обработчик.
« Последнее редактирование: 03.04.2012, 12:26:19 от Zet13 » Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #9 : 29.03.2012, 12:43:24 »

Сделал принудительную отправку копии квитанции на майл покупателя в формате HTML. Сделаю эту возможность опциональной в админке, добавлю пару текстовых переменных и 1-2 апреля выложу. Доделать быстрее просто не будет времени - приезжает друг из западной Украины. Много лет не виделись :-)
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #10 : 03.04.2012, 12:27:03 »

0.91 - добавлена отправка копии квитанции на майл покупателя.
Записан
Adam Bazaroff
Осваиваюсь на форуме
***

Репутация: +10/-5
Offline Offline

Пол: Мужской
Сообщений: 113



« Ответ #11 : 03.04.2012, 19:54:40 »

Слушайте, почему именно Сбербанк? Не стоит вводить в заблуждение покупателей, по такой квитанции можно оплатить в ЛЮБОМ банке. Понятно, что нам проще так назвать, но некоторые покупатели будут совершать трип через весь свой небольшой городок, в поисках отделения Сбера, хотя прямо в их доме может быть какой-нибудь Верхнебобруйскбанк, который так же примет эту квитанцию. Думайте о покупателях, измените название и описание, после установки. И обязательно сообщите о комиссии (обычно это 25-50 руб за перевод) банка.

А автору респект и мегауважуха за работу. Спасибо!
« Последнее редактирование: 03.04.2012, 19:58:08 от Adam Bazaroff » Записан
igorksan
Завсегдатай
*****

Репутация: +23/-1
Offline Offline

Сообщений: 521



« Ответ #12 : 03.04.2012, 22:58:29 »

Хм.. Квитанция в рублях... А как быть при многовалютности магазина? Копировать способы оплаты тоже впринципе вариант, и для каждой валюты свой Банк прописать..
Хотя не... Продублировать неудаётся.
« Последнее редактирование: 03.04.2012, 23:17:28 от igorksan » Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #13 : 04.04.2012, 06:44:20 »

Хм.. Квитанция в рублях... А как быть при многовалютности магазина? Копировать способы оплаты тоже впринципе вариант, и для каждой валюты свой Банк прописать..
Хотя не... Продублировать неудаётся.
Сумма заказа берется из JoomShopping какая разница в какой она валюте? По идее в какой валюте чел покупает в той и должна показываться сумма... Но, врать не буду, не проверял, т.к. многовалютностью не пользовался ни разу.  Опишите проблему поточнее, а еще лучше со скриншотами - подправлю.
Цифру стоимости покупки показывает правильно? Проблема только в надписи "руб." ?
Записан
igorksan
Завсегдатай
*****

Репутация: +23/-1
Offline Offline

Сообщений: 521



« Ответ #14 : 04.04.2012, 07:14:07 »

Да да. Цифры правильно. Но надпись "Руб" остаётся. Было бы лучше если бы она генерировалась с заказа, а не была прописанной в шаблоне квитанции.
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #15 : 04.04.2012, 08:39:37 »

Сделал, проверяйте. v.0.93 :
- Администратор может настроить отправку скрытой копии квитанции себе на почту.
- Название валюты берется из поле "Код*" заказа. Не ISO код, а просто "Код".
Записан
Geetler
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Сообщений: 45


« Ответ #16 : 16.04.2012, 20:08:36 »

Сделал, проверяйте. v.0.93 :
- Администратор может настроить отправку скрытой копии квитанции себе на почту.
- Название валюты берется из поле "Код*" заказа. Не ISO код, а просто "Код".
Ошибка, вместо:
Код:
<?php echo $order->order_id; ?>
вставить:
Код:
<?php echo $order->order_number; ?>
т.к. ID и номер заказа могут не совпадать!

Zet13
Подскажи, заказ на твоем коде формируется, виден в админке, но как пользователю отправлять на мыло стандартную форму Заказ на поставку?
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #17 : 17.04.2012, 09:40:48 »

Почему они могут не совпадать? В базе они отличаются только наличием или отсуствием большого количества нулей перед собсно номером. Например :
order_id              64
order_number      00000064
А при формировании ПДФ счета order_number используется внутри в тексте счета как его номер, а order_id как часть названия файла pdf. Не думаю что имеет смысл пугать людей большим количеством нулей...
Хотя, если вам так удобней - правьте.
"Заказ на поставку" это пдф на майл?
в файле pm_sbrf.php после
Код:
$order->changeProductQTYinStock("-");
вставьте
Код:
$this->sendOrderEmail($order->order_id);
должно сработать.
Сейчас саму форму перелопачиваю всю. В 2012 сбербанк "чуток" переделал форму. Добавилось много разных квадратиков - видимо для автоматического распознавания.
Скоро выложу.
Записан
Geetler
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Сообщений: 45


« Ответ #18 : 17.04.2012, 10:12:49 »

Цитировать
Почему они могут не совпадать?
Не все магазины же считают начальный номер от 0.
+ к этому есть и настройка в админке магазина. Например у меня первый номер 00002200
Нет, заказ на поставку это не пдф на мэил, это именно заказ на поставку, т.е. тот, что отправляется если например выбрать простой способ оплаты.
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #19 : 17.04.2012, 11:11:12 »

насчет  order_number посмотрел - вы правы.
Изменения внесу.
Заказ на поставку посмотрю почему не делается. Как-то не придал этому значения...
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #20 : 17.04.2012, 15:31:09 »

Сделал "Заказ на поставку".
Обновил магазин до 3.6.0 - и приехали.
Они переделали Чекаут........
Вообщем будем посмотреть.
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #21 : 18.04.2012, 08:47:13 »

в файле pm_sbrf.php после
Код:
$order->changeProductQTYinStock("-");
вставьте
Код:
$this->sendOrderEmail($order->order_id);
Не совсем так.
Нужно вставить
Код:
$pay_class=new jshopCheckout();
$pay_class->sendOrderEmail($order->order_id);
Это будет работать под JS 3.6.0
в 3.5.x  работать не будет.
Записан
dimuxa
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 1


« Ответ #22 : 02.05.2012, 09:09:30 »

Ну а что делать, если версия 3.5? Обязательно на 3.6 переходить, чтобы отправлялся и заказ и квитанция?
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #23 : 02.05.2012, 15:11:06 »

Нет, конечно, это было решение из серии "на коленке за 5 мин.".
Уже готово универсальное решение. Квитанция открывается в отдельной вкладке и фокус перемещается на квитанцию. В вкладке с магазином завершается заказ и отображает страницу благодарности в соответствии с настройками магазина, независимо от того что пользователь сделает с квитанцией.
Квитанция переделана по новой форме (2012г), для юрлиц бесплатно, для физлиц - 150р. на домен (а может и наоборот).
Отличия квитанций: для юрлиц ИНН 10 знаков и есть КПП, для физлиц ИНН 12 знаков и нет КПП.
Думаю, завтра выложу.
« Последнее редактирование: 02.05.2012, 15:48:29 от Zet13 » Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #24 : 03.05.2012, 11:52:53 »

Выложил основательно перелопаченную версию 1,03. см. в шапке.
И не надо здесь говорить спасибо. Для этого есть оранжевая кнопка в админке модуля :-)
« Последнее редактирование: 03.05.2012, 12:05:31 от Zet13 » Записан
Geetler
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Сообщений: 45


« Ответ #25 : 03.05.2012, 17:17:38 »

Скажу спасибо за решение. Но еще есть куда пилить...
Есть 2 момента.
Открытие в новом окне заблокирует 9 браузеров из 10.
Попробовал
Код:
win1 = window.open('','_self');
Но квитанция появяется на пару секунд, дальше смотреть времени не было.
И главное на мэил.ру приходить ерунда и сообщение
Цитировать
Данное письмо содержит потенциально опасный HTML-код, заблокированный системой безопасности.
Возможно, оно отображается неправильно.
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #26 : 03.05.2012, 19:49:43 »

Открытие в новом окне заблокирует 9 браузеров из 10.
Открывается не в новом окне (всплывающем), которое действительно заблокирует большинство браузеров, а в том же окне, но в новой вкладке. Никаких действий по блокировке в этом случае быть не должно, т.к. действие аналогичное открытию ссылки в новой вкладке через контекстное меню.
Проверил FF12, IE 7, IE8, IE9 - блокировки не происходит. Все работает как задумано.
Блокировал открытие вкладки только ГуглХром.
Оперу не проверял.
Значит нужно обязательно отправлять пользователю квитанцию на майл. И еще, добавлю сообщение о том, что квитанцию пользователь получить по почте, чтоб не волновался, если у него установлен продвинутый браузер или борящийся за независимость Касперский....
Попробовал
Код:
win1 = window.open('','_self');
Но квитанция появяется на пару секунд, дальше смотреть времени не было.
Потому и появляется на пару секунд что код правили...
Тут диллема в следующем. Для того чтобы магазин считал заказ завершенным (сформировал заказ и отправил "Заказ на поставку") он должен получить специальный post-запрос. Это не сложно сделать по нажатии кнопки "Закрыть" в бланке квитанции. А если пользователь закроет вкладку (все окно) привычным ему красным крестиком в правом верхнем углу до того как нажмет кнопку "Закрыть", то оформления заказа в магазине не произойдет. Пользователь будет уверен что заказ оформлен, и он даже распечатает квитанцию и может быть оплатит.... а вот вы про заказ узнаете только когда он начнет вас теребить через неделю своими жалобами...
А потому собственно вижу всего три варианта решения :
1. Отделить форму квитанции от магазина. Так сделано сейчас. Отправляется квитанция по почте, магазин получает post-сообщение о заказе, а в отдельном окне открывается квитанция.
2. Не делать никакого post-запроса о заказе, а использовать встроенные функции JS для их оформления до того как пользователь увидит квитанцию. Обязательно ДО, потому как действовать дальше он может как угодно. Так у меня и было сделано в предыдущих версиях... Но вот при обновлении JS с версии 3.5.х на 3.6.0 буржуины естественно сменили часть файлов магазина, в том числе некоторые функции стали называться по-другому... И то что работало для 3.5 не стало работать для 3.6. И естественно, не факт что это будет работать в 3.7.... Т.е. необходимо постоянно переделывать модуль под текущие версии магазина. Если бы я делал коммерческий модуль - наверное это было бы рационально, даже подписку можно продавать на бесплатные обновления :-)
3. Вообще не выводить квитанцию на экран. Отправлять только по почте. Тоже вариант... Сделаю этот процесс управляемым из админки... Хотя как покупателю сидящему рядом с принтером мне было бы удобнее ее увидеть и распечатать...

Опасного кода там естессно никакого нет, попробую на майл ру , проверю.
« Последнее редактирование: 04.05.2012, 08:20:53 от Zet13 » Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #27 : 04.05.2012, 10:30:40 »

Впрочем , решение вроде нашлось.
Только в IE работает не так как надо... Буду поискать сегодня в чем дело. Постараюсь завтра выложить.
Записан
Zet13
Осваиваюсь на форуме
***

Репутация: +28/-0
Offline Offline

Сообщений: 110


« Ответ #28 : 05.05.2012, 10:14:41 »

Выложил версию 1.04. - см.шапку
Все делается в одном окне.
Вроде все работает.
Записан
Nashka
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Женский
Сообщений: 5



« Ответ #29 : 10.05.2012, 10:07:41 »

Zet13, возник такой вопрос: получатель, помимо того что у него  открыт расчётный счёт, является держателем  лицевого счёта / банковской карты, номер 16-ти значный. Есть ли возможность добавить такую графу в квитанцию?  Или добавление не будет соответсвовать ПД? Если да, то зачисления денежных средств на карту без такого номера не пройдёт?! Разъясните пожалуйста!
Записан
Страниц: [1] 2 3 4 5 6 7 8 9 10 11   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet