Предотвращение дубликатов с Paypal IPN - PullRequest
0 голосов
/ 03 июня 2011

Есть ли способ, которым API-интерфейс PayPal проверяет дубликаты идентификаторов и возвращает "недействительный" при их обнаружении?

Пример: Если пользователь кладет товар в свою корзину, некоторое время просматривает, а затем проверяет, может ли Paypal вернуть НЕДОПУСТИМОЙ ( до она фактически войдет в PayPal для оплаты), потому что другой пользователь купил этот продукт (= такой же productID) между тем?

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

Спасибо за помощь

Ответы [ 2 ]

2 голосов
/ 04 июня 2011

Я думаю, что вы ищете выражение «управление запасами».И нет, похоже, PayPal этого не обеспечивает.

Грубо говоря, традиционный подход к этому состоит в том, чтобы позволить UserA зарезервировать экземпляр Продукта № 1 на определенный период времени, P. Если у вас есть толькоколичество = 1 товара # 1 на складе, тогда в течение этого времени товар # 1 будет казаться распроданным - например, пользователь B не может положить его экземпляр в свою корзину.

после периода P, если у вас нетполучил подтверждение от PayPal (либо через PDT, либо через IPN) о том, что UserA завершил покупку, срок действия бронирования UserA истекает, и продукт № 1 снова доступен для продажи.

0 голосов
/ 06 июня 2011

Это не имеет ничего общего с PayPal;Я предполагаю, что вы не взаимодействуете с API PayPal всякий раз, когда покупатель добавляет что-то в корзину на вашем собственном сайте.
Если вы не говорите о функции cmd = _cart (стандартная корзина платежей через веб-сайт), в этом случае;нет, это недоступно как само по себе.Вы можете использовать для этого функцию «предотвратить дублирование счета-фактуры» и передать идентификатор продукта в поле «счет-фактура».Это предотвратит любые платежи по определенному «счету» (идентификатору продукта), гарантируя, что вы можете получить только 1 заказ на уникальный продукт.

Например,

И включите следующую опцию в учетной записи PayPal:
Профиль> Настройки платежей через веб-сайт> Блокировать случайные платежи

...