Partners
KYC for end users
Redirect, iframe, and direct-link flows partners can offer.
KYC for end users
Swaps require on-chain compliance (ComplianceRegistry.assert_user_compliant). Partners must ensure users are verified before calling swap.
Check status
GET /api/sdk/kyc/status/{address}{ "compliant": false, "needsKyc": true, "status": "Unknown" }Start a session
POST /api/sdk/kyc/session
Content-Type: application/json
{ "address": "G...", "providerKey": "didit", "mode": "iframe" }Response includes:
| Field | Use |
|---|---|
startUrl / directLink | Hosted provider flow (new tab) |
embedUrl | Embed Uruk /kyc?embed=1 in an iframe |
callbackUrl | Provider return URL |
Modes
- Redirect:
window.open(startUrl)or navigate the user - Iframe:
<iframe src={embedUrl} />(Uruk chrome is hidden inside iframes) - Direct link: share
startUrlin email/SMS
After approval, the Didit webhook attests on-chain. Poll status until compliant === true, then swap.
All partners' users go through the same ComplianceRegistry check. There is no partner KYC bypass.