Skip to main content

Node Types

This reference covers all available node types in the Workflow Builder.

Control Nodes

Start Node

Every workflow begins with a Start node.

PropertyDescription
LabelDisplay name (default: "Start")

Outputs: 1 (to first step)

Notes:

  • Exactly one Start node required per workflow
  • Cannot be deleted once workflow has executions

End Node

Terminates a workflow path with an outcome.

PropertyDescription
LabelDisplay name
OutcomeResult: approved, rejected, review, pending

Inputs: 1 or more Outputs: None

Notes:

  • Multiple End nodes allowed (different outcomes)
  • Outcome determines applicant's final status

Condition Node

Branches workflow based on evaluated conditions.

PropertyDescription
LabelDisplay name
Condition TypeThe condition to evaluate
ParametersCondition-specific configuration

Inputs: 1 Outputs: 2 (true branch, false branch)

Available Conditions

ConditionParametersExample
risk_score_abovethreshold (0-100)Score > 70
risk_score_betweenmin, maxScore 30-70
country_incountries (list), fieldNationality in [US, CA, GB]
has_screening_hithit_types (list)Has sanctions hit
has_tagtag (string)Has "high_value" tag
device_is_suspicioussignals (list)VPN or proxy detected
document_expireddays_toleranceExpired or expires within 30 days
risk_tier_istierRisk tier is "high"
requires_enhanced_ddnonePEP, high-risk country, or elevated risk
expressionexpression (string)Custom JavaScript expression

Expression Examples:

// Check multiple conditions
applicant.risk_score > 50 && applicant.country === 'US'

// Check array contains
applicant.tags.includes('vip')

// Check nested data
screening_results.sanctions.hit_count > 0

Data Collection Nodes (Steps)

ID Document

Collects and verifies government-issued identification.

PropertyDescriptionDefault
Accepted Typespassport, drivers_license, national_idAll
Require Both SidesCapture front and backtrue
Age VerificationMinimum age requirednone
Expiry CheckReject expired documentstrue

Actions Performed:

  • Document capture guidance
  • OCR text extraction
  • Fraud detection (tampering, screenshots)
  • Age verification from DOB
  • Expiry date validation

Selfie

Captures applicant photo for face matching.

PropertyDescriptionDefault
Require LivenessPerform liveness detectiontrue
Match ThresholdFace match confidence (0-1)0.85
Retry LimitMax capture attempts3

Actions Performed:

  • Face capture with guidance
  • Liveness detection (anti-spoofing)
  • Face match against ID document
  • Photo quality assessment

Address Proof

Collects proof of address documents.

PropertyDescriptionDefault
Accepted Typesutility_bill, bank_statement, tax_document, rental_agreementAll
Max Age DaysMaximum document age90
Address MatchCompare to stated addresstrue

Actions Performed:

  • Document capture
  • OCR text extraction
  • Date validation
  • Address extraction and geocoding

Form

Collects custom information via form fields.

PropertyDescription
Form Typesource_of_funds, occupation, custom
Required FieldsFields that must be completed
Custom SchemaJSON schema for custom forms

Built-in Forms:

  • Source of Funds - Income source, expected volume
  • Occupation - Job title, employer, industry
  • Tax Information - Tax ID, residency

Action Nodes

Run Screening

Executes sanctions, PEP, and adverse media screening.

PropertyDescriptionDefault
Check Typessanctions, pep, adverse_mediaAll
Sanctions ListsSpecific lists to checkAll configured
Match ThresholdFuzzy match sensitivity0.85
Include AliasesCheck known aliasestrue

Available Sanctions Lists:

  • OFAC SDN, OFAC Consolidated
  • UN Consolidated
  • EU Consolidated
  • UK HMT
  • FATF High-Risk Jurisdictions
  • And 10+ more

Output Data:

{
"has_hits": true,
"hit_count": 2,
"hits": [
{
"type": "sanctions",
"list": "ofac_sdn",
"match_score": 0.92,
"entity": "..."
}
]
}

Update Status

Updates the applicant's verification status.

PropertyDescription
Statuspending, approved, rejected, review
ReasonExplanation for the status change

Create Case

Creates a case for manual review.

PropertyDescriptionDefault
Case Typesanctions, pep, fraud, verification, amlBased on trigger
Prioritycritical, high, medium, lowmedium
Assign ToUser ID or roleUnassigned
NotesInitial case notesAuto-generated

Add Tags

Adds tags to the applicant for filtering and routing.

PropertyDescription
TagsList of tags to add

Common Tags:

  • high_value, vip
  • edd_required, enhanced_monitoring
  • crypto_source, fiat_source
  • first_time, returning

Assign to User

Assigns the applicant to a specific user or team.

PropertyDescription
AssigneeUser ID or email
TeamTeam name (if no specific user)

Check Device Risk

Evaluates device and IP risk signals.

PropertyDescriptionDefault
Check VPNDetect VPN usagetrue
Check ProxyDetect proxy usagetrue
Check TorDetect Tor exit nodestrue
Fraud Score ThresholdFraud detection threshold75

Output Data:

{
"is_suspicious": false,
"vpn_detected": false,
"proxy_detected": false,
"fraud_score": 15,
"country": "US",
"isp": "Comcast"
}

Verify Address

Validates and geocodes an address.

PropertyDescription
Address FieldWhich address to verify
Strict MatchRequire exact match vs fuzzy

Output Data:

{
"valid": true,
"standardized": "123 Main St, New York, NY 10001",
"coordinates": {"lat": 40.7128, "lng": -74.0060},
"confidence": 0.95
}

Send Notification

Sends email or webhook notification.

PropertyDescription
Channelemail, webhook, slack
TemplateNotification template ID
RecipientsWho to notify

Specialized Nodes

CDD Questionnaire

Presents Customer Due Diligence questionnaire.

PropertyDescription
Frameworkfincen, crypto, banking
QuestionsSelected question set
Risk ScoringAuto-calculate CDD risk

Manual Review Gate

Pauses workflow for human review.

PropertyDescription
Reviewer RoleWho can complete review
TimeoutHours before auto-escalate
SLA PriorityReview urgency

Review Step (Terminal)

🔴 MANUAL - Routes to compliance team for final human decision.

This node type (similar to Sumsub's "Review step") is used when a human must make the final approval or rejection decision. The workflow pauses here until a compliance officer takes action.

PropertyDescription
Review Typemanual_review or final_reject
LabelsRejection labels if final_reject
AssigneeUser/role to assign
InstructionsGuidance for reviewer

Review Type Options:

TypeDescription
manual_reviewApplicant status becomes "Requires Action" - reviewer can approve, reject, or request resubmission
final_rejectImmediately rejects with specified labels

When to Use:

  • End of a risk-flagged branch (PEP hit, sanctions match)
  • Complex cases requiring human judgment
  • Regulatory requirement for manual review

Automated vs Manual Nodes

Understanding which nodes run automatically vs require human intervention:

✅ Automated Nodes (No Human Required)

These nodes execute automatically without pausing:

NodeWhat It Does Automatically
ID DocumentOCR extraction, fraud detection, expiry check
SelfieLiveness detection, face matching
Run ScreeningSanctions/PEP/adverse media API calls
Update StatusSets applicant status
Add TagsTags applicant profile
Create CaseCreates case (but doesn't wait for resolution)
Check Device RiskIP/device analysis
ConditionEvaluates rules and routes
Send NotificationSends email/webhook

🔴 Manual Nodes (Human Required)

These nodes pause execution until human action:

NodeWhat Happens
Review StepCompliance officer must approve/reject
Manual Review GateReviewer must complete before continuing
CDD QuestionnaireApplicant must complete questionnaire

📝 Semi-Automated Nodes

These collect data from applicant but process automatically:

NodeWhat It Does
FormApplicant fills form, data saved automatically
Address ProofApplicant uploads, OCR runs automatically

Node Limits

MetricLimit
Nodes per workflow100
Connections per node10 inbound
Nested conditions10 levels
Actions in sequence20

Next Steps