Flow Studio
Receive DIDComm Message
The DIDCommReceiveTrigger — how inbound DIDComm messages start or resume workflows, message type routing, and the DID endpoint configuration.
How It Works
BizFirstGO registers a DIDComm messaging endpoint (accessible via the platform's DID document). Inbound encrypted messages are received, decrypted, and dispatched to the matching workflow trigger based on the message type.
Trigger Configuration
{
"triggerType": "DIDCommReceive",
"config": {
"acceptedMessageTypes": [
"https://didcomm.org/present-proof/3.0/presentation",
"https://didcomm.org/basic-message/2.0/message"
],
"recipientDidCredentialId": 88,
"filterFromDid": null,
"signatureRequired": true
}
}
Trigger Payload ($json)
{
"messageId": "urn:uuid:abc123",
"fromDid": "did:web:partner.example.com",
"toDid": "did:web:acme.bizfirstai.com",
"messageType": "https://didcomm.org/present-proof/3.0/presentation",
"body": {
"presentations~attach": [
{ "data": { "base64": "..." } }
]
},
"createdTime": "2026-05-25T10:00:00Z",
"authenticated": true
}
Accessing Sender Identity
// Sender DID (authenticated):
$json.fromDid
// Message body fields:
$json.body.comment
$json.body["presentations~attach"][0].data.base64
// Whether message was cryptographically authenticated:
$json.authenticated // true = authcrypt; false = anoncrypt
Authentication verification: Always check
$json.authenticated === true before trusting sender identity. Anoncrypt messages (authenticated: false) do not prove sender identity — anyone can send them. Route unauthenticated messages to a restricted processing path.