What you’ll build
- A webhook handler that fires when your KYC provider confirms a user.
- A Partner JWT signed with the
issuescope targeting that user’s email. - An Issue on Behalf API call that queues the credential for on-chain issuance.
- A status poller that confirms the credential is
ONCHAIN.
Prerequisites
- Issue on Behalf enabled for your partner account
- A published issuance program with a schema that includes KYC fields (e.g.
kycVerified,kycLevel,verifiedAt) - Partner JWT signing configured (RS256 or ES256)
Step 1: Handle the KYC webhook
When your KYC provider (Sumsub, Onfido, Jumio, etc.) sends a verification-complete callback, extract the user email and verification result.Step 2: Sign a Partner JWT
Generate a short-lived JWT withscope: "issue" and the target user’s email.
Step 3: Call Issue on Behalf
Step 4: Poll for on-chain confirmation
Issuance is asynchronous. Poll the status endpoint untilvcStatus is ONCHAIN.
Full flow
Next steps
- Issue on Behalf API reference for full endpoint details
- Schema Creation to define your KYC credential schema
- Credential Verification to let verifiers check the credential