#python #authorize.net #satchmo
#python #authorize.net #satchmo
Вопрос:
У меня есть приложение Django, которое использует Satchmo совместно с Authorize.net . Authorize.net теперь поддерживается частичная авторизация для карт MasterCard и Discover, как указано здесь и здесь. Кто-нибудь знает, поддерживаются ли эти изменения в Authorize.net платежный модуль в Satchmo? Я нашел ветку списка рассылки на эту тему, но ответ из нее был неясен.
(Я отправил этот же запрос как в список пользователей Satchmo, так и в список разработчиков Satchmo, и задал запрос в IRC-канале, ответа нет. Проект Satchmo в основном, похоже, мертв, поэтому я надеюсь, что кто-нибудь здесь сможет помочь.)
Ответ №1:
Короткий ответ — нет, Satchmo Authorize.net модуль не поддерживает частичную авторизацию «из коробки». Длинный ответ, однако, заключается в том, что создать то, что вы хотите, может быть проще, чем вы думаете:
-
В этой документации точно описано, что вам нужно для отправки частичного платежа на Authorize.net система:
- Отправка
x_allow_partial_auth=true
с отдельной транзакцией. - Когда первая транзакция успешно одобрена на часть общей суммы заказа, генерируется и возвращается идентификатор разделенного тендера. Вы должны передать это значение обратно в следующих транзакциях с
x_split_tender_id=<value>
. (Если вы укажете идентификатор разделенного тендера и идентификатор транзакции в одном запросе, появится ошибка.)
- Отправка
-
Документация Satchmo описывает, как создавать пользовательские платежные модули.
Если вы посмотрите на исходный код для Authorize.net платежный модуль в /payment/modules/authorizenet/processor.py
, вы можете видеть, что большая часть работы уже выполнена за вас. Вы можете либо расширить это Authorize.net создайте класс или просто скопируйте и вставьте код в новый модуль, скажем, /payment/modules/authorizenetpartial/
и внесите изменения, как указано на Authorize.net документация. Просто замените это x_split_tender_id
на свое x_trans_id
и, возможно, на несколько других настроек методом проб и ошибок, и все будет готово.
Комментарии:
1. Ссылка на документ не работает, найдите его [здесь] ( developer.authorize.net/guides/AIM/wwhelp/wwhimpl/js/html /… )
2. Спасибо @UdaySawant, я обновил его до прямой ссылки на документацию по частичной авторизации.