kyc.requirements on
GET /platform/v1/customers/{id}:
basicDetails, residentialAddress, and phoneNumber (the profile fields),
plus taxIdentifiers, questionnaires, identityDocuments, selfie, and
proofOfAddress. You fulfill field-based categories with
PATCH /platform/v1/customers/{id}/kyc
and document-based categories with the
file-upload endpoints.
Country is the key driver: once you submit residentialAddress.country, the
API returns the full requirement set for that jurisdiction.
Profile fields
Every customer requires the following profile fields, submitted withPATCH /platform/v1/customers/{id}/kyc.
The API path is the field’s location in the PATCH body.
Date of birth must be in
YYYY-MM-DD format. The customer must be 18 or older.
Country codes must be ISO 3166-1 alpha-3 (e.g. USA, GBR, DEU).
Phone number must be in E.164 format (e.g.
+12025550143). Verify the
customer’s phone number via OTP before submitting it. Re-verify at least once
every 30 days. Submitting the number is your attestation that this
verification occurred — see Terms
acceptance.Tax identifiers
Tax identifier requirements depend on the customer’s country of residence. Submit tax identifiers astaxIdentifiers[] on
PATCH /platform/v1/customers/{id}/kyc,
each with a type, value, and (for tin) a country field.
EEA and UK
Rest of world
Due diligence questionnaires
Whenquestionnaires is incomplete in kyc.requirements, the customer must
complete one or both due-diligence questionnaires. The entry’s requiredFields
names which ones: customerDueDiligence, enhancedDueDiligence, or both.
Submit answers as questionnaires[] on
PATCH /platform/v1/customers/{id}/kyc, one entry per required questionnaire.
Each entry carries a type identifying the questionnaire and an answers
object; each questionnaire type may appear at most once per request.
Customer Due Diligence
Answers for thecustomerDueDiligence questionnaire.
Enhanced Due Diligence
Answers for theenhancedDueDiligence questionnaire.
profession accepts: agriculture, artsAndEntertainment, businessOwner,
education, financialServices, healthcare,
industrialTradesAndTransport, informationAndTechnology,
legalAndProfessionalServices, publicSector, realEstate, retail, and
seniorManagement.
Monetary amounts
grossAnnualIncome, expectedTransactionAmountPerMonth, and netWorth share
one shape: an object with a currency code and an amount.
The reporting currency is fixed by the customer’s
residentialAddress.country:
The expected value is fixed by the residential address country, but
currency
is still required: it acts as an explicit confirmation so amounts are never
silently misinterpreted. The API rejects any other currency with a 400
validation error that identifies the expected currency, for example
Expected currency EUR for residentialAddress.country CZE, got PLN.
If the customer’s local currency differs from the reporting currency, for
example CZK or PLN in an EEA country, convert the amount to the reporting
currency before submitting, using a current exchange rate.
Identity documents
WhenidentityDocuments is incomplete in kyc.requirements, the customer
must provide one of the document types listed below. Submit documents through
the presigned upload flow, not
inline in the PATCH body. Before you submit selfie or identity-document
images, display the required biometric consent disclosure to the customer —
see Biometric consent for selfie and document images.
Accepted document types vary by country.
Acceptance by country
The table below shows which documents MoonPay accepts per country.Proof of address
WhenproofOfAddress is incomplete in kyc.requirements, the customer must
submit a document confirming their residential address. Submit it through the
presigned upload flow.
Accepted documents
- Utility bills (electricity, gas, internet, landline, or water)
- Bank or credit card statements
- Mortgage statement
- Certificate of voter registration
- Government correspondence (for example, from a tax authority or licensing body)
- Lease agreements or rent receipts
- Insurance documents
- Tax documents
- Official letters from schools, employers, or government agencies
- Employer’s certificate (payslips are not accepted)
- Certificate of vehicle registration
Selfie and liveness check
Details on selfie and liveness check requirements are being finalized. Contact
your MoonPay account team if you need this information sooner.