我正在尝试使用数量0进行authOnlyTransaction以满足万事达卡ASI的要求。 事务失败,事务错误代码为290(缺少一个或多个或必填字段无效。),结果代码为“ ERROR”,代码为“ E00027”
如果我将金额更改为非零值,则可以成功交易。
环境:Sanbox
请求数据结构:
{
"merchantAuthentication": {
"name": "-removed-",
"transactionKey": "-removed-",
"sessionToken": null,
"password": null,
"impersonationAuthentication": null,
"fingerPrint": null,
"clientKey": null,
"accessToken": null,
"mobileDeviceId": null
},
"clientId": null,
"refId": "12345",
"transactionRequest": {
"transactionType": "authOnlyTransaction",
"amount": 0.00,
"currencyCode": null,
"payment": {
"creditCard": {
"cardNumber": "4242424242424242",
"expirationDate": "0822",
"cardCode": "123",
"isPaymentToken": null,
"cryptogram": null,
"tokenRequestorName": null,
"tokenRequestorId": null,
"tokenRequestorEci": null
},
"bankAccount": null,
"trackData": null,
"encryptedTrackData": null,
"payPal": null,
"opaqueData": null,
"emv": null,
"dataSource": null
},
"profile": null,
"solution": null,
"callId": null,
"terminalNumber": null,
"authCode": null,
"refTransId": null,
"splitTenderId": null,
"order": null,
"lineItems": null,
"tax": null,
"duty": null,
"shipping": null,
"taxExempt": null,
"poNumber": null,
"customer": null,
"billTo": null,
"shipTo": null,
"customerIP": null,
"cardholderAuthentication": null,
"retail": null,
"employeeId": null,
"transactionSettings": null,
"userFields": null,
"surcharge": null,
"merchantDescriptor": null,
"subMerchant": null,
"tip": null,
"processingOptions": null,
"subsequentAuthInformation": null,
"otherTax": null,
"shipFrom": null
}
}
响应:
{
"refId": "12345",
"messages": {
"resultCode": "ERROR",
"message": [
{
"code": "E00027",
"text": "The transaction was unsuccessful."
}
]
},
"sessionToken": null,
"transactionResponse": {
"responseCode": "3",
"rawResponseCode": null,
"authCode": "",
"avsResultCode": "P",
"cvvResultCode": "",
"cavvResultCode": "",
"transId": "0",
"refTransID": "",
"transHash": "0361773D30A57757263264653B9B5EAA",
"testRequest": "0",
"accountNumber": "XXXX4242",
"entryMode": null,
"accountType": "Visa",
"splitTenderId": null,
"prePaidCard": null,
"messages": null,
"errors": {
"error": [
{
"errorCode": "290",
"errorText": "There is one or more missing or invalid required fields."
}
]
},
"splitTenderPayments": null,
"userFields": null,
"shipTo": null,
"secureAcceptance": null,
"emvResponse": null,
"transHashSha2": "9BE4002C112F9674B30F6202138EE717C23383A7B422912D27EDA6C4ACB0EFBF5764FDAF9B67A5F6AF33DCEFD857581A22DD12BFD1961FE17465AF7412173C0C",
"profile": null,
"networkTransId": null
},
"profileResponse": null
}