Onerway
POST

Ethoca 预警通知

回调地址
该回调通知用于接收 Ethoca 预警,并通过 ethocaId 和 transactionId 将每条预警关联回原交易。

回调报文字段

id
Onerway 预警通知记录 ID,用于定位这条预警通知记录。
约束
规则
该值为大整数;JavaScript 系统中建议按字符串或 64-bit integer 保存,避免精度丢失。
merchantNo
Onerway 分配的商户号,标识接收该预警的商户账户。
约束
规则
通知中可能以 JSON number 形式返回该值;建议按字符串归一化存储和比对,以便与其他 Onerway API 口径一致。
ethocaId
Ethoca 预警唯一标识;后续调用 Ethoca 预警处理接口提交处理结果时使用该值。
alertType
预警类型,表示本次通知属于客户争议、欺诈预警还是拒付预警。
可选值
CustomerDispute
客户争议预警。
FraudAlert
欺诈预警。
ChargebackAlert
拒付预警。
alertTime
预警生成时间,格式为 yyyy-MM-dd HH:mm:ss。
alertAge
预警从生成到当前通知产生时已经过的时间;商户可据此判断预警已发生多久和处置优先级。
约束
规则
单位为小时。
txnTime
原交易时间,格式为 yyyy-MM-dd HH:mm:ss。
txnAmount
原交易金额。
txnCurrency
原交易币种,符合 ISO 4217 标准。
resellerSubMerchantId
代理运营商的子商户标识。
billDesc
商户账单描述,用于将预警匹配到持卡人账单上展示的商户信息。
arn
收单行参考号(ARN),可用于对账、预警核对与争议处理。
submitOutcomeStatus
预警处理结果提交状态,表示该预警是否仍等待处理,或处理结果是否已被接收;不要把本字段等同于最终 outcome。
可选值
PENDING_OUTCOME
待处理;该预警仍等待处理结果提交。
OUTCOME_RECEIVED
已处理;该预警的处理结果已被接收。
outcome
商户对该预警的处理结果。
可选值
stopped
订单已停止。
partially_stopped
订单部分停止。
previously_cancelled
交易已被取消。
outcomeUpdatedTime
预警处理状态更新时间,格式为 yyyy-MM-dd HH:mm:ss。
refundStatus
与该预警处理结果对应的退款状态。
可选值
refunded
已完成退款。
not refunded
未进行退款。
not settled
退款处理中。
createOpr
记录元数据:创建该预警记录的账号或系统标识。不要使用该字段判断预警状态或需要执行的业务动作。
createTime
该预警记录在 Onerway 创建的时间,格式为 yyyy-MM-dd HH:mm:ss。
updateOpr
记录元数据:最近一次更新该预警记录的账号或系统标识。不要使用该字段判断预警状态或需要执行的业务动作。
updateTime
该预警记录在 Onerway 最近一次更新的时间,格式为 yyyy-MM-dd HH:mm:ss。
issuer
发卡机构标识;具体取值格式由预警网络返回。
cardNumber
预警关联的交易卡号信息。
约束
规则
若实际返回完整 PAN,商户应按 PCI DSS 要求处理,不应在日志、工单或普通数据库中明文保存。
ethocaMerchantId
Ethoca 商户标识,用于在 Ethoca 预警网络中匹配商户与账单描述。
mcc
商户类别代码 MCC,通常为四位数字,用于表示商户经营类别。
transactionType
原交易类型或交易场景。
示例:
initiatedBy
预警发起方,通常为卡组织、发卡机构或相关预警网络标识。
liability
预警或争议相关责任标识。该字段用于辅助理解预警责任信息,不应替代商户对 alertType、outcome 与退款状态的处理判断。
authCode
原交易授权码,通常由发卡行或收单网络在授权成功后返回。
integratorMemberId
集成商会员编号,用于标识预警网络侧的集成成员关系。
transactionId
原交易在 Onerway 侧的交易号,用于关联交易查询、退款、拒付和预警处理记录。
chargebackReasonCode
拒付或争议原因代码,由卡组织或预警网络提供。
chargebackAmount
预警关联的拒付或争议金额,可能小于或等于原交易金额。
chargebackCurrency
拒付或争议金额币种,符合 ISO 4217 标准。

回调示例

{
  "id": 1234567890,
  "merchantNo": "replace_with_merchant_no",
  "ethocaId": "replace_with_ethoca_id",
  "alertType": "ChargebackAlert",
  "alertTime": "2025-04-14 14:26:21",
  "alertAge": 12,
  "txnTime": "2025-04-13 09:15:00",
  "txnAmount": 100,
  "txnCurrency": "USD",
  "resellerSubMerchantId": null,
  "billDesc": "DEMO STORE",
  "arn": "replace_with_acquirer_reference_number",
  "submitOutcomeStatus": "PENDING_OUTCOME",
  "outcome": null,
  "outcomeUpdatedTime": null,
  "refundStatus": null,
  "createOpr": "SYSTEM",
  "createTime": "2025-04-14 14:26:21",
  "updateOpr": "SYSTEM",
  "updateTime": "2025-04-14 14:26:21",
  "issuer": "replace_with_issuer_identifier",
  "cardNumber": "replace_with_card_number",
  "ethocaMerchantId": "replace_with_ethoca_merchant_id",
  "mcc": "5812",
  "transactionType": "eCommerce",
  "initiatedBy": "replace_with_alert_initiator",
  "liability": "no",
  "authCode": "replace_with_authorization_code",
  "integratorMemberId": "replace_with_integrator_member_id",
  "transactionId": "replace_with_transaction_id",
  "chargebackReasonCode": "4837",
  "chargebackAmount": 100,
  "chargebackCurrency": "USD"
}

应答说明

成功接收并受理 webhook 后返回 HTTP 200。

应答正文示例

无应答正文。