stripe-payments - 如何处理不完整的条带连接帐户入职?
问题描述
我追求处理不完整的条带连接帐户入职的最佳实践。
当入职顺利时,一切都很简单。但是到处都有微妙的边缘情况,这导致账户值的很多排列requirements
这些包括
current_deadline
currently_due
disabled_reason
errors
eventually_due
past_due
pending_verification
这会产生很多复杂性。
我需要一个简单的方法来:
- 确定连接的用户是否需要被通知某些事情(即他们需要提供更多信息),以及
- 告诉他们什么。
我目前的策略是检查是否errors
为空,如果不是,只需将它们与管理用户条带帐户的链接一起显示,以便他们解决错误。
但我担心这种策略会遗漏一些事情(也许是可以在成为错误之前解决的小问题)。
TL;DR我怀疑大多数用户都会毫无问题地加入,但对于少数确实有问题的人,我想确保应用程序通知他们他们需要解决这些问题。做这个的最好方式是什么?(使用中的信息requirements
或其他信息)
解决方案
使用 API 手动处理身份验证时,检查是否需要通知已连接用户以提供更多信息的一种简单方法是查看用户帐户对象的charges_enabled
和payouts_enabled
属性。如果这两个属性中的任何一个是,false
那么您可能需要联系已连接的用户以获取更多信息。
在连接用户的费用和支付被禁用的情况下,您可以使用需求哈希上的disabled_reason属性来了解费用和/或支付被禁用的原因。可能的禁用原因都记录在这里,但我还是会列出它们:
action_required.requested_capabilities
您需要为连接的帐户请求功能。有关详细信息,请参阅请求和取消请求功能。requirements.past_due
需要额外的验证信息才能在此帐户上启用付款或收费功能。requirements.pending_verification
Stripe 目前正在验证关联账户的信息。rejected.fraud
帐户因涉嫌欺诈或非法活动而被拒绝。rejected.terms_of_service
帐户因涉嫌违反服务条款而被拒绝。rejected.listed
帐户被拒绝,因为它在第三方被禁止的个人或公司名单上(例如金融服务提供商或政府)。rejected.other
帐户因其他原因被拒绝。listed
帐户可能在被禁止的人员或公司名单上(Stripe 将进行调查并适当地拒绝或恢复该帐户)。under_review
Stripe 正在审核帐户。other
帐户未被拒绝,但在审核时因其他原因被禁用。
使用disabled_reason
,您可以评估是否需要通知用户请求更多信息(即requirements.past_due
),是否需要出于其他原因(例如rejected.listed
)通知他们,或者您是否需要对用户的 Stripe 进行编程更改帐户(例如action_required.requested_capabilities
)。
推荐阅读
- azure-devops - Azure DevOps - dotnet 和 js 的测试覆盖率
- pandas - 运行 python3 main.py 文件时出错
- asp.net-core-webapi - 输入不包含任何 JSON 令牌。期望输入以 LIVE Web API 上的有效 JSON 令牌开始,但在本地工作正常
- google-apps-script - 导出PDF时有没有办法强制分页?
- excel - 需要设置工作表以便代码工作,无论我在哪个工作表上
- javascript - Angular - 表单内的组件 - formControlName 必须与父级一起使用
- mongodb - GitHub 操作无法连接到 MongoDB 服务
- python-3.x - 将项目列表转换为带空格的字符串
- python - 如何从json获取产品价格
- python - 字符总和为 1000