python-3.x - 如何使用授权 API 设置部分身份验证
问题描述
好的,我正在通过 Authorize.net API 设置部分付款,以便启用多张卡来支付单个余额/费用。
我假设他们的部分身份验证功能涵盖了我的用例,但在测试中,我可以在这里使用 API 实时控制台向您展示一个问题:https ://developer.authorize.net/api/reference/index.html#支付-交易-收费-信用卡
转到上面的链接并使用我在下面编辑的请求授权部分付款,当你按下提交时你会注意到你得到一个splitTenderId
:
{
"createTransactionRequest": {
"merchantAuthentication": {
"name": "5KP3u95bQpv",
"transactionKey": "346HZ32z3fP4hTG2"
},
"refId": "123456",
"transactionRequest": {
"transactionType": "authCaptureTransaction",
"amount": "462.25",
"payment": {
"creditCard": {
"cardNumber": "5424000000000015",
"expirationDate": "2020-12",
"cardCode": "999"
}
},
"lineItems": {
"lineItem": {
"itemId": "1",
"name": "vase",
"description": "Cannes logo",
"quantity": "18",
"unitPrice": "45.00"
}
},
"tax": {
"amount": "4.26",
"name": "level2 tax name",
"description": "level2 tax"
},
"duty": {
"amount": "8.55",
"name": "duty name",
"description": "duty description"
},
"shipping": {
"amount": "4.26",
"name": "level2 tax name",
"description": "level2 tax"
},
"poNumber": "456654",
"customer": {
"id": "99999456654"
},
"billTo": {
"firstName": "Ellen",
"lastName": "Johnson",
"company": "Souveniropolis",
"address": "14 Main Street",
"city": "Pecan Springs",
"state": "TX",
"zip": "44628",
"country": "USA"
},
"shipTo": {
"firstName": "China",
"lastName": "Bayles",
"company": "Thyme for Tea",
"address": "12 Main Street",
"city": "Pecan Springs",
"state": "TX",
"zip": "44628",
"country": "USA"
},
"customerIP": "192.168.1.1",
"transactionSettings": {
"setting": [
{
"settingName": "emailCustomer",
"settingValue": "true"
}, {
"settingName": "allowPartialAuth",
"settingValue": "true"
},
]
},
"userFields": {
"userField": [
{
"name": "MerchantDefinedFieldName1",
"value": "MerchantDefinedFieldValue1"
},
{
"name": "favorite_color",
"value": "blue"
}
]
}
}
}
}
这只是成功的,因为数量是462.25
文档所说的用于测试的数量,如果我使用任何其他(实际)数量,splitTenderId
则不存在。
这是一个新的示例请求,您可以在上面的链接上再次发布:
{
"createTransactionRequest": {
"merchantAuthentication": {
"name": "5KP3u95bQpv",
"transactionKey": "346HZ32z3fP4hTG2"
},
"refId": "123456",
"transactionRequest": {
"transactionType": "authCaptureTransaction",
"amount": "462",
"payment": {
"creditCard": {
"cardNumber": "5424000000000015",
"expirationDate": "2020-12",
"cardCode": "999"
}
},
"lineItems": {
"lineItem": {
"itemId": "1",
"name": "vase",
"description": "Cannes logo",
"quantity": "18",
"unitPrice": "45.00"
}
},
"tax": {
"amount": "4.26",
"name": "level2 tax name",
"description": "level2 tax"
},
"duty": {
"amount": "8.55",
"name": "duty name",
"description": "duty description"
},
"shipping": {
"amount": "4.26",
"name": "level2 tax name",
"description": "level2 tax"
},
"poNumber": "456654",
"customer": {
"id": "99999456654"
},
"billTo": {
"firstName": "Ellen",
"lastName": "Johnson",
"company": "Souveniropolis",
"address": "14 Main Street",
"city": "Pecan Springs",
"state": "TX",
"zip": "44628",
"country": "USA"
},
"shipTo": {
"firstName": "China",
"lastName": "Bayles",
"company": "Thyme for Tea",
"address": "12 Main Street",
"city": "Pecan Springs",
"state": "TX",
"zip": "44628",
"country": "USA"
},
"customerIP": "192.168.1.1",
"transactionSettings": {
"setting": [
{
"settingName": "emailCustomer",
"settingValue": "true"
}, {
"settingName": "allowPartialAuth",
"settingValue": "true"
},
]
},
"userFields": {
"userField": [
{
"name": "MerchantDefinedFieldName1",
"value": "MerchantDefinedFieldValue1"
},
{
"name": "favorite_color",
"value": "blue"
}
]
}
}
}
}
并且462
输入的金额不再是部分身份验证付款,我不再获得splitTenderId
.
有人可以帮我弄清楚发生了什么吗?
解决方案
推荐阅读
- azure - Azure 可用性集
- javascript - .find() 多重选择器无法添加道具
- javascript - 无法使用 setState 或 forceUpdate 重新渲染/刷新组件
- jpa - Spring Data 如何使用 org.springframework.data.domain.ExampleMatcher 实现 not/not in/negate
- javascript - JS 地理位置无法正常运行
- node.js - Shelljs exec 在 git cherry-pick 上失败
- javascript - 单击时放大 SVG 并将单击的元素居中在视口中(d3.js)
- laravel - 在 laravel 中扩展的模型中定义主键的别名
- scala - java.lang.RuntimeException:com.datastax.bdp.fs.model.NoSuchFileException:找不到文件:/tmp/hive/
- django - 上下文处理器不适用于 Django 中的 Jinja2