Повторная зарядка с Payflow Pro
Вероятно, это больше вопрос технической поддержки Payflow Pro, но в любом случае. Мы пытаемся осуществить повторную зарядку одной кредитной карты с помощью платежа Payflow Pro через ActiveMerchant. Нам нужно, чтобы клиент предоставил информацию о кредитной карте один раз, а затем каждый месяц взимал за переменные суммы. Однако в API Payflow, похоже, нет явного метода STORE, хотя это должно быть как-то возможно, так как биллинг RECURRING является частью стандарта. Мы что-то упускаем и есть методы для этого, или мы должны использовать какой-то обходной путь?
2 ответа
Ладно, в конце концов понял сам, только к вашему сведению: это не имеет ничего общего с регулярными платежами. Вы можете просто "СОХРАНИТЬ" кредитную карту, выдав и аннулировав небольшую транзакцию, а затем, вместо того, чтобы указывать данные кредитной карты, вы помещаете возвращенный запрос request.token (или "pn_ref" в условиях платежного потока).
Как то так должно работать
module ActiveMerchant #:nodoc:
module Billing #:nodoc:
class PayflowGateway
def store(credit_card, options = {})
stored = purchase( 1, credit_card)
return stored unless stored.success?
# we may charge some money we should not but I guess there is
# no better way for now
voided = void(stored.authorization)
return voided unless voided.success?
return stored
end
end
end
end
Да, я тоже решил эту проблему. PNRefs очень удобны для реализации вашей собственной системы биллинга с периодическими платежами... Однако, я думаю, вы также будете платить за суммы авторизации и недействительности в размере 1 доллара США, поскольку VISA и другие компании начали использовать их в качестве аккаунта. верификация. Теперь они рекомендуют использовать авторизацию ZDA (сумма в 0 долларов США), которая возвращает код ошибки 0 и ответное сообщение "Подтверждено" вместо "Авторизовано". Это работает со всеми торговыми банками - если PayPal не является вашим торговым банком, в этом случае вы получите код ошибки 4 - "Неверная сумма". Если PayPal является вашим коммерческим банком, они просто рекомендуют сделать авторизацию бездействующей в размере 1 долл. США и, по-видимому, взимают плату за визу.
Вот хорошая статья о сборах и рекомендуемых методах выполнения авторизаций с нулевым долларом: https://www.x.com/docs/DOC-1561