Skip to main content

Process orchestration

Assayra separates assurance policy from business-process coordination.

EngineOwnsCannot do
Verification workflowApplicant steps, mandatory evidence, screening, risk and terminal outcomeCoordinate arbitrary staff/SLA processes
BPMN processHuman tasks, timers, escalations and bounded connectors around an applicationBypass evidence, workflow or maker-checker approval

Definition lifecycle

POST /v1/processes/definitions
POST /v1/processes/definitions/{id}/deploy
POST /v1/processes/definitions/{id}/fork
POST /v1/processes/definitions/{id}/retire

Assayra validates a safe BPMN 2.0 subset. Scripts, executable classes, arbitrary expressions, entity declarations and unsupported elements are rejected. Deployed versions are immutable.

Start an application-linked process

{
"definitionId": "procdef_…",
"applicationId": "app_…",
"businessKey": "review:customer_845901",
"variables": {
"queue": "enhanced-review",
"priority": 70
}
}

Definitions marked requiresApplicationLink reject unlinked starts. Only bounded, non-PII variables cross into Flowable.

Event bindings

Bind a deployed definition to an exact tenant workflow and trigger:

{
"workflowId": "wf_…",
"definitionId": "procdef_…",
"trigger": "review_required",
"conditions": {
"countryCodes": ["SG", "AU"],
"minimumRiskScore": 55,
"maximumRiskScore": 89,
"deliveryChannels": ["hosted", "web"]
}
}

Supported triggers include application creation, submission, review, approval and rejection. Bindings can be paused or retired without deleting history.

Delivery guarantees

Process automation uses durable dispatch records, leases, bounded retries and backoff. Failed work enters a dead-letter state and can be retried or reconciled idempotently. The binding, application, process definition and Flowable instance remain linked in the receipt.

Decision hand-off

A final BPMN task can propose approve or reject. Assayra records the proposal, and where required a different authorised checker must countersign before a decision receipt is issued. The process cannot write a final application status directly.