处理付款单错误
此页介绍在提交付款单后您可能收到的可能的错误。
“gatewayFormResponse”字段将包含提交表单成功或失败的总体指示。 强烈建议首先检查此字段,因为它可以指示各个字段是否包含错误或者是否发生了更普遍的错误。
表单总响应
表单总响应将在“gatewayFormResponse”字段中返回。
它将包含下列值之一:
| 值 | 说明 | 响应操作 |
|---|---|---|
| 0~OK | 指示表单有效 — 当未发现表单错误时返回,指示已成功收集卡详细信息,且这些信息可用于交易。 | 无需处理错误 — 继续执行交易。 |
| 2~Session identifier invalid or closed for updates | 指示会话无效 — 在会话已过期、结束以进行更新或无效时返回。 | 创建一个新的会话并向付款人重新显示付款单以提供卡详细信息。 |
| 3~Field Errors | 指示一个或多个字段存在错误 — 有任何表单字段验证失败时返回。 出错字段将包含特定的错误代码。 有关详细信息,请参阅下面的 字段错误 部分。 | 解析各个字段发现具体错误。 请参阅下面的更多细节。 |
| 4~System Error | 指示系统错误 — 当支付网关出错或发生其他不可恢复的失败时返回。 | 不可恢复 — 请联系 Mastercard 更正问题。 |
字段错误
如果 'gatewayFormResponse' 字段包含值 '3~Field Errors' 将仅呈现字段错误。
错误字段的返回值将具有以下格式:
- E~V 其中 E 是错误代码,V 是提交的值。
其中 E 为下列值之一:
| 值 | 说明 | 响应操作 |
|---|---|---|
| 1~ | 指示未呈现强制字段 — 当字段值为空时返回。 如果提交的表单中不包含该字段,也会发生这种情况。 | 根据错误字段重新显示包含错误的付款单以让付款人更正错误并重新提交。 |
| 2~submittedFieldValue | 指示字段值无效 — 当根据 Hosted Payment Session 字段验证规则字段值被视为无效时返回。 | 根据错误字段重新显示包含错误的付款单以让付款人更正错误并重新提交。 |
有效字段不包含错误代码,只包含返回的值(或其隐藏变体)。