Домой Каталог: Дополнения WP-Recall YandexKassa Gateway Реализована ли ли в плагине поддержка отправки чеков?
45ответ(ов) в теме
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
31
12:53

если вы изменили режим налогообложения в настройках плагина, то можете проверить верный ли режим приходит в данных формы оплаты, в юкассе это можно посмотреть в разделе запросов вроде, для значения tax_system_code должно быть значение 2 (УСН)

Не нашел, где это можно посмотреть. Отправил запрос в Юкассу, чтобы они по логам посмотрели, что от нас приходит.

если режим налогообложения с сайта передается верный, но в чеке печатается старый режим, возможно, это зависит от настроек вашей кассы

В Настройках облачной кассы (на сайте) указано "Запрашивать СНО" - "Да". То есть облачная касса берет от ЮКассы, а она от нас.

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
32
12:54

То есть (пока ЮКасса не ответила) приична, скорее всего, где-то в коде.

В каком файле можно принудительно выставить налоговый режим, Андрей?

YandexKassa Gateway 2.0.1 (старый протокол оплаты с изменениями под ЮКассу),
WP Access Ultimate 1.7.5,
WP Recall 16.17.5,
WordPress 5.0.

0
Андрей CS
не в сети 21 час
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
33
15:06

можете попробовать вручную указать передачу в файле yandexkassa-api-gateway/index.php
строка 172:

'tax_system_code'	 => rcl_get_commerce_option( 'ykapi_tax' ),

укажите код налогового режима явно:
'tax_system_code'	 => 2,

Доступные коды режимов из документации Юкасса

Вы не можете просматривать опубликованные ссылки
0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
34
15:34

Спасибо, Андрей.

Где и как можно добавить "Признак предмета расчета" = "Услуга". Мы не отправляли ранее эти данные. А Юкасса почему-то автоматом подставляла "Товар" и отправляла в облачную кассу.

0
Андрей CS
не в сети 21 час
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
35
15:51

там же, рядышком добавьте новое свойство "payment_subject" со значением service

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
36
16:04

Это будет корректно?

'tax' => $rmag_options['yk_nds'],
'text' => get_the_title($product->product_id),
'paymentSubjectType' => 'service'

0
Андрей CS
не в сети 21 час
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
37
16:08

так, уточнение, размещать payment_subject надо в другом месте
найдите чуть выше места, где вносили последнюю правку строчку

'vat_code'		 => rcl_get_commerce_option( 'ykapi_nds' ),

и добавьте под ней
'payment_subject'		 => 'service',

dm1 сказал(а)
Это будет корректно?

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

'tax_system_code'	 => 2,

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
38
16:12

Просто, у нас старые версии плагинов.

То есть это вообще не нужно?

'paymentSubjectType' => 'service'

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
39
16:15

'vat_code' => rcl_get_commerce_option( 'ykapi_nds' ),

У нас такой строки нет.

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
40
16:16

У нас так:

            if($data->pay_type == 1){
                
                $items[] = array(
                    'quantity' => 1,
                    'price' => array(
                        'amount' => $data->pay_summ
                    ),
                    'tax' => $rmag_options['yk_nds'],
                    'text' => __('Пополнение личного счета')
                );
                
            }else if($data->pay_type == 2){
                
                $order = rcl_get_order($data->pay_id);
            
                if($order){

                    foreach($order->products as $product){
                        $items[] = array(
                            'quantity' => $product->product_amount,
                            'price' => array(
                                'amount' => $product->product_price
                            ),
                            'tax' => $rmag_options['yk_nds'],
                            'text' => get_the_title($product->product_id)
                        );
                    }
                    
                    /*$items[] = array(
                        'quantity' => 1,
                        'price' => array(
                            'amount' => $order->order_price
                        ),
                        'tax' => $rmag_options['yk_nds'],
                        'text' => __('Оплата заказа').' №'.$order->order_id
                    );*/

                }
 
            }else{
                
                $items[] = array(
                    'quantity' => 1,
                    'price' => array(
                        'amount' => $data->pay_summ
                    ),
                    'tax' => $rmag_options['yk_nds'],
                    'text' => $data->description
                );
                
            }

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
41
16:17

Видимо, версия другая.

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
42
16:26

У нас не API. Передача старым способом.

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
43
16:33

В документации ЮКассы используется именно (со словом Type):

'paymentSubjectType' => 'service'

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

Так верно будет? Мы эту строку добавили в двух местах:

if($data->pay_type == 1){
                
                $items[] = array(
                    'quantity' => 1,
                    'price' => array(
                        'amount' => $data->pay_summ
                    ),
                    'tax' => $rmag_options['yk_nds'],
                    'text' => __('Пополнение личного счета')
                );
                
            }else if($data->pay_type == 2){
                
                $order = rcl_get_order($data->pay_id);
            
                if($order){

                    foreach($order->products as $product){
                        $items[] = array(
                            'quantity' => $product->product_amount,
                            'price' => array(
                                'amount' => $product->product_price
                            ),
                            'tax' => $rmag_options['yk_nds'],
                            'text' => get_the_title($product->product_id),
                            'paymentSubjectType' => 'service'
                        );
                    }
                }
 
            }else{
                
                $items[] = array(
                    'quantity' => 1,
                    'price' => array(
                        'amount' => $data->pay_summ
                    ),
                    'tax' => $rmag_options['yk_nds'],
                    'text' => $data->description,
		    'paymentSubjectType' => 'service'
                );
                
            }
            
            $fields['ym_merchant_receipt'] = json_encode(array(
                'customerContact' => get_the_author_meta('email', $data->user_id),
                'taxSystem' => $rmag_options['yk_tax'],
                'currency' => $rmag_options['primary_cur'],
                'items' => $items
            ));

0
Андрей CS
не в сети 21 час
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
44
16:39

ну попробуйте сделать так, я старую АПИ не смотрел пока

0
dm1
не в сети 2 года
На сайте с 07.12.2018
Участник
Тем 55
Сообщения 306
45
17:16

Сработало. Спасибо, Андрей.

1
Тема закрыта. Публикация новых сообщений запрещена.