АктивныйПродавец:Как авторизовать карты при использовании шлюзов, не поддерживающих операцию void?

StackOverflow https://stackoverflow.com/questions/472083

Вопрос

Я работаю над компонентом биллинга приложения Ruby on Rails, используя ActiveMerchant.Платежный шлюз, который мы выбрали: ОплатаЭкспресс.

Примеры кода, которые я вижу, например, приведенные ниже, используйте authorize() и void() для проверки действительности карты:

def test_card!
  auth_response = gateway.authorize(100, card)
  gateway.void(auth_response.authorization) if auth_response.success?
  raise AuthorizationFailed.new(auth_response) unless auth_response.success?
end

Однако PaymentExpress не поддерживает действие void.Есть ли альтернативный способ выполнить это действие авторизации или можно ли исключить действие void, учитывая, что у таких шлюзов, как PaymentExpress, срок действия запроса на авторизацию истекает через 7 дней?

не могу найти упоминания о voidПросматривая авторизацию в документации или Google, я не могу найти никаких указаний на то, насколько это важно.

Некоторая помощь?

Это было полезно?

Решение 2

Оказывается, что, по крайней мере с помощью PaymentExpress, они автоматически выполняют авторизацию как часть процесса хранения своей карты. Если авторизация не удалась, она просто не будет хранить карту, возвращая & Quot; INVALID CARD & Quot; вместо. Это видно из их веб-приложения для поиска транзакций: при хранении карточек на карточке разрешается 1 доллар США, а через неделю она автоматически аннулируется.

Другие советы

Некоторые процессоры карт отмечают подобную транзакцию как потенциальное мошенничество.Им не нравится, когда за небольшими тестовыми транзакциями следуют более крупные транзакции.American Express, в частности, несколько агрессивна в этом отношении, поскольку они будут склонны отклонять транзакцию, когда вы вернетесь и попытаетесь получить реальную сумму.

Если вы планируете взимать с клиента сумму x, то вам следует авторизовать его на сумму x для подтверждения карты.Затем вы можете использовать предыдущую авторизацию и выполнить захват или форс-пост, чтобы завершить зарядку.Таким образом, клиент всегда будет видеть только нужную сумму, ожидающую и рассчитанную в его выписке.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top