Skip to main content
When your KYC-verified Sumvin user opens a Meld widget for a ramp or bank-linking flow, they do not re-verify. Sumvin shares the user’s existing KYC outcome with Meld on their behalf, so the widget takes them straight to the destination flow — payment, institution select, or payout confirmation. For the trust model behind why this reuse is acceptable, see KYC and attestation.

What you observe

There is nothing explicit to opt in to. The passthrough is automatic on any Meld-touching flow for a KYC-verified user. As the partner, you see:
  • The widget opens directly on the destination step — payment capture, institution picker, or payout confirmation — rather than on a document-upload screen.
  • Ramp sessions against a KYC-verified user return 201 Created from POST /v0/ramp/sessions. Against an unverified user, the call returns 403 Forbidden with error code KYC_NOT_VERIFIED.
If the user has not completed Sumvin KYC, route them through the KYC guide before retrying. If you send an unverified user into a Meld widget through a flow that does not gate on KYC, Meld will collect verification in-widget — which works, but means the user ends up verified with Meld separately from Sumvin, without the reuse benefit.

One user, one Meld identity

Each Sumvin user maps to a single Meld identity for the lifetime of their account. Re-entering a Meld flow — another ramp session, a second bank-linking attempt, a different widget — always resolves to the same identity, and the verified state carries across all of them.

Failure modes

SymptomCauseResolution
Meld widget asks the user for KYC documentsThe user has not completed Sumvin KYC.Route the user through the KYC guide; retry the Meld flow once their KYC is approved.
POST /v0/ramp/sessions returns 403 Forbidden with KYC_NOT_VERIFIEDSame as above — no verified KYC on the Sumvin side.Check GET /v0/kyc/status, then route through KYC.
Ramp session creation returns 502 Bad GatewayUpstream provider rejected the request. Often transient.Retry with a fresh quote; if it persists, check the reference for the error code.