Trulioo · Arazzo Workflow

Trulioo Verify A Person And Fetch The Full Record

Version 1.0.0

Run a KYC verification, then pull the complete transaction record including datasource detail.

1 workflow 1 source API 1 provider
View Spec View on GitHub Identity VerificationKYCKYBAMLWatchlist ScreeningBiometricsDocument VerificationFraud PreventionComplianceGlobal IdentityArazzoWorkflows

Provider

trulioo

Workflows

verify-person-and-fetch-record
Verify a person and retrieve the full transaction record.
Submits a Verify request and uses the TransactionRecordID it returns to fetch the complete TransactionRecord with all datasource results.
2 steps inputs: configurationName, countryCode, customerReferenceId, dataFields outputs: datasourceResults, recordStatus, transactionId, transactionRecordId
1
verify
verifyPerson
Submit the Verify request to perform a KYC verification on the person and capture the TransactionRecordID for the follow-up lookup.
2
fetchRecord
getTransactionRecord
Retrieve the full TransactionRecord for the verification, including the per-datasource results and any appended fields.

Source API Descriptions

Arazzo Workflow Specification

trulioo-verify-person-and-fetch-record-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Trulioo Verify A Person And Fetch The Full Record
  summary: Run a KYC verification, then pull the complete transaction record including datasource detail.
  description: >-
    Submitting a Verify returns a summary record status, but the auditable detail
    — every datasource result, the matched fields, and any appended fields — lives
    on the transaction record. This workflow verifies a person and then chains the
    returned TransactionRecordID into a transaction-record lookup so the caller
    ends with the durable, downloadable record. Every step spells out its request
    inline so the flow can be read and executed without opening the underlying
    OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: verificationsApi
  url: ../openapi/trulioo-verifications-api-openapi.yml
  type: openapi
workflows:
- workflowId: verify-person-and-fetch-record
  summary: Verify a person and retrieve the full transaction record.
  description: >-
    Submits a Verify request and uses the TransactionRecordID it returns to fetch
    the complete TransactionRecord with all datasource results.
  inputs:
    type: object
    required:
    - configurationName
    - countryCode
    - dataFields
    properties:
      configurationName:
        type: string
        description: Configured product/package name.
      countryCode:
        type: string
        description: Two-letter ISO 3166 country code.
      dataFields:
        type: object
        description: DataFields block (PersonInfo, Location, Communication, NationalIds, Document).
      customerReferenceId:
        type: string
        description: Optional client-side reference for the transaction.
  steps:
  - stepId: verify
    description: >-
      Submit the Verify request to perform a KYC verification on the person and
      capture the TransactionRecordID for the follow-up lookup.
    operationId: verifyPerson
    requestBody:
      contentType: application/json
      payload:
        AcceptTruliooTermsAndConditions: true
        ConfigurationName: $inputs.configurationName
        CountryCode: $inputs.countryCode
        CustomerReferenceID: $inputs.customerReferenceId
        DataFields: $inputs.dataFields
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      transactionId: $response.body#/TransactionID
      transactionRecordId: $response.body#/Record/TransactionRecordID
      recordStatus: $response.body#/Record/RecordStatus
  - stepId: fetchRecord
    description: >-
      Retrieve the full TransactionRecord for the verification, including the
      per-datasource results and any appended fields.
    operationId: getTransactionRecord
    parameters:
    - name: transactionRecordId
      in: path
      value: $steps.verify.outputs.transactionRecordId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      productName: $response.body#/ProductName
      record: $response.body#/Record
      datasourceResults: $response.body#/Record/DatasourceResults
  outputs:
    transactionId: $steps.verify.outputs.transactionId
    transactionRecordId: $steps.verify.outputs.transactionRecordId
    recordStatus: $steps.verify.outputs.recordStatus
    datasourceResults: $steps.fetchRecord.outputs.datasourceResults