-1

我可以成功创建 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 的成功回复之前,我需要取消对他们信用卡的收费。

我的理解正确吗?这样做的最佳方法是什么?

4

1 回答 1

0

要在创建订阅之前验证信用卡是否有效,您需要根据处理者的要求以 0.00 美元或 0.01 美元的价格执行 AUTH_ONLY。如果它被批准,并且金额为 0.01 美元,那么您应该取消该交易。然后,您可以继续创建订阅。

有一些规则更改和 0.01 美元的 AUTH_ONLY,我不是 100% 了解它们。但据我了解,Visa 和 MasterCard 想要取消任何金额的 AUTH_ONLYs。他们希望商家改用 0.00 美元,因为这样不会在用户卡上留下冻结的资金,并且可以明确 AUTH_ONLY 的目的。一定要联系商家帐户提供商,看看这些规则是什么,以及他们对 0.00 美元 AUTH 的支持程度如何。

于 2014-04-01T15:00:42.967 回答