Skip to content

plan-kyc-api-design#700

Draft
akanter wants to merge 1 commit into
mainfrom
07-18-kyc-api-design
Draft

plan-kyc-api-design#700
akanter wants to merge 1 commit into
mainfrom
07-18-kyc-api-design

Conversation

@akanter

@akanter akanter commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Summary

Design sketch for the API-based KYC flow — an extension of Victor's existing KYB verification surface rather than a new resource. Requested by @aaron in Slack.

Core observation: the direct-API KYC flow already technically works today (POST /customers INDIVIDUAL → POST /documentsPOST /verifications returns structured errors[]). What's missing is the polish around it — the individual-customer schema is too thin to hold identity numbers, requirements are only discoverable reactively, country/nationality nuances aren't first-class, and there's no clean bulk-JSON migration path.

Approach

Keep KYC on the same Verification lifecycle as KYB. All extensions are additive — no breaking changes to Customer, Verification, or VerificationError. Explicitly reject per-country Address polymorphism in favor of a universal wire format plus per-country validation rules surfaced through a new GET /kyc/requirements discovery endpoint and existing VerificationErrors.

Changes: 1 doc

  • docs/plans/2026-07-18-kyc-api-design.md — design proposal covering:
    • Fill IndividualCustomerFields gaps (identification[], residential + mailing address, employer/source-of-funds)
    • Add severity (BLOCKING / EVENTUALLY_DUE / PENDING_REVIEW) + code + machine-readable constraint on VerificationError
    • New GET /kyc/requirements?customerType&region&nationality&currencies for upfront discovery
    • Universal Address + optional localizedAddress map for JP/CN/KR dual-script
    • New POST /customers/bulk (JSON) for programmatic migration, with per-row verificationErrors[]
    • New inline POST /verifications that atomically creates customer + docs + submits, for one-shot UX
    • Rollout order and 8 explicit open questions for review

The doc is a sketch, not a spec — inline comments welcome on individual sections. Nothing has been implemented; nothing under openapi/ has been touched.

Reply with a comment (e.g. LGTM) to approve — emoji reactions don't notify me here.

@vercel

vercel Bot commented Jul 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Actions Updated (UTC)
grid-flow-builder Ignored Ignored Preview Jul 18, 2026 12:41am
grid-wallet-demo Ignored Ignored Preview Jul 18, 2026 12:41am

Request Review

akanter commented Jul 18, 2026

Copy link
Copy Markdown
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant