Skip to main content
POST
/
accounts
/
{account_id}
/
compliance
/
submit
Submit compliance check result
curl --request POST \
  --url https://service.bluumfinance.com/v1/accounts/{account_id}/compliance/submit \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "workflow_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "check_type": "identity_verification",
  "provider_payload": {
    "event_type": "inquiry.approved",
    "inquiry_id": "inq_abc123def456",
    "status": "approved"
  }
}
'
{
  "check_type": "identity_verification",
  "status": "clear",
  "provider": "persona-identity",
  "external_id": "inq_abc123def456"
}

Authorizations

Authorization
string
header
required

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

Path Parameters

account_id
string<uuid>
required

The account (investor) ID

Body

application/json
workflow_id
string<uuid>
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<uuid>

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

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

URL for user-facing verification flow. For Persona, this is the hosted inquiry URL. Redirect the end-user to this URL to complete identity verification.

Example:

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

verification_token
string | null

Token or SDK configuration for client-side verification initialization. For Persona: session token for the embedded SDK. For Dojah: JSON-encoded widget configuration (parse and pass to the Dojah Connect SDK).

Example:

null