Authorize.net ARB Проблемы с кредитными картами
Я могу успешно создавать подписки ARB. Но, насколько я могу судить из документации, кредитная карта не проверяется, пока она не будет снята.
Так что я понимаю, что мне нужно использовать AIM и VOID с зарядом 0,01.
$content =
"<?xml version=\"1.0\" encoding=\"utf-8\"?>" .
"<ARBCreateSubscriptionRequest xmlns=\"AnetApi/xml/v1/schema/AnetApiSchema.xsd\">" .
"<merchantAuthentication>".
"<name>" . $loginname . "</name>".
"<transactionKey>" . $transactionkey . "</transactionKey>".
"</merchantAuthentication>".
"<refId>" . $refId . "</refId>".
"<subscription>".
"<name>" . "Payment" . "</name>".
"<paymentSchedule>".
"<interval>".
"<length>". 1 ."</length>".
"<unit>". "months" ."</unit>".
"</interval>".
"<startDate>" . $today . "</startDate>".
"<totalOccurrences>". 9999 ."</totalOccurrences>".
"<trialOccurrences>". 0 . "</trialOccurrences>".
"</paymentSchedule>".
"<amount>". $contractorRate ."</amount>".
"<trialAmount>" . 0.00 . "</trialAmount>".
"<payment>".
"<creditCard>".
"<cardNumber>" . $ccnumber . "</cardNumber>".
"<expirationDate>" . $ccexpire . "</expirationDate>".
"</creditCard>".
"</payment>".
"<billTo>".
"<firstName>". $firstname . "</firstName>".
"<lastName>" . $lastname . "</lastName>".
"</billTo>".
"</subscription>".
"</ARBCreateSubscriptionRequest>";
//send the xml via curl
$response = send_request_via_curl($host,$path,$content);
Поэтому, прежде чем я получу успешный ответ от $ response, мне нужно аннулировать платеж с их кредитной карты.
Я прав в этом понимании? Каков наилучший способ сделать это?
1 ответ
Чтобы убедиться, что кредитная карта действительна перед созданием подписки, вам нужно выполнить AUTH_ONLY за 0,00 или 0,01 доллара в зависимости от требований вашего процессора. Если оно будет одобрено, а сумма составит 0,01 доллара США, вам следует аннулировать эту транзакцию. Тогда вы можете пойти дальше и создать свою подписку.
Были некоторые изменения правил и AUTH_ONLY за 0,01 доллара, и я не на 100% уверен в их скорости. Но насколько я понимаю, Visa и MasterCard хотели покончить с AUTH_ONLY на любую сумму в долларах. Вместо этого они хотели, чтобы торговцы использовали 0,00 долл. США, поскольку это не оставляет замороженных средств на карточке пользователя и делает цель AUTH_ONLY понятной. Обязательно обратитесь к поставщику учетной записи продавца и узнайте, каковы эти правила и каков уровень их поддержки для $0,00 AUTH.