2015-03-17 3 views
1

У меня есть 2 типа ежегодной подписки на моем сайте, одна на 99 $ и одна на 299 $. Я хочу, чтобы пользователь мог обновлять/понижать свою подписку, когда захочет. Я попытался использовать опцию «изменить» Paypal, но это дает мне возможность обновиться до 20% каждые 180 дней, что действительно не то, что мне нужно. Я искал в Интернете, и все, что я смог найти:Paypal - подписка на обновление и понижение рейтинга

  1. это не возможно
  2. использовать Paypal Payflow
  3. отменить и начать новую подписку

# 2, я могу Не найти хорошую документацию. # 3, я не хочу, чтобы пользователь отменил его, а затем попросил его создать новую подписку. Потому что, если он заплатил 99 $ и через 3 месяца, и он хочет изменить для подписки 299 $, я хочу, чтобы иметь возможность обвинить его только 9/12 из 299 $ левых минус 9/12 из 99 $, что он не предположите, что заплатить, потому что он переключает подписку. (299 * 9/12 - 99 * 9/12 = сумма оставлена)

У кого-нибудь есть хороший способ продолжить? Кроме того, большинство общих ссылок в ответах, которые я нахожу, больше недействительны, что делает его еще сложнее.

ответ

3

При работе со стандартными подписками или экспресс-выпиской с повторными платежами вы столкнетесь с этим ограничением, которое вы описали.

Если вы используете Payments Pro, хотя это может быть сделано на шлюзе PayFlow или в DoDirectPayment/CreateRecurringPaymentsProfile API, в зависимости от версии PayPal, на которой вы находитесь, никаких ограничений в этом профиле не будет.

Payments Pro действительно не более чем принимает кредитные карты напрямую без переадресации через PayPal. Люди просто вводят свои данные о карте прямо на ваш сайт. PayPal взимает 30 долларов за месяц за это, а затем еще 30 долларов за месяц за добавление повторяющихся платежей, так что это может быть дорогостоящим вариантом.

Другим вариантом является использование ссылочных транзакций. Это можно использовать как с Express Checkout, так и с Payments Pro, и в этом случае вы должны установить соглашение о выставлении счетов, а затем вы можете использовать API DoReferenceTransaction в любое время для обработки платежа любой суммы без дальнейшего одобрения. Таким образом, в этом случае вам нужно будет создать свою собственную повторяющуюся систему, которая проверяет все ваши записи профиля клиента каждый день, чтобы узнать, какие из них должны быть выполнены, и пропустите их все, чтобы отправить запрос DoReferenceTransaction для каждого из них каждый день. Конечно, вы могли бы также настроить это, чтобы просто обрабатывать всех в один и тот же день каждый месяц, или же вы хотите справиться с этим.

Есть определенные варианты, но они требуют более продвинутой разработки с API, чем стандартные подписки.

+0

Все это кажется довольно сложным. Я попробую, спасибо. –

+0

Не стесняйтесь [запросить цитату] (http://www.angelleye.com/quote-request), если вы хотите, чтобы работа была выполнена для вас. –

Смежные вопросы