PayPal — проверьте билеты еще доступны перед отправкой денег

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

Я не прошу полное руководство, но я спрашиваю о том, какой метод оплаты я должен использовать (Adaptive Payments, Express Checkout) и на какие части API я должен ссылаться. Я использую классический API.

Спасибо за вашу помощь.

0

Решение

Вы можете использовать любой из платежных продуктов PayPal. Стандартная вещь, которую нужно сделать при продаже ограниченного количества товаров или других товаров, которые имеют издержки / задержки / проблемы при полном заполнении, — это получить разрешение на оплату от покупателя (поэтому используйте PAYMENTACTION = AUTHORIZATION), а затем распределить / зарезервировать / продать товары этому Конкретный покупатель, а затем захватить средства.

Лично я рекомендую Express Checkout over Adaptive Payments, хотя оба продукта отлично справляются с этой задачей. Принимая EC в качестве примера, вы должны проверить доступность билета, выполнить SetEC, перенаправить пользователя в PayPal для входа в систему, вызвать GetEC (дополнительно здесь вы можете снова проверить доступность) и вызвать DoEC с paymentaction = authorization. Теперь вы гарантированно сможете получить средства, потому что вы зарезервировали их у покупателя. Забронировать / продать билеты покупателю. Когда это удастся, вызовите DoCapture для получения авторизации. Если билеты исчезли в течение нескольких секунд между DoEC и вашим резервированием (или возникла какая-то другая проблема с выполнением с вашей стороны), вы звоните в DoVoid, чтобы аннулировать авторизацию и освободить удержание средств (хотя ваш код взрывается и не может аннулироваться. в любом случае, срок его действия истекает через несколько дней, поэтому воздействие на покупателя должно быть минимальным).

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]