我可以成功创建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获得成功回复之前,我需要对其信用卡收取费用。
我理解这个吗?这样做的最佳方式是什么?
答案 0 :(得分:0)
要在创建订阅之前验证信用卡是否有效,您需要根据处理器的要求为$ 0.00或$ 0.01执行AUTH_ONLY。如果它被批准,金额为0.01美元,那么您应该使该交易无效。然后,您可以继续创建订阅。
有一些规则变化和AUTH_ONLYs为0.01美元,我不是100%达到它们的速度。但据我所知,Visa和万事达卡希望以任何金额取消AUTH_ONLY。他们希望商家使用0.00美元,因为这样就不会在用户卡上留下任何冻结的资金,并使AUTH_ONLY的目的明确。绝对联系商家帐户提供商,看看这些规则是什么以及他们对$ 0.00 AUTH的支持程度。