Skip to main content
POST
Upload verification documents

Authorizations

Authorization
string
header
required

API key sent in the Authorization header.

Path Parameters

customer_id
string<uuid>
required

The customer (child org) ID. Must belong to the caller's organization or a direct child.

Body

multipart/form-data
id_front
file

Front of the identity document, or its only side. JPEG, PNG or PDF, up to 10 MB. At least one of id_front, id_back, proof_of_address or tax_document must be sent.

id_back
file

Back of the identity document, where it has two sides. JPEG, PNG or PDF, up to 10 MB. Required whenever id_type is id_card or drivers_license, and refused for passport, which is single-sided. Both sides go in the same request: sending this without id_front is a 400, so a back cannot be added to an earlier upload on its own.

id_type
enum<string>

Which identity document the id_* parts are. Required whenever one is sent. Case-sensitive: send the value exactly as listed.

Available options:
ID_CARD,
PASSPORT,
DRIVERS
proof_of_address
file

A document evidencing the customer's address. JPEG, PNG or PDF, up to 10 MB. Only accepted once the proof-of-address requirement is outstanding: sent earlier it is accepted with a 202 and then dropped, leaving the requirement outstanding.

proof_of_address_type
enum<string>
default:UTILITY_BILL

Which kind of address document it is. Case-sensitive: send the value exactly as listed.

Available options:
UTILITY_BILL,
BANK_STATEMENT,
TAX_BILL,
EMPLOYMENT_CERTIFICATE,
PROPERTY_DEED,
INVOICE
tax_document
file

A tax document, where the customer's country requires one; in Mexico, the Constancia de Situación Fiscal. JPEG, PNG or PDF, up to 10 MB. Not recorded for a customer whose verification does not collect one. See Country-specific requirements.

country
string

Issuing country of these documents, as an ISO 3166-1 alpha-3 code. Only needed when the customer's profile has no country yet.

Example:

"MEX"

Response

Accepted and being applied. The customer's current verification status is returned.

Where the customer's verification stands after a partner write. status is the same value GET /ramp/customer/{customer_id}/kyc reports, so there is one vocabulary across both.

customerId
string<uuid>
required
status
enum<string>
required

The customer's overall verification status. A write never moves it on its own.

Available options:
not_started,
in_progress,
submitted,
approved,
denied