Required information
SpherePay requires the following information to verify an individual customer’s identity. Fields marked as API are submitted in the customer creation request; fields marked as ID Document are extracted automatically from the uploaded document.Individual customers resident in the EEA+ region must also provide
accountPurpose, countryOfBirth, and nationality before verification. See EEA+ residents.In certain circumstances SpherePay may request additional information, such as for politically exposed persons (PEPs), elderly customers, high-risk profiles, or customers with unusually high expected transaction volumes. SpherePay will contact you directly when this applies.
KYC flow overview
The flow below shows the steps required for individual KYC. The only step that differs between onboarding models is TOS acceptance — it is handled in-flow in Sphere-Managed and embedded in your platform’s terms in Platform-Managed.- Sphere-Managed (default)
- Platform-Managed (opt-in)
- Create customer with full
personalInformationandaddress - Generate TOS link → redirect customer to accept terms
- Upload government-issued ID document
- Upload proof of address document
- Complete face liveness verification (Sumsub SDK, in-flow)
- Poll
GET /v2/customer/{id}untilstatusreachesapproved
Choose an integration method
KYC via API — Sphere-Managed
Default model. Sphere handles TOS, face liveness, and OTP via hosted links.
KYC via API — Platform-Managed
Opt-in model. Upload a liveness report document. No hosted redirects required.
KYC via hosted link
Fastest integration. SpherePay hosts the entire verification experience.
KYC via API — Sphere-Managed
This is the default model for all new API integrations. Sphere handles compliance steps in-flow using hosted links and redirects: Terms of Service acceptance, face liveness verification, and OTP contact verification. Before you begin, ensure you have:- A SpherePay API key
- The customer’s personal information (full address, tax ID)
- A copy of the customer’s government-issued identity document
1
Create a customer
Call The
POST /v2/customer with type: "individual" and include the full personalInformation and address objects. These fields allow SpherePay to verify the customer’s identity programmatically.personalInformation object accepts the following fields:2
Accept Terms of Service
Generate a TOS link and redirect the customer to accept the Terms and Conditions and Privacy Policy.This step can be done in parallel with uploading documents.
3
Upload ID document
Upload the customer’s government-issued identity document using Upload both the front and back for ID cards and driver’s licenses. Passports require front only (with country-specific exceptions). See the Document Guideline for accepted formats by country.
POST /v2/document.4
Complete face liveness verification
Check the customer’s
required array via GET /v2/customer/{id}. Then perform exactly one of the following, depending on what appears in required:liveness_checkin required — Generate a face verification link viaPOST /v2/enhanced-due-diligence/face-verification-linkand redirect the customer to complete an interactive liveness check via the Sumsub SDK.liveness_report_documentin required — Upload a liveness report document from your identity verification provider viaPOST /v2/documentwithdocumentType: "liveness_report".
5
Poll for verification result
Once all required steps are complete, SpherePay processes the verification automatically — no submit call is needed. Poll When
GET /v2/customer/{id} until status in verificationProfiles reaches approved.required is empty and status is approved, the customer is fully onboarded and ready to transfer.KYC review typically takes 0–2 business days after all required documents and data are submitted.
KYC via API — Platform-Managed
This opt-in model is for platforms that already perform KYC, collect liveness verification, and embed Sphere’s Terms of Service. Your platform handles compliance upstream — no hosted redirects are required. Additional prerequisites beyond the standard set:- A liveness report document from your identity verification provider (e.g. Sumsub, Persona)
- Platform-Managed onboarding approved for your application by Sphere Compliance
1
Create a customer
Call
POST /v2/customer with type: "individual", full personalInformation, and address. The request body is identical to the Sphere-Managed path.2
Upload ID document and proof of address
Upload the customer’s identity documents via
POST /v2/document. Repeat for each required document type.3
Upload liveness report
Upload the liveness report produced by your identity verification provider. This replaces the in-flow face liveness check used in Sphere-Managed.Only upload this document if
liveness_report_document appears in the required array of the customer’s verification profile.4
Poll for verification result
Once all required data and documents are submitted, SpherePay processes the KYC verification automatically. Poll
GET /v2/customer/{id} until status reaches approved.EEA+ residents
Sphere enforces additional KYC fields for individual customers resident in the EEA+ region, in line with MiCA. Customers outside EEA+ are unaffected. EEA+ is the EEA plus the United Kingdom, Switzerland, Andorra, and several EU overseas territories (Åland Islands, French Guiana, Guadeloupe, Martinique, Mayotte, Réunion, Saint Martin). Scope is keyed off the customer’s residence country (address.country). See EEA+ region for the full definition.
Additional fields
Provide these fields underpersonalInformation on POST /v2/customer and PATCH /v2/customer/{id}:
Accepted
accountPurpose values:
personal_or_living_expensespayments_to_friends_or_family_abroadreceive_salaryreceive_payment_for_freelancingprotect_wealthpurchase_goods_and_servicescharitable_donationsecommerce_retail_paymentsinvestment_purposesoperating_a_company
When Sphere enforces these fields
These fields are not hard-required at creation.POST /v2/customer and PATCH /v2/customer/{id} succeed without them, so you can complete a customer incrementally.
Until all three are supplied, they appear in the customer’s kyc_profile_a criteria as country_of_birth, nationality, and account_purpose, and the customer cannot be submitted for verification. Sphere excludes these codes entirely for customers whose residence country is outside EEA+.
You can backfill existing EEA+ customers with PATCH /v2/customer/{id}. Validation runs on the merged customer state — send only the missing fields.
Foreign tax registration
IftaxIdentificationNumberCountry differs from the customer’s residence country (address.country), Sphere records a foreign tax registration and forwards it to the verification provider. You do not send a separate field for this.
Example
CallPOST /v2/customer with the EEA+ fields under personalInformation:
email, phone, and a full address) as usual.
What’s next
Once the customer’s verification profile isapproved, register their payment methods and initiate a transfer.
Bank accounts
Register a bank account so the customer can send or receive funds via bank rail.
Wallets
Register a crypto wallet address to enable on-ramp and off-ramp transfers.
Transfers API
Create and manage transfers once the customer has registered their payment methods.
Verification profile
Understand verification statuses, criteria arrays, and what triggers state changes.