Андрей, вот ответ поддержки ЮКассы:
Вот что вы, судя по логам, передаёте нам в запросе:
{"orderNumber":"ххххх","customerNumber":"ххххх","YK_Type_Pay":"wau-payment","YK_Baggage_Data":"ххххх","paymentType":"","sum":ххххх,"scid":ххххх,"shopId":"ххххх","shopArticleId":"ххххх"}
Данных для чека, судя по всему, в данный момент к нам от вас не приходит.
Как быть? Плагин должен отправлять:
- наименование товара / услуги
- количество
- e-mail пользователя
- ставку НДС
Напоминаю, что используется старый плагин (старый протокол) со старой версией Ultimate и WP Recall.
Спасибо. Андрей, можете подсказать, какой из этих параметров является наименованием товара:
<input type="hidden" name="shopId" value="ХХХХХХХ"> <input type="hidden" name="scid" value="ХХХХХХХ"> <input type="hidden" name="sum" value="ХХХХХХХ"> <input type="hidden" name="orderNumber" value="ХХХХХХХ"> <input type="hidden" name="customerNumber" value="ХХХХХХХ"> <input type="hidden" name="YK_Type_Pay" value="wau-payment"> <input type="hidden" name="YK_Baggage_Data" value="ХХХХХХХ"> <input type="hidden" name="ym_merchant_receipt" value="{"customerContact":"ХХХХХХХ","taxSystem":"ХХХХХХХ","currency":"RUB","items":[{"quantity":1,"price":{"amount":ХХХХХХХ},"tax":"ХХХХХХХ","text":"ХХХХХХХ"}]}">
Я так полагаю это последний параметр - "text"? Вопрос. Он передается в виде цифр и латинских символов, если смотреть через html на странице оплаты. Это нормально? Или он должен быть как название аккаунта в настройках плагина Ultimate - на русском? Спасибо.
Странно. Но из поддержки ЮКассы ответили, что в логах нет этих параметров. Несколько оплат были произведены после того, как фискализация в плагине была подключена. Может ли быть так, что эти параметры не проходят в логах, потому что фискализация еще не подключена в самой ЮКассе?
Вот, что в логах видит поддержка ЮКассы:
orderNumber=ХХХХХХ orderSumAmount=ХХХХХХ YK_Baggage_Data=ХХХХХХ shopArticleId=ХХХХХХ paymentPayerCode=ХХХХХХ cdd_rrn=ХХХХХХ YK_Type_Pay=wau-payment paymentType=ХХХХХХ requestDatetime=ХХХХХХ nst_eplPayment=ХХХХХХ cps_user_country_code=RU cdd_response_code=00 orderCreatedDatetime=ХХХХХХ action=ХХХХХХ shopId=ХХХХХХ scid=ХХХХХХ shopSumBankPaycash=ХХХХХХ shopSumCurrencyPaycash=ХХХХХХ rebillingOn=ХХХХХХ orderSumBankPaycash=ХХХХХХ orderSumCurrencyPaycash=ХХХХХХ unilabel=ХХХХХХ cdd_pan_mask=ХХХХХХ customerNumber=ХХХХХХ environment=ХХХХХХ invoiceId=ХХХХХХ cdd_auth_code=ХХХХХХ shopSumAmount=ХХХХХХ md5=ХХХХХХ
Андрей, подскажите, как сделать так, чтобы вместо фразы "Приобретение аккаунта платного доступа" в чек уходило название этого аккаунта (аккаунтов несколько и названия у них разные)?
И подскажите вариативно, как сделать так, чтобы вместо фразы "Приобретение аккаунта платного доступа" в чек уходила эта фраза + название этого аккаунта (аккаунтов несколько и названия у них разные)?
Админы ЮКассы прислали кусок лога:
ReceiptItem{quantity=1, price=ХХХХХRUB, tax=1, text=Приобретение аккаунта платного доступа}], taxSystem=6}
То есть наименование аккаунта не передается, как я вижу.
Можно как-то понять, почему? Возможно, из-за того, чтобы вторая часть 'description' это переменная? Или это не должно быть проблемой?
Или как вариант, проблема может быть связана с тем, что скрипит ЮКссы подхватывает только то, что в первых кавычках.
Можно ли задать весь текст одной переменной (только название аккаунта) или двумя (название аккаунта доступа + тарифный план)? Подскажите, как это сделать.
Заранее спасибо.
Андрей CS сказал(а)
в файле дополнения доступа задается этот текст
wp-content/wp-recall/add-on/wp-access-ultimate/functions/ajax.php, строка 51
'description' => __( 'Приобретение аккаунта платного доступа' ) . ' "' . $accountName . '"',
насколько я вижу наименование аккаунта также передается
измените указанную строчку так
'description' => $accountName.': '.$tariff->tariff_name,
Внес изменения в ajax. ЮКасса прислала лог и там снова "Приобретение аккаунта платного доступа".
Видимо, откуда-то из другого места подхватывает.
Пробовал на странице оплаты Ctrl+F5 нажать (мало ли, в памяти осталась). Всё равно даже в html-коде старые обозначения текста наименования товара (они там юникодом "зашифрованы").
Эти данные в форму оплаты (и значит, в чек) не из ajax.php идут. В нем нем данных, которые добавились при включении "фискализации" в плагине:
'pay_type' => 'wau-payment', 'pay_systems_not_in' => array('yandexdengi'), 'user_id' => $user_ID, 'pay_summ' => $tariff_price, 'description' => $accountName.': '.$tariff->tariff_name, 'merchant_icon' => 1
А в логах ЮКассы данные фискализации появились (просто наименование товара пишет стандартное "Приобретение аккаунта доступа").
Андрей, Вы правы, вместе с Вами мы меняли код в /wp-recall/add-on/wp-access-ultimate/templates/wau-tariff-single.php вот так:
<?php echo rcl_get_pay_form(array( 'baggage_data' => array( 'tariff_id' => $tariff->tariff_id ), 'pay_type' => 'wau-payment', 'pay_systems_not_in' => array('yandexdengi','user_balance'), 'user_id' => $WAU_User->user_id, 'pay_summ' => ($tariff->tariff_price == $discount = wau_get_tariff_price($tariff->tariff_id))? $tariff->tariff_price: $discount, 'description' => __('Приобретение аккаунта платного доступа'), 'merchant_icon' => 1 )); ?>
Делали это здесь
Я правильно понимаю, надо в этом коде строку:
'description' => __('Приобретение аккаунта платного доступа'),
поменять на:
'description' => $accountName.': '.$tariff->tariff_name,
Всё верно?
возможно, вам потребуется разместить в указанном файле такую строчку
Андрей, подскажите, после какой строки кода ниже нужно разместить новую строку?
<?php global $WAU_User; ?> <li class="plan"> <ul class="planContainer"> <li class="title"> <span <?php echo $tariff->is_best? 'class="bestPlanTitle"': ''; ?>><?php echo $tariff->tariff_name; ?></span> </li> <li class="price"> <p <?php echo $tariff->is_best? 'class="bestPlanPrice"': ''; ?>> <?php if($tariff->tariff_price != $discount = wau_get_tariff_price($tariff->tariff_id)): ?> <s><?php echo $tariff->tariff_price; ?></s> <?php echo $discount; ?> <?php else: ?> <?php echo $tariff->tariff_price; ?> <?php endif; ?> <span><?php echo rcl_get_primary_currency(1); ?></span> </p> </li> <li> <ul class="options"> <?php if($tariff->tariff_desc): ?> <li><?php echo $tariff->tariff_desc; ?></li> <?php endif; ?> </ul> </li> <li class="button preloader-parent"> <?php if($WAU_User->user_id): ?> <?php echo rcl_get_pay_form(array( 'baggage_data' => array( 'tariff_id' => $tariff->tariff_id ), 'pay_type' => 'wau-payment', 'pay_systems_not_in' => array('yandexdengi','user_balance'), 'user_id' => $WAU_User->user_id, 'pay_summ' => ($tariff->tariff_price == $discount = wau_get_tariff_price($tariff->tariff_id))? $tariff->tariff_price: $discount, 'description' => __('Приобретение аккаунта платного доступа'), 'merchant_icon' => 1 )); ?> <?php else: ?> <a href="<?php echo rcl_get_loginform_url('login'); ?>" class="rcl-login <?php echo $tariff->is_best? 'bestPlanButton': ''; ?>"> <?php _e('Приобрести'); ?> </a> <?php endif; ?> </li> </ul> </li>
Добрый день.
Андрей, коллеги, нужна срочная помощь. Переходим оперативно с налогового режима ПСН на УСН доходы. В настройках Rcl Commerce (Платежные системы) переключил режим с ПСН на УСН доходы, но в чеках, которые пробиваются, по-прежнему написано, что режим ПСН.
В силу правок, которые мы делали ранее (выше в этой теме), возможно, что где-то в коде поставили принудительно отправлять в Юкассу такой налоговый режим. Или это глюк? Подскажите, что и как нужно поправить и в каком файле.
если вы изменили режим налогообложения в настройках плагина, то можете проверить верный ли режим приходит в данных формы оплаты, в юкассе это можно посмотреть в разделе запросов вроде, для значения tax_system_code должно быть значение 2 (УСН)
если режим налогообложения с сайта передается верный, но в чеке печатается старый режим, возможно, это зависит от настроек вашей кассы