Webhooks
kyc_session.completed
Fired when a KYC session is successfully completed
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Fired when a KYC session is successfully completed
kyc_session.completed{
"kycSessionId": "kycs_abc123",
"externalUserId": "your-user-id-123",
"status": "completed"
}
| Field | Type | Description |
|---|---|---|
kycSessionId | string | KYC session ID |
externalUserId | string | Your external user ID linked to this session |
status | string | Always "completed" for this event |
| Status code | Meaning |
|---|---|
200 | Event received and processed |
202 | Event received, will process asynchronously |
| Any non-2xx | Delivery failed — will retry |
app.post("/webhooks/contro", (req, res) => {
const eventType = req.headers["x-contro-event"];
if (eventType === "kyc_session.completed") {
const { kycSessionId, externalUserId } = req.body;
// The user passed KYC — you can now issue cards for them
}
res.status(200).send("OK");
});