Skip to main content
Your application is enabled for a set of verification profiles by SpherePay. enabledVerificationProfiles lets you choose, per customer, which of those profiles the customer is evaluated against. A customer is only verified for the profiles you select, and only incurs the verification cost for those.

The field

enabledVerificationProfiles is an array of profile letters on POST /v2/customer and PATCH /v2/customer/{id}. It applies to customers onboarded through the API; customers onboarded through hosted KYC links are enrolled in your application’s default profiles.
SpherePay recommends always sending an explicit array. It makes the customer’s enrolment visible in your own records and independent of later changes to your application’s configuration.
The set of profiles your application can use is configured by SpherePay. To request an additional profile for your application, contact support@spherepay.co.

What the API returns

GET /v2/customer/{id} returns two related fields:
  • enabledVerificationProfiles — the profiles the customer is enrolled in, always as an explicit array. If you omitted the field at creation, this is the set your application was enabled for at that moment.
  • verificationProfiles — the profiles actually being evaluated, each with a status and criteria. Selecting a profile does not guarantee it appears here: a profile the customer is not eligible for is left out (see below).

Country eligibility

Eligibility follows the customer’s country of residence (address.country). US residents can use profile A only. Non-US residents can use profile A, C and D. A selected profile the customer is not eligible for is left out of verificationProfiles; if none of the selected profiles applies, the request is rejected.
  • A US resident created with ["a", "c"] is accepted, but only kyc_profile_a appears in verificationProfiles.
  • A US resident created with ["c"] or ["d"] is rejected with 422 customer/verification-profile-not-enabled, because no selected profile applies.

Changing the selection later

Send the full new array in PATCH /v2/customer/{id}. Omitting the field leaves the selection unchanged.
  • Adding a profile exposes its outstanding requirements in criteria.required on the new profile. Requirements already satisfied for another profile are carried over as complete. See Add a profile later.
  • Removing a profile is allowed only while that profile is incomplete. See Remove a profile.
Adding a profile never re-reviews the customer’s existing profiles. Fields those profiles already evaluated stay locked while they are pending or approved — see When customer data can be updated.

Business customers

Set enabledVerificationProfiles on the business when you create it. Every business representative you add is evaluated against the same profiles, as ubo_kyc_profile_*; representatives do not carry their own selection. Changing a business’s selection after creation is not yet supported through PATCH. Contact your SpherePay representative if an existing business needs a new profile.

Error reference


Verification profiles overview

Which profiles exist, what each requires and unlocks.

Onboard a customer with profiles

Choose profiles at creation and add one later.
Last modified on September 22, 2026