Skip to main content
POST
/
investors
/
{investor_id}
/
compliance
/
submit
Submit a compliance check result
curl --request POST \
  --url https://api.bluumfinance.com/v1/investors/{investor_id}/compliance/submit \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "workflow_id": "cw_01j9x8m2k7qpzwv3t5r6y8n0ab",
  "check_type": "identity_verification",
  "provider_payload": {
    "event_type": "inquiry.approved",
    "inquiry_id": "inq_abc123def456",
    "status": "approved"
  }
}
'
{
  "workflow_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "check_type": "identity_verification",
  "status": "pending",
  "provider": "persona-identity",
  "external_id": "inq_abc123def456",
  "verification_url": "https://withpersona.com/verify?inquiry-id=inq_abc123def456",
  "verification_token": null
}

Authorizations

Authorization
string
header
required

HTTP Basic Authentication using the API Key as username and API Secret as password.

Path Parameters

investor_id
string
required

The prefixed public id of the investor (e.g. inv_…).

Body

application/json
workflow_id
string
required

The compliance workflow ID returned in the compliance_checks array during account creation.

Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

check_type
enum<string>
required

The type of compliance check being submitted. Must match one of the checks returned during account creation.

Available options:
identity_verification,
tax_id_verification,
screening,
business_verification
Example:

"identity_verification"

provider_payload
object
required

Provider-specific callback/completion payload. Contents depend on the provider:

  • Persona: Include the inquiry/transaction completion data (e.g., event_type, inquiry_id, status).
  • Dojah: Include the widget completion data (e.g., verification_status, reference_id).

Response

Check result processed successfully.

workflow_id
string

The compliance workflow this check belongs to.

Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

check_type
enum<string>

The type of compliance check performed.

Available options:
identity_verification,
tax_id_verification,
screening,
risk_assessment,
business_verification
Example:

"identity_verification"

status
enum<string>

Current status of the check:

  • pending — Async verification in progress; use verification_url or verification_token for user completion.
  • clear — Verification passed.
  • failed — Verification failed.
  • review_required — Manual review needed (e.g., potential PEP/sanctions match).
  • error — Provider error during verification.
Available options:
pending,
clear,
failed,
review_required,
error
Example:

"pending"

provider
string | null

The verification provider handling this check (e.g., persona-identity, persona-taxid, dojah).

Example:

"persona-identity"

external_id
string | null

Provider-specific reference ID for the verification.

Example:

"inq_abc123def456"

verification_url
string | null

User-facing verification URL for async checks, when available.

Example:

"https://withpersona.com/verify?inquiry-id=inq_abc123def456"

verification_token
string | null

Provider token or SDK configuration for client-side verification, when available.

Example:

null