Upload a File
Step 1: Reserve a file ID
Call the upload URL endpoint with the file’spurpose and contentType. You’ll receive a fileId to reference in later API calls and a putUrl to upload the actual file.
Response:
JSON
| Field | Description |
|---|---|
fileId | Unique identifier to reference this file in other API calls |
putUrl | Pre-signed URL for uploading the file bytes (single-use) |
expiresIn | Seconds until the putUrl expires (900 = 15 minutes) |
Step 2: Upload the file
Use theputUrl from the response to upload the file bytes with an HTTP PUT request. Set the Content-Type header to match the contentType you specified in Step 1.
Bash
fileId is ready to use in API calls like KYC submission, contract upload, or beneficiary creation.
File Purposes
Each file must be tagged with apurpose that describes how it will be used. The following values are supported:
| Purpose | Description |
|---|---|
kyc-id-front | Front of a government-issued identity document |
kyc-id-back | Back of a government-issued identity document |
kyc-selfie | Selfie photo for identity verification |
kyc-id-selfie | Photo of user holding their identity document |
kyc-address-proof | Proof of address (utility bill, bank statement, etc.) |
kyb-incorporation-document | Certificate of incorporation for business verification |
kyb-tax-certificate | Tax registration certificate for business verification |
kyb-address-proof | Proof of business address |
business-onboarding-document | General business onboarding document |
reimbursements-proof | Receipt or proof for expense reimbursement |
contract | Employment or service contract PDF |
Download a File
Retrieve file details and a pre-signed download URL by file ID. Response:JSON
getUrl is a pre-signed, single-use download link. Request a new one each time you need to download the file.
Where Files Are Used
| Use Case | API Fields | Guide |
|---|---|---|
| KYC identity verification | idDetails.frontFileId, idDetails.backFileId, idDetails.selfieFileId | KYC Verification |
| KYC address proof | addressProofFileId | KYC Verification |
| Contract upload | fileId on contract creation | Manage Contracts |
| Business onboarding (KYB) | Incorporation documents, tax certificates | KYB Requirements |
| Beneficiary KYC | fileId on beneficiary creation | Making a Payment |
Image Requirements
- Supported formats: JPEG, PNG
- Images must be clear and readable
- All text and photos on the document must be visible
- File size should be reasonable for the document type (typically under 10 MB)