Paypal Экспресс - Добавить Скидку


В настоящее время я отправляю обычную транзакцию в Paypal Express и достигаю шлюза без ошибок.

Теперь я хотел бы настроить свою корзину для отправки скидки на шлюз. Моей первой мыслью было изменить значение 'AMT', которое отправляется на шлюз. Тем не менее, похоже, что Paypal проверяет поле "AMT", вычисляя общую сумму ITEMAMT, TAXAMT и SHIPPINGAMT поля, чтобы убедиться, что общее количество не изменилось:

[L_AMT0] => 49.99
[L_NUMBER0] => 3706{3}8
[L_QTY0] => 1
[L_TAXAMT0] => 0.00
[ITEMAMT] => 49.99
[TAXAMT] => 0
[SHIPPINGAMT] => 14.95
[AMT] => 64.94

Сколько раз я отправляю скидку на Paypal? У меня есть просмотрел, какую документацию я могу найти, но безуспешно; аналогичные вопросы здесь, на SO, тоже не помогли. Спасибо.

Редактировать: Я заметил, что могу пройти через поле SHIPDISCAMT. Я не знаю, позволит ли это мне делать то, что мне нужно, хотя - я все еще получаю ошибки, указывающие на то, что что-то "не соответствует".

Author: Pete171, 2012-03-15

3 answers

Понял.

Оказывается, что вы можете пропустить отрицательную сумму в качестве позиции и самостоятельно пометить ее как скидку. Мне пришлось добавить приведенный выше код:

$params['L_NAME1'] = 'Discount Coupon';
$params['L_AMT1'] = -$discountCodeAmount;
$params['L_QTY1'] = 1;
$params['ITEMAMT'] -= $discountCodeAmount;
$params['AMT'] -= $discountCodeAmount;

Это имело следующий эффект:

enter image description here

Я нашел свой ответ в этом PDF-файле:

Https://cms.paypal.com/cms_content/CA/en_US/files/developer/PP_ExpressCheckout_IntegrationGuide.pdf

По какой-то причине эта информация не была предоставлена в нескольких других официальных PayPal экспресс-статьи/документы, которые я читал.

 22
Author: Pete171, 2012-03-14 21:40:23

Я использовал метод позиции с отрицательной ценой для получения скидки, но столкнулся с проблемой - если значение скидки равно цене продукта, например, такие позиции, как:

[L_NAME0] => Product #1
[L_COST0] => 18.99
[L_QTY0] => 1
[L_NAME1] => Discount
[L_COST1] => -18.99
[L_QTY1] => 1
[ITEMAMT] => 0.00
[FREIGHTAMT] => 15.00
[HANDLINGAMT] => 0.00

Затем он выдает ошибку PayPal "Ошибка формата поля: 10431 - Сумма товара недопустима".

Однако удаление товара со скидкой и отправка вместо него поля "СКИДКА" исправили эту проблему и дали новую:-) PayPal всегда показывает это поле как "Скидка на доставку", в то время как на самом деле это скидка на товар. По крайней мере, это работает...

 0
Author: random, 2013-11-15 06:50:47

Пожалуйста, обратитесь к этому URL-адресу Paypal Список переменных HTML

<input type="hidden" name="discount_amount_cart" id="discount_amount_cart"  value="3.00">

Вы можете отправить широкую скидку на корзину (discount_amount_cart), Широкую скидку на товар (discount_amount), используя эти параметры. Вы можете найти больше по ссылке предоставить. Обязательно передайте положительное целое значение. PayPal Не принимает Отрицательное значение.

 0
Author: Milan Malani, 2016-07-01 05:40:23