APITransfersBank AccountsAssets
MXN/SPEI transfers now supported via the API
SpherePay now supports MXN (Mexican Peso) transfers via the SPEI instant payment network. Your customer pays in pesos and the beneficiary receives USD, at an exchange rate locked before the transfer is created.This is SpherePay’s first fiat-to-fiat corridor: funds move bank to bank, with no stablecoin leg on either side. MXN transfers are available through the API only and are not yet supported in the dashboard.Supported routes:- SPEI MXN → Wire USD (domestic)
- SPEI MXN → SWIFT USD (international)
- Transfer limits: $50–$1,000,000 USD per transfer
- Transfers must be created from a quote — call POST /v2/quote, then pass the returned
quoteIdto POST /v2/transfer. - Integrator fees are not supported for MXN transfers.
- MXN to USD is the only supported direction.
- SPEI bank accounts require
currency: "mxn"andnetworks: ["spei"].
SPEI access requires verification profile D, which is enabled together with profile C. An MXN bank account cannot be created until profile D is approved — contact your SpherePay representative to enable it.
Onboarding/Compliance
Customer-level verification profiles
Customers can now be enrolled in specific verification profiles with the newenabledVerificationProfiles field on POST /v2/customer and PATCH /v2/customer/{id}. Each profile is a set of verification requirements that unlocks a group of products — for example profile A for USD and EUR transfers, offloader wallets and on-ramper accounts, profile C for USD transfers, including SWIFT, from customers outside the United States, and profile D for MXN transfers over SPEI.Why it matters: as SpherePay adds products and rails, you can enable your existing customers for them without re-onboarding from scratch. Requirements a customer has already satisfied for one profile are carried over to the next, so adding profile C to a customer verified on profile A only asks for what C needs on top.enabledVerificationProfiles— an array of profile letters, for example["a", "c"]. Send it at creation to choose the customer’s profiles; send the full new array in aPATCHto add a profile later. If you omit the field, the customer is enrolled in every profile enabled for your application at creation time. Profile D requires profile C on the same customer. Profile selection applies to API-onboarded customers; hosted KYC links use your application’s default profiles.- Explicit enrolment for new profiles — when SpherePay enables a new profile for your application, existing customers are not enrolled automatically. Add the profile per customer when they need it.
- Per-profile requirements — each entry in
verificationProfilesnow carries its owncriteria.required, and each profile is decided independently. - Add profiles to existing customers, including approved ones —
PATCH /v2/customer/{id}with the new array works whether the customer’s other profiles areincomplete,pendingorapproved. Fields apendingorapprovedprofile already evaluated stay locked; aPATCHthat touches one returns the new 400customer/field-locked-by-verification-profile, listing each locked field and the profile locking it. See When customer data can be updated. - Removing a profile is allowed only while it is
incomplete; oncependingorapprovedthe request returns the same error. - New error codes —
customer/verification-profile-family-not-enabled-for-applicationwhen the array names a profile your application is not enabled for, andcustomer/verification-profile-not-enabledwhen none of the selected profiles applies to the customer’s country.
Onboarding/Compliance
Brazilian digital identity documents
SpherePay now accepts two additionaldocumentType values on POST /v2/document for Brazilian digital identity documents:br_digital_drivers— digital driver’s license (CNH digital)br_digital_id— digital national ID (RG digital)
country: "BRA". Upload a single image and omit the side field. They are supported for individual customers (target: "customer") and business representatives (target: "business_representative"). Physical Brazilian documents continue to use drivers and id_card with front and back.For the full list of accepted ID types, see Supported ID and Tax ID Types.APICustomersKYC
New: EEA verification fields for individual customers
Individual customers resident in the EEA+ region now requireaccountPurpose (new field), countryOfBirth, and nationality under personalInformation before they can be submitted for verification.These fields are optional at creation and can be supplied later via PATCH /v2/customer/{id}. Until they are provided, they surface as country_of_birth, nationality, and account_purpose requirement codes on the customer’s kyc_profile_a verification profile. Customers outside EEA+ are unaffected.Existing EEA+ customers may show these as new outstanding requirements. Backfill them with PATCH /v2/customer/{id} — validation runs on the merged customer state.Hosted verification links collect the new data automatically. Integrators using hosted links need no changes.For field values, enforcement, and an example request, see EEA+ residents.APICustomersKYB
New: EEA business registration number and expanded associated-person requirements
EEA+ incorporated businesses must providebusinessInformation.registrationNumber plus a new per-country registrationNumberType (for example siren, kvk, crn). The registration number is stored and verified separately from the tax ID — do not submit a VAT or tax number as the registration number.Business representatives support a new director role. ownershipPercentage now accepts 0–100 (previously the minimum was 25); the ubo role still requires ≥ 25. EEA+ businesses must have at least one control person and complete KYC for all directors, signers, control persons, and 25%+ owners.Outstanding items surface as registration_number, eea_control_person_present, and eea_ap_kyc_scope requirement codes on kyb_profile_a. Representatives of EEA+ businesses must also provide countryOfBirth and nationality, which surface on each representative’s ubo_kyc_profile_a profile.Existing EEA+ customers and representatives may show these as new outstanding requirements. Backfill them with PATCH /v2/customer/{id} and PATCH /v2/business-representative/{id} — validation runs on the merged state.Hosted verification links collect the new data automatically. Integrators using hosted links need no changes.For registration types, representative roles, and requirement codes, see EEA+ businesses.APITransfers
New: statusHistory on transfer responses
Transfers returned by the v2 API now carry a statusHistory array — the full, timestamped timeline of every status the transfer has moved through, oldest first. It’s included on create, list, and retrieve responses.statusHistory, you can give your customers full visibility into where a payment is and how it got there from a single API read — and debugging a stalled transfer no longer means reconstructing its history. The field is additive and fully backwards compatible; no request changes are needed.TransfersBank Accounts
SWIFT international payouts
SpherePay now supports SWIFT for off-ramp USD payouts to international bank accounts. Funds are converted from stablecoin to USD and sent as a cross-border wire over the SWIFT network, routed to the beneficiary’s bank through up to three intermediary (correspondent) banks when required.Registering a SWIFT beneficiary bank account:- Create a USD bank account with
currency: "usd"andnetworks: ["swift"] - Provide
accountNumber(IBAN or BBAN) and the beneficiary bank’sbic(8 or 11 characters) - Optionally include
intermediaryBics— an ordered list of up to 3 correspondent-bank BICs (each 8 or 11 characters, no duplicates)
SWIFT access requires verification profile C. A USD SWIFT bank account cannot be created until profile C is approved — contact your SpherePay representative to enable it.
Dashboard
Manage offloader wallets from the dashboard
Integrators can now generate and track offloader wallets directly from the dashboard.- Generate offloader wallets — create new offloader wallet addresses without an API call.
- Wallet transaction history — view the full transaction history for each offloader wallet, including the transfers associated with it.
DashboardOnboarding/Compliance
Onboard your customers and view their external accounts
Integrators can now create and onboard their end customers directly from the dashboard, as part of the ongoing Integrators Dashboard rollout.- Create & onboard a customer — add a business or individual end customer and run KYB or KYC verification, with a Terms of Service link per customer and live verification status.
- Customer external accounts — view a customer’s external accounts directly from their Customer tab.
Dashboard
Add accounts and create transfers on behalf of your customers
Integrators can now manage on-behalf-of activity directly from the dashboard, as part of the first phased release of the new Integrators Dashboard.- Add customer accounts — add external accounts on behalf of your customers without leaving the dashboard.
- Create transfers on behalf of customers — initiate transfers from those accounts on your customers’ behalf.
- Improved transfer details — a refreshed confirmation and details view makes it easier to review each transfer.
DashboardOnboarding/Compliance
Redesigned dashboard navigation and Transfer flow
The SpherePay dashboard has been overhauled with clearer navigation and a rebuilt Transfer flow.Navigation updates:- Onboarding has moved out of the Transfers section into its own “Get Started” sidebar item, giving customers a clearer path through the platform from day one.
- “Bank Accounts” has been renamed to “External Accounts” to better reflect how the product works.
TransfersBank AccountsAssets
BRL/PIX transfers now supported
SpherePay now supports BRL (Brazilian Real) transfers via the PIX instant payment network.Supported routes:- Off-ramp: USDC/USDT on Polygon, Ethereum, Base, or Tron → PIX BRL
- On-ramp: PIX BRL → USDC/USDT on Polygon, Ethereum, Base, or Tron
- Transfer limits: R$1.00–R$7,500.00 per transfer
- Only
integratorBpsFeeRateis supported for fees (integratorFixedFeeis not allowed). - Solana is not supported for BRL transfers.
- PIX bank accounts require
currency: "brl"andnetworks: ["pix"].
BRL transfers require a separate verification profile (
kyc_profile_b / kyb_profile_b). Contact your SpherePay representative for access.TransfersBank Accounts
Named wire payouts
USD wire payouts now display your business name as the sender instead of “Sphere.” This is enabled automatically when a customer is approved — no manual configuration needed.Existing approved customers who have transacted in the last 3 months have been backfilled and will see this change reflected immediately.Onboarding/Compliance
API-first onboarding defaults
SpherePay now defaults to a streamlined onboarding model for API-integrated applications. KYC and UBO liveness checks, phone and email OTP verification, and MSA signing are no longer required during onboarding when these steps are handled upstream by the integrator.These capabilities remain fully supported and can be enabled as opt-in requirements per application. Existing applications retain their current behavior — only new applications receive the streamlined defaults.For more information, see the Customers & Onboarding guide.WalletsTransfersAssets
Offloader Wallets API and EURC support
Offloader Wallets API
Offloader Wallets are automated crypto-to-fiat conversion wallets that let your customers receive stablecoins and have them automatically settled to a linked bank account.Supported stablecoins and networks:- USDC on Arbitrum, Avalanche, Base, Ethereum, Polygon, and Solana
- USDT on Ethereum and Tron
- EURC on Base, Ethereum, and Solana
- USD via ACH and Wire
- EUR via SEPA
EURC now supported
EURC is now available across SpherePay’s on-ramp and off-ramp products on Base, Ethereum, and Solana networks.Onboarding/Compliance
Customer API suite for business customers
Full API support for onboarding and verifying business customers, including UBO registration — giving you complete control over the onboarding UX without redirecting customers to an external flow.New endpoints available:- Register business representative
- Upload UBO identification documents
- Request face liveness verification for UBO
- Submit UBO for verification
Transfers
Deprecating the Transfer Fee API
Transfer fees are now declared directly in the transfer request body. The standalone fee endpoint is no longer needed and will be retired.Onboarding/Compliance
Customer API suite for individual customers
Full API support for onboarding and verifying individual customers — enabling end-to-end KYC flows inside your own product without redirecting customers to an external page.New endpoints available:- Upload required documents
- Send and verify email OTP
- Send and verify phone OTP
- Request face liveness verification
personalInformation.taxIdentificationNumberpersonalInformation.taxIdentificationNumberTypepersonalInformation.taxIdentificationNumberCountrypersonalInformation.taxIdentificationNumberDescription
Bank AccountsWalletsTransfers
Onramper Accounts API
Onramper Accounts generate dedicated virtual bank accounts that automatically convert incoming fiat deposits into stablecoins and deliver them on-chain — no manual intervention required.- Generate dedicated bank accounts per customer or application
- Automatically convert USD/EUR deposits into USDC or USDT
- Deliver converted funds directly to any on-chain wallet address
WalletsTransfers
Starknet network support
Starknet is now supported for USDConRamp and offRamp transfers. Use "network": "starknet" in the source or destination of your transfer request.Off-ramp via Starknet:Onboarding/Compliance
Deprecating /v1/customer
/v2/customer is the new standard for creating and managing customers and will continue to receive new features. See the Customer API reference for migration details.