authorize.net - Authorize.net 未更新现有 CIM 记录上的帐单地址
问题描述
我们正在使用 XML 集成来 Authorize.net CIM
对于我们软件的其他支付网关集成,要更新卡号或帐单地址,用户只需删除存储的令牌并发送新的授权或捕获交易。然后生成一个新的令牌。
Authorize.net 似乎正在根据卡号匹配现有的客户资料,并返回与以前相同的令牌号。
如果我们想在不更改卡号的情况下更新帐单地址,则新的帐单地址不会通过我们的常规电话保存到客户资料中。然后 AVS 设置会阻止新事务通过。
在不更改其他信息的情况下更新现有客户资料上的帐单地址时是否应进行特定调用?
解决方案
您将使用updateCustomerPaymentProfileRequest
API 端点来更新付款资料:
{
"updateCustomerPaymentProfileRequest":{
"merchantAuthentication":{
"name":"",
"transactionKey":""
},
"customerProfileId":"12345678",
"paymentProfile":{
"billTo":{
"firstName":"John",
"lastName":"Doe",
"company":"",
"address":"123 Main St.",
"city":"Bellevue",
"state":"WA",
"zip":"98004",
"country":"USA",
"phoneNumber":"800-555-1234",
"faxNumber":"800-555-1234"
},
"customerPaymentProfileId":"2345678"
}
}
}
推荐阅读
- ios - 为什么 UINavigationBarAppearance 有一个 init(idiom:) 初始化程序?
- android - Android 双向数据绑定仅以一种方式工作
- r - R Data.Table - 按 ROW 应用/移位处理(保留或动态移位处理)
- python - Matplotlib 绘图未在 python 脚本中使用 plt.ion() 显示,但在 python shell 中工作
- python - `UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte`
- mesh - pygalmesh中的自定义水平集功能
- graph - 如何用点绘制 1/x 函数?
- javascript - 如何从 JS 将参数发送到我的控制器 ASP?
- javascript - 选择随机文件,然后将其删除
- firebase - Electron 将本地文件上传到 Firebase 存储