Домой Каталог: Дополнения WP-Recall Commerce Не меняются автоматически статусы заказа
30ответ(ов) в теме
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
1
22:01
Версия WP-Recall: 16.17.16
Версия дополнения: 6.0.0

Здравствуйте.
Автоматически не меняются статусы заказа при его оплате.

Настройки Commerce следующие:
1)
настройки 1
2)
настройки 2
3)
настройки 3

Перехожу на страницу любого товара:
товар

Добавляю его в корзину:
корзина

Нажимаю "Оформить заказ". Сразу прилетает письмо на почту.
Как для админа с указанием всех данных (заказ номер 12):
админ

Так и для покупателя:
покупатель

Нажимаю "Оплатить через Яндекс.Касса" (к слову, Яндекс.Касса настроена на боевой режим, все работает):
Оплата

Перекидывает на страницу оплаты:
карта

Заполняю все данные карты, нажимаю "Оплатить". Открывается страница, куда ввожу код из смс:
смс

После ввода кода открывается страница об успешно выполненном платеже:
Платеж прошел

Но вот письмо на почту о том, что статус заказа сменился на "Оплачен" не приходит.
Если заглянуть в ЛК, то в разделе "Заказы" напротив того самого заказа под номером 12 стоит статус "Неоплачен":
Статус неоплачен

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

И только после этих шагов товар становится доступен для покупателя:
Товар 1

Уважаемые админы, прошу помочь сделать так, чтобы статусы менялись автоматически.

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
2
22:05

Прошу прощения, скриншоты почему-то не подгружатся с сайта ibb.co, однако они остались кликабельны.

0
Владимир (Otshelnik-Fm)
не в сети 4 часа
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18498
3
22:07

Здравствуйте.

Настраивали яндекс кассу подключение?

Сверяйте с инструкцией

Вы не можете просматривать опубликованные ссылки

- там же есть страница успешного платежа. Я так понимаю вас туда не редиректит? Значит проблема с настройками подключения кассы

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
4
23:21

Настраивал именно так, как указано в инструкции.
В настройках дополнения указывал все страницы RESULT, SUCCESS, для успешной оплаты, для неудачной оплаты:
страницы

Однако, сейчас проверил в личном кабинете Яндекс.Кассы, что страницы успеха successUrl и ошибки shopFailUrl
установлены с динамическими адресами.
Скажите, данное обстоятельство может влиять на корректность прохождения платежей?

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
5
23:23

Точнее на корректность подключения Яндекс.Кассы к сайту и возникновению указанной в топике ошибке.

0
Владимир (Otshelnik-Fm)
не в сети 4 часа
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18498
6
00:07

Вы дали не все скриншоты. Настраивать надо строго по инструкции

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
7
11:22

Следуя инструкции, сделал такие шаги:
1. Создал пустую страницу result вида site.ru/result
result

2. Создал пустую страницу success вида site.ru/success
success

3. Создал страницу с текстом о неудачной оплате (fail) вида site.ru/fail
fail

4. Создал страницу с текстом об удачной оплате вида site.ru/paid
успех

5. В настройках плагина "Настройки магазина"->"Платежные системы"->"Сервисные страницы платежных систем" через выпадающий список указал созданные страницы
страницы

6. Интерфейс ЛК Яндекс.Кассы немного отличается интерфейса, указанного на скриншотах в инструкции.
1) Способ подключения к Яндекс.Кассе: CMS модуль «Другое (старый протокол)» - только в данном варианте можно было указать successURL и failURL (теперь данную опцию не сменить)
2) checkUrl и avisoUrl указаны вида site.ru/result
3) successUrl и shopFailUrl были ранее выставлены как динамические, я поменял на следующие:
successUrl вида site.ru/paid
shopFailUrl вида site.ru/fail
настройки

7. Указал в настройках плагина "Настройки магазина"->"Платежные системы" платежный агрегатор - Яндекс.Касса, прописал настройки подключения те же, что и в ЛК Яндекс.Кассы
настройки дополнения

Теперь после того, как в ЛК Яндекс.Кассы сменил динамические successUrl и shopFailUrl на те, что указаны выше, после оплаты товара на сайте и нажатии на кнопку "Вернуться в магазин" меня перекидывает на страницу об успешной оплате. То есть по идее, всё правильно настроено
успешная оплата

Однако при переходе в ЛК в раздел "Заказы" статус оплаченного заказа всё равно не меняется на "Оплачен". И приходится снова вручную менять статус в админке сайта
статус

Что в данной ситуации может быть преградой для автоматического проставления статуса заказа?

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
8
13:04

Описал проблему службе поддержки Яндекс.Касса.
От них пришел ответ:

Уточните, пожалуйста, правильно ли я понимаю, что у Вас модуль WP-Recall?

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

Во вложении прикладываю лог запросов и ответ на них по последнему платежу. С данным логом Вам необходимо обратится в их службу поддержки.

Ответ саппорта Яндекс.Кассы

Лог запросов и ответов:

Request

-----------------------------------------------------------------

idempotence-key: '5ec1d85e-9083-4e37-a33f-0e952acab6db'

content-type: 'application/json'

{

"id": "00000000-0000-0000-0000-000000000000",

"status": "0",

"paid": false,

"amount": {

"value": "10.00",

"currency": "RUB"

},

"created_at": "0001-01-01T00:00:00",

"refundable": false,

"capture": false,

"test": false,

"save_payment_method": false,

"payment_method_id": "2538e062-000f-5000-9000-125d65aea356"

}

-----------------------------------------------------------------

Response

-----------------------------------------------------------------

{

"id": "2538e75a-000f-5000-9000-1c9ee30c6899",

"status": "pending",

"paid": false,

"amount": {

"value": "10.00",

"currency": "RUB"

},

"confirmation": {

"type": "redirect",

"confirmation_url": "https://money.yandex.ru/api-pages/v3/3ds?acsUri=https%3A%2F%2Fkassa.yandex.ru%2Fsandbox%2Fbank-card%2F3ds&MD=157121*******-*******8972755854null&PaReq=Q1VSUkVOQ1k9UlVSJlRFUk1JTkFMPTk5OTk5OCZFWFBfWUVBUj0yMiZDVkMyX1JDPTAmUF9TSUdOPTNhNzhkYmFhNDNiMDUzYTg5ZDIzOThmYTQ4Zjg5NjhlYzM5YjEwOTMmRU1BSUw9bm9yZXBseSU0MG1vbmV5LnlhbmRleC5ydSZNRVJDSF9OQU1FPVlNJkRFU0M9MjUzOGU3NWEtMDAwZi01MDAwLTkwMDAtMWM5ZWUzMGM2ODk5Jk1FUkNIQU5UPTc5MDM2NzY4NjIxOTk5OSZDQVJEPTU1NTU1NTU1NTU1NTQ0NzcmTkFNRT0mT1JERVI9NTU2Mzc3ODg0NiZNRVJDSF9VUkw9bW9uZXkueWFuZGV4LnJ1JkFNT1VOVD0xMC4wMCZCQUNLUkVGPWh0dHBzJTNBJTJGJTJGbW9uZXkueWFuZGV4LnJ1JlRJTUVTVEFNUD0yMDE5MTAxNjA4MjM1NSZUUlRZUEU9MCZFWFA9MDImTk9OQ0U9MTIzNDU2Nzg5MEFCQ0RFRjE5NzhiMmQ5N2YyMWM0&TermUrl=https%3A%2F%2Fpaymentcard.yamoney.ru%3A443%2Fgates%2Fmb3dsdemoprovider"

},

"created_at": "2019-10-16T08:23:54.826Z",

"metadata": {},

"payment_method": {

"type": "bank_card",

"id": "2538e062-000f-5000-9000-125d65aea356",

"saved": true

},

"recipient": {

"account_id": "620348",

"gateway_id": "1602332"

},

"refundable": false,

"test": true

}

-----------------------------------------------------------------

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
9
13:16

Лог запросов и ответов они мне скинули еще и к слову о том, что при совершении платежей у меня в магазине, в логе уведомлений в личном кабинете Яндекс.Кассы появились ошибки.

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
10
14:26

romber сказал(а)
То есть по идее, всё правильно настроено

Не факт, что все верно настроено.
Проверяйте не на оплате заказа, а на пополнении личного баланса пользователя.
На этом сайте также настроена оплата через Яндекс.Кассу и все работает нормально, проблема не в коде подключения, а в настройках.
В присланных логах я не вижу ошибку, если она есть, то пусть пояснят какая именно.

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
11
19:28

Проверил. При пополнении личного счета пользователя происходит аналогичное - после ввода данных карты и списании с нее денежных средств баланс пользователя не увеличивается на оплаченную сумму.

Я уже даже не представляю, в чем может быть причина. Все возможные варианты рассмотрели, все данные указаны верно, все страницы созданы и настроены правильно как в настройках дополнения, так и в настройках ЛК Яндекс.Кассы - подтверждение на скриншотах.

Скажите, какие варианты еще можно проверить?
Уже просто руки опускаются.

0
Vadik O
не в сети 4 недели
На сайте с 14.09.2017
Участник
Тем 127
Сообщения 566
12
20:02

romber сказал(а)
Проверил. При пополнении личного счета пользователя происходит аналогичное - после ввода данных карты и списании с нее денежных средств баланс пользователя не увеличивается на оплаченную сумму.

Было что то похожее с пополнением от других дополнений, блокировал плагин безопасности а имено блокировка редактора плагинов и тем.

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
13
20:14

Самостоятельно зашел в ЛК Яндекс.Кассы в логи.
Действительно, paymentAviso выдает ошибку:
ошибка

В причине ошибки указано: Сервер вашего магазина прислал ответ в неверном формате.
Причина ошибки
лог ошибки

В связи с чем может возникать подобная ошибка?

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
14
20:31

А почему не настраиваете в тестовом режиме?
Данные высылаются в xml-формате, уточните у поддержки в каком формате они должны приходить, если в каком то другом, значит порядок подключения не соответствует требуемому.

Оффтоп
Вообще с этой Яндекс.Кассой проблемы зачастую возникают только из-за того, что сам пользователь дает неверные данные менеджеру, а в результате ему подключают неверный способ, вся настройка производится путем переписки с этим менеджером, такое только на ЯК встречается, на всех других платежках все в разы проще. Да и что за ЯК так все цепляются мне не понятно, они дерут самые большие проценты в рунете.

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
15
20:37

вот такое тело ответа должно быть:

<?xml version="1.0" encoding="UTF-8"?>
        <paymentAvisoResponse performedDatetime="2019-10-15T08:49:36+00:00" code="0" invoiceId="2002050449649" shopId="******" />

Это пример ответа с этого сайта, если у вас формат такой же, то выясняйте у поддержки ЯК почему этот ответ не нравиться.

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
16
22:49

Здравствуйте еще раз.
Общался со службой поддержки Яндекс.Касса по телефону, описал им всю проблему. Они проверили все логи, настройки в личном кабинете Яндекс.Кассы. Кроме того, я им переслал всю информацию от вас.

Их ответ был следующим:

Здравствуйте.

Все верно, ответ на запрос paymentAviso должен быть присланного формата:

<?xml version="1.0" encoding="UTF-8"?>
        <paymentAvisoResponse performedDatetime="2019-10-15T08:49:36+00:00" code="0" invoiceId="2002050449649" shopId="******" />

Но с вашей стороны приходит пустой ответ на наши запросы:

[2019-10-17T14:17:20.341+03:00] WARN  [AvisoQueue-0-49] [QUEUE/AvisoQueue/2213459232] [25f8d18b2dcfa3f4] [] [CommonHttpClient] Response is not XML: response=

        [2019-10-17T14:17:20.341+03:00] INFO  [AvisoQueue-0-49] [QUEUE/AvisoQueue/2213459232] [25f8d18b2dcfa3f4] [] [CommonHttpClient] resolveErrorType(): 
ru.yamoney.calypso.shops.adapters.ShopErrorException: Response is not XML

Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]
        at com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:687)
        at com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2220)
        at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2126)
        at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1181)
        at ru.yamoney.calypso.shops.Util.checkXmlNestedLevel(Util.java:228)
        at ru.yamoney.calypso.shops.common.http.CommonHttpClient.preprocessResponse(CommonHttpClient.java:331)
        ... 11 more

Вам нужно обратиться в поддержку вашего модуля.

Андрей, Владимир, очень прошу вас помочь мне разобраться с проблемой..

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
17
22:53

Они сказали, что с их стороны никаких проблем нет.

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
18
09:25

Хорошо, давайте попробуем разобраться.
Для этого мне потребуется доступ в административную часть вашего сайта, а также доступ к вашему серверу по фтп, все это можете скинуть мне в личку, я сам проведу все необходимые тесты.

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
19
10:38

у вас там мультисайт, сообщите на стороне ЯК на какой домен или поддомен прописаны все настройки и с какого домена или поддомена вы пытаете произвести оплату?

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
20
10:50

В настройках Яндекс.Кассы прописано:

Сайт магазина

Вы не можете просматривать опубликованные ссылки

То бишь прописан основной домен.

Сам магазин расположен на поддомене

Вы не можете просматривать опубликованные ссылки

shop.mysite.ru
На этом же поддомене добавляю товар в корзину и пытаюсь произвести оплату.

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
21
10:56

ЯК работает только с тем доменом, который прописан в его настройках. По моему мнению, настроить нужную вам конфигурацию в работе платежей нельзя.

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
22
11:12

По моему мнению, настроить нужную вам конфигурацию в работе платежей нельзя.

Можете пояснить, пожалуйста?

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
23
11:25

настраивать платежи на стороне ЯК следует на тот домен, на котором платежи будут проводиться, поддомен - считается уже другим сайтом, если вы указали на стороне ЯК основной домен, то не выйдет проводить платежи с других сайтов

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
24
11:27

Понял.
В таком случае, если я обращусь в службу поддержки Яндекс.Кассы и попрошу сменить в настройках основной домен mysite.ru на поддомен shop.mysite.ru, где и располагается магазин, то при смене домена на поддомен всё должно заработать?

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
25
11:30

если все настройки прописаны верно, то должно заработать

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
26
11:31

Спасибо!
Будем пробовать.

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
27
20:28

Добрый вечер.
Общался с поддержкой Яндекс.Кассы, мне активировали новый shopId и scid, где в настройках сайт уже верно указан - магазин.мойсайт.ру.

В Rcl Commerce в настройках магазина сменил shopId, scid и ShopPassword на новые, остальное не поменялось.

Однако, сейчас проблема повторяется..
После успешной оплаты товара его статус не изменяется, он остается как и был "Неоплачен".

В ЛК Яндекс.Кассы в логе событий отразилось следующее:

Статус уведомления: Ошибка
Причина: Сервер вашего магазина прислал ответ в неверном формате.
URL https://магазин.мойсайт.ru/result/
Тип уведомления: paymentAviso

В теле уведомления следующий код:
Тело уведомления
Это аналогично тому, что было до этого.
В теле ответа пусто - так и раньше было.

После этого снова позвонил в поддержку ЯК, всё описал.
Они сказали, что avisoUrl возвращает 200 ошибку на сервер - в avisoUrl указана пустая страница на сайте мойсайт.ру/result/

Скажите, как можно попробовать решить проблему?
Если учесть, что основная загвоздка всё же была не в том, что в настройках ЯК был указан неправильный сайт.

0
romber
не в сети 2 года
На сайте с 28.07.2019
Участник
Тем 5
Сообщения 27
28
20:40

И еще есть одно недопонимание, которое меня очень долго терзает.
Судя по вашему скриншоту,
скриншот
для плагина мы создаем 4 страницы:
- пустую для success
- пустую для result
- одну с текстом о неудачной оплате (fail)
- одну с текстом об удачной оплате

В настройках Яндекс.Кассы мы указываем:
checkUrl = пустая для result
avisoUrl = тоже пустая для result
successUrl = с текстом об удачной оплате - именно такую, а не пустую для success (мне это подтвердили в ЯК)
shopFailUrl = с текстом о неудачной оплате (fail)

А где в настройках Яндекс.Кассы мы указываем пустую для success?

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
29
10:19

romber сказал(а)
Они сказали, что avisoUrl возвращает 200 ошибку на сервер

200-ой ошибки не существует, это код успешного ответа, а не ошибки.
Я еще раз призываю осуществлять настройку и тестовые платежи НЕ НА ЗАКАЗАХ, а пополнении баланса пользователя.

где в настройках Яндекс.Кассы мы указываем пустую для success?

Созданную пустую success страницу указываем для successURL в настройках ЯК.

0
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 15991
30
10:54

проблема у вас связана с тем, что вы пытаетесь использовать функционал на мультисайте, для внесения платежа запрашивается таблица wp_3_rmag_pay_results, а ее не существует, тк дополнение баланса было активировано на основном домене и для платежей была создана таблица с другим именем.

0
Вы не имеете права на публикацию сообщений в этой теме