---
title: "Get customer compliance requirements"
method: GET
path: "/v1/customers/{id}/compliance"
tags: ["Customers"]
---

# Get customer compliance requirements

`GET /v1/customers/{id}/compliance`

Verify that you have passed all required compliance information for a customer.
    
Returns a merged list of missing requirements plus any active overlays.
Use this endpoint to check what information is still needed before submitting verification.

Note: When RFIs (Requests for Information) are issued, additional fields may be added to this response.

## Path parameters

- `id` string, required

## Headers

- `X-API-Key` string

## Response `200`

Customer compliance status

- CustomerComplianceResponseDto
  - `customerId` string, required — Customer ID
  - `updatedAt` string, required — Last updated timestamp
  - `missingRequirements` MissingComplianceRequirementDto[], required — Merged list of missing fields and documents required for compliance
    - `requirementType` 'FIELD' | 'DOCUMENT', required — Requirement category
    - `key` string, required — Stable requirement key or field path
    - `displayName` string, required — Human-readable requirement label
    - `entityId` string — Associated entity ID when the missing requirement belongs to a beneficial owner or control person.
    - `entityDisplayName` string — Human-readable associated entity name when the missing requirement belongs to a beneficial owner or control person.
  - `enhancedDiligence` EnhancedDiligenceComplianceDto, required
    - `requiredFields` RequiredField[], required
      - `fieldPath` string, required
      - `displayName` string, required
      - `dataType` string, required
      - `required` boolean, required
      - `validationPattern` string, nullable, required
      - `validationMessage` string, nullable, required
      - `allowedValues` string[], nullable, required
      - `exampleValue` string, nullable
      - `uiTag` string, nullable
      - `infoBox` string, nullable
      - `options` SelectOption[], nullable
        - `group` string, nullable
        - `value` string, required
        - `label` string, required
        - `description` string
        - `disabled` boolean
        - `isExclusive` boolean
      - `isMultiSelect` boolean, nullable
      - `stepId` string, nullable
      - `subject` string, nullable
      - `entityScope` string, nullable — Stable customer or associated-entity ID targeted by this field
      - `countryCode` string, nullable — Country code used for country-specific input validation
      - `allowNoTinPlaceholder` boolean — Whether an all-zeros placeholder satisfies this tax ID field (nationals or residents of countries that do not issue TINs)
      - `sourcePackage` string, nullable
      - `dependsOn` FieldDependency
        - `fieldPath` string, required
        - `value` union
          - boolean
          - string
          - number
          - string[]
        - `hasValue` boolean, nullable
      - `minLength` number, nullable
      - `maxLength` number, nullable
    - `requiredDocuments` RequiredDocument[], required
      - `requirementId` string, nullable — Stable identifier that distinguishes custom document requirements
      - `documentType` 'IDENTITY' | 'PROOF_OF_ADDRESS' | 'INVOICE' | 'CONTRACT' | 'BANK_STATEMENT' | 'BUSINESS_LICENSE' | 'ARTICLES_OF_INCORPORATION' | 'ARTICLES_OF_ASSOCIATION' | 'CERTIFICATE_OF_FORMATION' | 'CERTIFICATE_OF_INCUMBENCY' | 'OPERATING_AGREEMENT' | 'PARTNERSHIP_AGREEMENT' | 'OWNERSHIP_STRUCTURE' | 'SHAREHOLDER_AGREEMENT' | 'STOCK_CERTIFICATE' | 'TAX_RETURN' | 'FINANCIAL_STATEMENT' | 'MARKETING_MATERIALS' | 'DOMAIN_OWNERSHIP_PROOF' | 'BUSINESS_PLAN' | 'BILL_OF_LADING' | 'AML_POLICY' | 'AML_COMFORT_LETTER' | 'FUNDS_FLOW_DIAGRAM' | 'GOOD_STANDING_CERTIFICATE' | 'TIN_VERIFICATION' | 'MSB_LICENSE' | 'DIRECTORS_REGISTRY' | 'OWNERSHIP_CHART' | 'PROOF_OF_SIGNATORY_AUTHORITY' | 'PROOF_OF_SOURCE_OF_FUNDS' | 'PROOF_OF_ENTITY_NAME_CHANGE' | 'REMOTE_ADDRESS_ATTESTATION' | 'E_SIGNATURE_CERTIFICATE' | 'COMPLIANCE_NOTES' | 'PROOF_OF_SOURCE_OF_WEALTH' | 'TAX_EXEMPT_ENTITY_CONFIRMATION' | 'OTHER', required
      - `documentSubtype` 'GOVERNMENT_ID_FRONT' | 'GOVERNMENT_ID_BACK' | 'SELFIE' | 'UTILITY_BILL' | 'LEASE_AGREEMENT', nullable
      - `displayName` string, required
      - `required` boolean, required
      - `acceptedFormats` string[], required
      - `requiredSides` string[], required
      - `maxSizeBytes` number, required
      - `infoBox` string, nullable
      - `stepId` string, required
      - `subject` string, nullable
      - `entityScope` string, nullable
      - `documentFieldPath` string, nullable — Verification field path for document ID writeback (e.g. businessData.associatedEntities[0].governmentId.frontImage)
      - `minimumFileCount` number, nullable
      - `sourcePackage` string, nullable
      - `dependsOn` FieldDependency
        - `fieldPath` string, required
        - `value` union
          - boolean
          - string
          - number
          - string[]
        - `hasValue` boolean, nullable
    - `missingRequirements` MissingComplianceRequirementDto[], required
      - `requirementType` 'FIELD' | 'DOCUMENT', required — Requirement category
      - `key` string, required — Stable requirement key or field path
      - `displayName` string, required — Human-readable requirement label
      - `entityId` string — Associated entity ID when the missing requirement belongs to a beneficial owner or control person.
      - `entityDisplayName` string — Human-readable associated entity name when the missing requirement belongs to a beneficial owner or control person.
  - `validationErrors` string[], required — Validation errors that would block submission (e.g. ownership requirements)

## Other responses

- `401` — Unauthorized - Invalid or missing authentication credentials

---

[API](https://skmtc.dev/infinite/apis/infinite-api.md) · [All operations](https://skmtc.dev/infinite/apis/infinite-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/infinite/infinite-api/revisions/5426f2706725/schema)
