Onboarding

Upload a business document

Changed on

Multipart, one file per call. Maximum 10 MB, in PDF, JPEG or PNG.

A document is filed by what it evidences rather than by a single type, so purposes[] takes several values and one file can satisfy more than one requirement.

post/v1/customers/{customerId}/documents

Request

  • Base URL
    https://api.sandbox.alfredpay.io
  • URL
    https://api.sandbox.alfredpay.io/v1/customers/{customerId}/documents
  • Auth
    • HTTP bearer
    • or API key in header api-key and API key in header api-secret

Headers

Idempotency-Keystring uuid required

Required on every state-changing POST, simulators included; the only exempt POST is …/verifications/preflight. Replay (same key, same body) returns the original response with Idempotent-Replayed: true; same key with a different body → 409 idempotency_conflict. Keys are UUIDs, scoped to the API key, retained for 24 hours.

Request body multipart/form-data

filestring binary required

PDF, JPEG or PNG. 10 MB maximum.

purposesstring[] required

What this file evidences, for example INCORPORATION, PROOF_OF_ADDRESS, SHAREHOLDER_REGISTRY, ID_FRONT, ID_BACK, SELFIE.

documentTypestring
issuingCountry'MEX' | 'ARG' | 'BRA' | 'COL' | 'CHL' | 'PER' | 'DOM' | 'USA' | 'CHN' | 'HKG' | 'BOL' | 'PRY'

ISO 3166-1 alpha-3, the only form Alfred stores, filters on, reports or emits. Compatibility rule for integrations that can only send alpha-2: any inbound country value in alpha-2 (path, query or body) is normalized to alpha-3 at the boundary before validation, storage or routing. Unrecognized in either form → 422 validation_error.

fileNamestring
descriptionstring

Response

Uploaded

idstring
purposesstring[]
documentTypestring
status'PENDING_VERIFICATION' | 'VERIFIED' | 'REJECTED'
createdAtstring date-time

Changes