会话一直无法完成时

已放弃、已过期,以及停滞在进行中的会话,都意味着用户没有完成流程 - 本文介绍如何区分它们,以及值得修复的常见原因。

Short answer

已过期 = 用户从未打开过链接。已放弃 = 用户打开后中途离开了。 进行中 = 用户仍在流程之中。这三种状态都没有核验判定结果,也都不会 为从未运行过的步骤计费。

一个从未得出判定结果的会话,最终会停留在三种状态之一,它们的含义各不相同。

状态发生了什么该怎么做
已过期链接在被打开之前就已超时失效创建一个带有新链接的会话
已放弃用户已开始但未能在规定时间内完成提醒用户,或创建一个新会话
进行中用户此刻正走到一半无需处理 - 它并没有卡住

已过期和已放弃都是终态:它们之后都不会再变为已通过。

#进行中并不是卡住了

一个长时间停留在进行中的会话,几乎总是名副其实 - 用户打开了链接,但还没有完成。它背后没有任何队列,也没有什么需要人工释放的东西。等用户完成剩余步骤后,它会自行变化;如果用户始终没有完成,它会变为已放弃。

由此引出两件每周都被问到的事:

  • 您无法手动审核进行中的会话。 因为检查尚未全部运行,还没有可作出的判定。推进它的方法是联系用户,请其重新打开同一个链接并完成剩余步骤;链接在会话时间窗结束前一直有效。
  • 您也无法取消它。 未开始或进行中的会话没有"关闭"操作。它会在时间窗过期时自行结束,或者由您删除,而删除是永久性的,所以只有在您确实想让记录消失时才这样做。

#时间窗有多长

每个工作流设置未完成的会话保持打开的时长:从1小时到4周,未更改时为7天(工作流设置中的session_expiration_time,以秒为单位)。时间窗关闭后,从未打开过的会话变为已过期,打开过但未完成的会话变为已放弃。这些都是最终状态:用户需要新的会话,并且为同一用户创建新会话时绝不会复用已过期或已放弃的会话。

Didit 控制台中按状态筛选的核验记录列表
  1. 按状态筛选,将进行中与已放弃、已过期区分开来。
  2. 「状态」会告诉你用户是仍在继续,还是已经放弃了。
  3. 添加能显示用户停在哪一步的列。
未完成的会话应该靠筛选找到,而不是靠等待。

#用户放弃的常见原因(按通常发生的顺序)

证件步骤。 大多数流失都发生在这里。值得排查的常见原因:

  • 你的工作流不接受用户实际持有的证件类型,导致他们卡在证件选择环节。详见证件类型为何被拒绝
  • 流程要求上传证件背面,但用户持有的证件背面并没有所需数据。
  • 光线不佳时自动拍摄始终无法触发,用户因此放弃,而没有切换为手动上传。

摄像头步骤。 如果摄像头始终无法打开,原因几乎总是环境因素:

  • 链接是在另一个应用内置的浏览器中打开的(例如某个聊天应用自带的浏览器),该浏览器限制了摄像头访问。改用手机自带的浏览器打开链接即可解决。
  • 该网站此前被拒绝过摄像头权限,用户需要到浏览器设置中重新授权。
  • 摄像头已被另一个应用或标签页占用。在部分设备上,麦克风权限请求也可能阻塞摄像头。

语言。 如果流程使用的语言用户看不懂,他们就会离开。界面会自动检测浏览器语言,检测失败时回退到英语。如果你的用户所在市场浏览器语言设置不可靠,请在创建会话时明确指定语言。详见设置核验语言

流程长度。 每多一个步骤都会损耗转化率。在入驻流程中间插入一份包含二十个字段的问卷,是一个常见的放弃点 - 而且与证件步骤不同,这完全在你的掌控之中。

#找出用户在哪里流失

控制台中的分析功能会逐步展示转化漏斗,让你清楚看到究竟是哪一步流失了用户,而不必靠猜测。详见如何解读你的分析数据

在单个会话中,各项检查的结果会显示哪些步骤已经完成 - 最后一个已完成的步骤,就是用户停下的位置。

#提醒用户

如果你在创建会话时传入了联系方式,可以向用户发送提醒,而不必重新开始。只有当原会话从未被打开就已过期,或者确实已经过时时,创建新会话才是正确的做法。

#这会让你花费多少

从未运行过的步骤不产生任何费用。计费按已完成的功能计算,因此一个已放弃的会话,只会为用户离开前实际完成的功能计费。一个从未被打开就过期的会话则完全不产生任何费用。

#如果会话已完成,但你这边从未收到通知

这是另一个不同的问题,而且比看起来更常见:核验已经完成,控制台也显示了最终状态,但你的后端从未收到更新通知。这是 webhook 送达问题,而不是会话被放弃。详见webhook 一直没有送达时