Flow Studio
Request Verifiable Credential
The VCRequestNode — sending a presentation request to a DID holder and suspending the workflow until the holder presents the requested credential.
Node Configuration
{
"nodeType": "VCRequest",
"name": "requestKybCredential",
"config": {
"holderDid": "$output.resolvePartner.did",
"credentialType": "KYBVerificationCredential",
"presentationDefinitionId": "kyb-full-verification-v1",
"senderDidCredentialId": 88,
"timeoutMinutes": 1440,
"onTimeout": "error"
}
}
How It Works
The VCRequestNode uses HIL-style suspension:
- Sends a DIDComm
present-proof/request-presentationmessage to the holder's DID - Suspends the current execution and records a correlation ID
- When the holder responds with a
present-proof/presentationmessage, the DIDComm receive endpoint matches the correlation ID and resumes the execution - The presented credential is passed as node output
Node Output
{
"holderDid": "did:web:partner.example.com",
"credentialType": "KYBVerificationCredential",
"presentation": {
"type": ["VerifiablePresentation"],
"verifiableCredential": [
{
"type": ["VerifiableCredential", "KYBVerificationCredential"],
"issuer": "did:web:kyb-registry.example.com",
"issuanceDate": "2026-01-15T00:00:00Z",
"expirationDate": "2027-01-15T00:00:00Z",
"credentialSubject": {
"id": "did:web:partner.example.com",
"companyName": "Acme Corp Ltd",
"registrationNumber": "12345678",
"country": "GB",
"verificationStatus": "verified"
}
}
]
},
"receivedAt": "2026-05-25T11:30:00Z"
}
Timeout handling: Set
timeoutMinutes to a realistic window (1440 = 24 hours is common for partner onboarding flows). If the holder doesn't respond in time, the timeout port routes to a "follow-up" path — send a reminder DIDComm message and restart the wait.