输入网关返回的那个字母,再选它出自哪一项核验。你会看到哪一部分匹配了、这算不匹配还是只是没有答案,以及同一个字母在另一套里本来会是什么意思。
发卡行拿持卡人填的账单地址和自己留存的地址做比对,返回一个字母,说明哪些部分对上了。
要注意的是它不是「是」或「否」。大部分字母描述的是部分结果,而其中好几个的意思是发卡行压根没核对 —— 那和不匹配不是一回事,尽管在报表里看起来很像。
被比对的是两样东西:地址行和邮编。每一样都可能匹配、不匹配、或者压根没核对,所以答案是一个字母而不是一个开关。把这个字母当成通过/不通过来读,恰好丢掉了你想问的那部分信息。
| 码值 | 含义 | 该怎么读 |
|---|---|---|
X | 街道与邮编都匹配 | 完全匹配 |
Y | 街道与邮编都匹配 | 完全匹配 |
D | 街道与邮编都匹配 | 完全匹配 |
M | 街道与邮编都匹配 | 完全匹配 |
F | 街道与邮编都匹配 | 完全匹配 |
A | 街道匹配,邮编不匹配 | 部分匹配 |
B | 街道匹配,邮编未核对 | 部分匹配 |
P | 邮编匹配,街道未核对 | 部分匹配 |
W | 邮编匹配,街道不匹配 | 部分匹配 |
Z | 邮编匹配,街道不匹配 | 部分匹配 |
N | 两者都不匹配 | 不匹配 |
C | 两者都未核对 | 没有答案 |
E | 本笔交易不适用 AVS | 没有答案 |
G | 发卡行未参与 | 没有答案 |
I | 地址未核验 | 没有答案 |
R | 请重试 | 没有答案 |
S | 发卡行不支持 AVS | 没有答案 |
U | 没有地址可比 | 没有答案 |
有五个字母 —— X、Y、D、M、F —— 都表示「两者都匹配」。它们的区别只在邮编是什么格式、发卡行在哪个地区,所以同一个真实结果在两张卡上可能返回不同的字母。
C、E、G、I、R、S、U 描述的都是一种缺失:发卡行不提供这项核验、没有地址可比、当时不可用,或者这种交易类型不做 AVS。它们没有一个是在说持卡人填错了地址。
这件事要紧,是因为常见的那条规则 —— 「只有完全匹配才放行」 —— 把它们和 N 同等对待。在有境外持卡人的组合里,这会悄悄拒掉相当一部分正常订单,而且它表现出来的是转化率问题、不是风控规则问题,所以可以摆在那里很久没人发现。
该写进规则里的区分是三种,不是两种:匹配、不匹配、没有答案。只有中间那种算证据。
安全码核验没有部分状态 —— 要么对上要么没对上。但它有同一个坑:五个结果里有三个的意思是这项核验没有发生。
| 码值 | 含义 | 该怎么读 |
|---|---|---|
M | 匹配 | 完全匹配 |
N | 不匹配 | 不匹配 |
P | 未处理 | 没有答案 |
S | 商户声明卡上没有安全码 | 没有答案 |
U | 发卡行无法核验 | 没有答案 |
要留神的是 P,因为它在两套里的意思正好相反。在 AVS 里 P 是部分匹配 —— 邮编对上了;在 CVV2 里它表示未处理。两项核验共用一张对照表,就会把其中一个读成另一个。
还有一处要分开:这里说的是卡上印的那串码,它既不是磁条里编的那个值,也不是芯片里的那个。那些是故意做成不一样的 —— 见CVV、CVC 与它们背后的码。
按街道逐行比对地址,主要是美国和英国的做法。其它地区不少发卡行并没有留存可供比对的结构化地址,所以只核对邮编,或者干脆不核对。
所以这些市场之外发行的卡返回「邮编匹配、街道未核对」,是本来就该有的结果,不是一次部分失败。拿一套按美国情况设计的规则去套这部分流量,会产生一串和地理位置相关、而不是和风险相关的拒绝。
AVS 的请求数据和结果都在授权报文里,但 ISO 8583 没有为它定一个统一的位置。Visa 那边结果从 DE44(附加响应数据)回来;其它卡组织放在各自的私有子域里。
那些确切位置出自各卡组织自己需要授权才能取得的接口规范,不是公开标准,所以本页不写。字母本身在各家收单机构和网关的公开文档里说法一致,值得写下来;偏移不是我们能转载的东西。那部分请以收单机构给你的规范为准。