我有一个需要将 Authorize.net CIM 令牌导入的站点。特别是 authnetcim_profile_id 和 autthnetcim_payment_profile_id。我很难弄清楚如何将这些令牌放入 magento,但我能够找到一个附加到客户的属性,称为 autthnecim_profile_id。所以我已经成功地导入了所有的配置文件 ID,如下所示。
$row = 0;
while (($values = fgetcsv($handle, 1000, ",")) !== FALSE) {
if ($row != 0){
$customer = Mage::getModel("customer/customer")->getCollection()
->addAttributeToSelect('*')
->addFieldToFilter(array(
array('attribute'=>'oldSystemId','eq'=>$values[0]),
))
->getFirstItem();
$customer->setData('authnetcim_profile_id', $values[49]);
$customer->save();
}
$row++;
}
但是,当我点击一个我知道我已为其导入配置文件 ID 的客户时,会出现一个框并显示“缺少或无效令牌”。我无论如何都找不到导入付款资料 ID。
所以我的问题是:
- 缺少付款资料 ID 是否会导致令牌显示为无效?
- 有谁知道我如何将付款配置文件 ID 放入 magento 以及如何将其设置为其相关配置文件的默认值?
- 有人对将 Auth.net CIM 凭据从一个系统转移到另一个系统有任何其他建议吗?
笔记:
- 我在沙箱中使用了我自己的 authorize.net API 登录 ID 和事务密钥,而不是使用生成这些令牌时使用的 API 登录 ID 和事务密钥。这可能是问题的一部分吗?
我已经为付款资料 ID 尝试过此操作,但效果不佳。
$customer->setData('authnetcim_payment_profile_id', $values[50]); $customer->save();