Jump to content

Автоматически уведомить покупателя об оплате


Recommended Posts

Здравствуйте форумчане.

Подскажите пожалуйста, как сделать автоматическое уведомление клиента по почте после оплаты товара? В админке уведомление есть, но нужно нажимать галочку и сохранять. 

Link to post
Share on other sites

А можно тут ? интересный вопрос, присоединяюсь к тс

 

это зависит от метода оплаты, в некоторых уже есть уведомление об оплате админу и пользователю в payment/метод_оплаты/callback.php

// Отправим уведомление на email 
$simpla->notify->email_order_user(intval($order->id));
$simpla->notify->email_order_admin(intval($order->id));

вы можете настроить это отдельно для каждого из методов.

Link to post
Share on other sites

это зависит от метода оплаты, в некоторых уже есть уведомление об оплате админу и пользователю в payment/метод_оплаты/callback.php

// Отправим уведомление на email 
$simpla->notify->email_order_user(intval($order->id));
$simpla->notify->email_order_admin(intval($order->id));

вы можете настроить это отдельно для каждого из методов.

 

 

А не проще ли на странице заказа (куда нас перенаправляет после успешной оплаты) сделать проверку оплачен заказ или нет, и если заказ оплачен то выполнить $simpla->notify->email_order_admin(intval($order->id)); ?

Конечно если пользователь вернется на эту страницу.

Link to post
Share on other sites

А не проще ли на странице заказа (куда нас перенаправляет после успешной оплаты) сделать проверку оплачен заказ или нет, и если заказ оплачен то выполнить $simpla->notify->email_order_admin(intval($order->id)); ?

 

1. Безусловно, это проще.

2. Но прежде чем делать такое, полезно бы хоть немного ПОДУМАТЬ, хорошо ли это будет.

3. Заходить на страницу заказа покупатель может МНОГО раз (например, по ссылке из письма). И тогда ему будет МНОГО раз отправляться уведомление об оплате.

Я бы сказал, совет вредительский...

 

вы можете настроить это отдельно для каждого из методов.

 

Прежде чем это делать, надо бы у ТС уточнить постановку задачи.

"после оплаты товара" - можно понимать в разных смыслах:

1. Есть автоматическая установка отметки об оплате в отдельных методах.

2. Есть ручная отметка об оплате в админке на странице заказа.

В какой ситуации требуется уведомление - 1, 2 или обеих?

Link to post
Share on other sites

3. переход по ссылке работает через $_GET, что мешает отловить $_POST который отправляет терминал оплаты и выполнить условие? Условие и отправка письма сработает один раз.

Прежде чем заявлять что мой совет вредительский советую самому сначала обдумать решение.

Link to post
Share on other sites

3. переход по ссылке работает через $_GET, что мешает отловить $_POST который отправляет терминал оплаты и выполнить условие? Условие и отправка письма сработает один раз.

Прежде чем заявлять что мой совет вредительский советую самому сначала обдумать решение.

 

Ничто не мешает.

Если я правильно понял, Вы теперь вместо маленького изменения, описанного в посте #5, предлагаете проводить изменения ВО МНОГИХ файлах способов оплат. Если так, то простота, о которой упоминалось в посте #5, пропадает, и Ваш обновленный совет становится почти тем же, что ранее сказал mishanya в #4...

 

Link to post
Share on other sites

Корс я писал о OrderView.php если у тебя не хватило логики догадаться.

В OrderView.php можно отловить $_POST и проделать нужные действия, так что пожалуй пока мое предложение для реализации самое простое.

Еще один вариант сделать доп. условия через куки по какому то ключу.

Link to post
Share on other sites

Корс я писал о OrderView.php если у тебя не хватило логики догадаться.

 

НЕ хватило. Я ошибался, считая, что Вы используете общепринятую логику работы платежных систем. Она у них такова, что на возврат на сайт полагаться НЕЛЬЗЯ, поэтому они обычно посылают независимые уведомления помимо браузера пользователя. Кстати, на это Вы сами намекаете в #5.

А пока при Вашем предложении - если не вернется пользователь на сайт со страницы платежной системы, то и не будет никакого уведомления...

 

В OrderView.php можно отловить $_POST и проделать нужные действия, так что пожалуй пока мое предложение для реализации самое простое.

 

Новость хорошая: предложение Noxter-a для реализации самое простое.

Новость плохая: предложение Noxter-a для работы самое неправильное.

 

Еще один вариант сделать доп. условия через куки по какому то ключу.

 

Выходит, предыдущие варианты не слишком хороши, раз нужен еще один?

Link to post
Share on other sites

так как же реализовать ? :) для тех кто на броне

 

Смотря что Вам требуется реализовать.

Тут в теме Noxter уже кое-что реализовал, даже в разных вариантах. Судя по его заявлениям в теме, метод у него очень хороший - сам изобрел, сам и похвалил. Если Вам непонятны его глубокие идеи, то попробуйте заказать и комплексное обслуживание под ключ:

 

Черканите мне завтра в скайп simplacms помогу бесплатно.

 

 

А если серьезно, то даже тот, кто на броне, должен чуть соображать, и как минимум ЧИТАТЬ в теме хотя бы важные моменты:

 

Прежде чем это делать, надо бы у ТС уточнить постановку задачи.

"после оплаты товара" - можно понимать в разных смыслах:

1. Есть автоматическая установка отметки об оплате в отдельных методах.

2. Есть ручная отметка об оплате в админке на странице заказа.

В какой ситуации требуется уведомление - 1, 2 или обеих?

Link to post
Share on other sites

это зависит от метода оплаты, в некоторых уже есть уведомление об оплате админу и пользователю в payment/метод_оплаты/callback.php

// Отправим уведомление на email 
$simpla->notify->email_order_user(intval($order->id));
$simpla->notify->email_order_admin(intval($order->id));

вы можете настроить это отдельно для каждого из методов.

 

Эти строки в файле имеются, но автоматического уведомления нет.

Link to post
Share on other sites

Все заработало, после того как Platon (я использую эту систему) разрешили у себя в вывод статуса о погашении. Для меня тема закрыта, спасибо!

Link to post
Share on other sites

Мы делаем так же, как описывал выше Kors: в файле callback.php нужного метода оплаты, перед тем как списать товар и сразу же после того как проставляем статус "оплачено":

// Установим статус оплачен
$simpla->orders->update_order(intval($order->id), array('paid'=>1));

рассылаем уведомления всем кому надо и разными способами. Считаем, что подтверждение оплаты важный этап для клиента, поэтому также отправляем ему смс с подтверждением:

 

// Отправим уведомление на email
$simpla->notify->email_order_user(intval($order->id));
$simpla->notify->email_order_admin(intval($order->id));

// Отправим уведомление на телефон админа
$admin_phone = $simpla->settings->pz_phones[admin];
$simpla->smssend->send($admin_phone, 'Заказ №'.$order->id.' на сумму '.$order->total_price.' '.$payment_currency->code.' оплачен.');
// и телефон клиента
$simpla->smssend->send($order->phone, 'Ваш заказ №'.$order->id.' на сумму '.$_POST['amount'].' '.$payment_currency->code.' оплачен.');

Функция отправки смс и её реализация описана в соответствующей теме

 

Отдельно отмечу, что номер телефона администратора подхватываем из админки из настроек сервиса "Простые звонки": 

$admin_phone = $simpla->settings->pz_phones[admin];

Где admin — логин менеджера.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...