Individuals
sFOX aims to provide a seamless onboarding experience for both our partners and end users alike.
This guide is designed to provide helpful information for assisting partners integrating into the sFOX platform for end user onboarding.
Overview
The following steps are necessary to create an individual end user account and provide required documentation to enable transacting as quickly as possible.
Complete OTP Code Verification (if applicable)
The above steps can be represented in a flowchart:

Additional Requirements
While the above steps are sufficient to complete onboarding and enable transacting for a majority of end users, sFOX may require additional information for certain individuals in certain scenarios. These scenarios are defined in the sections below:
Best Practices
Finally, each partner will design their own unique and exciting experience for their end users. In a general sense, sFOX is happy to provide best practices for integrating with the Connect platform.
Onboard an Individual End User
Create Individual End User
The following attributes are required when creating a new individual end user.
Name: first name and last name
Address: Primary residence (street address, city, postal code, state/province, country)
Email Address: user's email address, used in the onboarding process while verifying OTP code
Phone Number: user's phone number, used in the onboarding process while verifying OTP code
Date of Birth: user's date of birth
National Identity Number
U.S. Residents: Social Security Number (SSN)
Non-U.S. Residents: Passport number and issuing country
Account Purpose: The primary intended use of the account
Create a new end user by submitting a Create End User request.
curl --location 'https://api.sfox.com/v1/enterprise/register-account' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ${ENTERPRISE_API_KEY}' \
--data-raw '{
"user_id": "<specify a unique id>",
"account_type": "individual",
"account_role": "client",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"phone_country_code": "US",
"phone_number": "+19171119999",
"account_purpose": "investing",
"source_of_funds": "employment",
"source_of_funds_other": null,
"advisor_user_id": null,
"individual": {
"dob": "1990-10-15",
"residential_country_code": "US",
"residential_address": "123 Main St",
"residential_city": "Los Angeles",
"residential_state": "CA",
"residential_postal_code": "90403",
"id_type": "ssn",
"id_number": "XXXXXXXXX",
"id_country_code": "US"
}
}'
End User Status & Requirements
Upon end user creation, sFOX will return a status (status
) and list of requirements (requirements
).
The requirements
object specifically relates to OTP code verification for the end user's email address and phone number codes as part of the onboarding process.
You should interpret the
requirements
object as "is OTP code verification for email and/or phone number outstanding?"If
email
orsms
=true
, then that means the requirement is not met. Iffalse
that means the requirement is no longer outstanding.
If status
= VERIFIED
the end user is approved and able to deposit and trade on sFOX. Continue to Step 4: ID Verification to complete onboarding and enable withdrawals.
sFOX continuously monitors transaction activity. If certain patterns are observed, the end user may only be able to transact a limited amount. In this case, an sFOX team member will reach out to you.
Example of an end user who has been approved and onboarded to sFOX:
{
"data": {
"user_id": "example_individual_123",
"status": "VERIFIED",
"requirements": {
"email": false,
"sms": false
}
}
}
OTP Code Verification (if applicable)
If the end user's status = Pending
and requirements
object lists email
and/or sms
= true
, the end user must complete OTP code verification. Follow these steps to complete OTP code verification:
Step 3A: Trigger OTP Code
Initiate an OTP verification code to the end user via a Create Verification Code request.
Initiate an OTP verification code to the end user's email address
curl -X POST \
-H "Authorization: Bearer ${ENTERPRISE_API_KEY}" \
--data '{ "type": "email" }' \
'https://api.sfox.com/v1/enterprise/users/send-verification/${USER_ID}'
Step 3B: Collect OTP Code from End User
Collect the OTP code directly from your end user.
Step 3C: Verify OTP Code
Confirm the OTP verification code and complete the requirement by submitting the code collected from your end user to sFOX via a Confirm Verification Code request.
Confirm an email OTP verification code:
curl -X POST \
-H 'Content-type: application/json' \
-H "Authorization: Bearer ${ENTERPRISE_API_KEY}" \
--data '{ "type": "email", "otp": "12345" }' \
"https://api.sfox.com/v1/enterprise/users/verify/${USER_ID}"
ID Verification
Submit a photo of a government-issued photo ID (e.g. driver’s license or passport) in a Submit Document API request.
curl --location 'https://api.sfox.com/v1/enterprise/ddq/upload' \
--header 'Authorization: Bearer ${ENTERPRISE_API_KEY}' \
--form 'files=@"${PATH_TO_FILE}"' \
--form 'user_id="${USER_ID}"' \
--form 'file_types="{\"${FILE_NAME}\":\"${DOCUMENT_TYPE}\"}"'
High-Risk Requirements
An end user may be considered "high risk" due to certain conditions. Example of such conditions include, but are not limited to:
Residing in a high-risk geographical region
65 years of age or older
High-volume transactors
In these cases, sFOX will request some or all of the following information about the end user’s source of funds and expected use in the form of an EDD request for the end user. Learn more about Enhanced Due Diligence (EDD) here.
Source of Funds
Source of funds: Primary source of funds being transferred to the account
sFOX recommends specifying source of funds upon end user creation to minimize requests for additional information later on
Employment status: End user’s employment status
Occupation: End user’s primary occupation
Intermediary Status: Is the end user receiving or sending funds on behalf of someone other than themselves?
Expected Use
Expected Monthly Transfer Volume: Expected monthly USD notional amount to be transferred (sent / received)
Monitor for Additional Requirements
As noted above, sFOX may require additional information about an end user beyond the initial account creation information.
It is important your application monitors for EDD requests. For additional details regarding EDD and completing EDD requests, see our Enhanced Due Diligence (EDD) guide.
Proof of Address Documentation
Similar to the high-risk individual scenario, sFOX may require proof of address for certain end users; examples where Proof of Address will be requested include:
Conflicting location data: ID and address in different regions
Unable to validate location: sFOX was unable to validate the end user’s residential address
As needed: when a high risk individual has not previously fulfilled this requirement
Best Practices
How you onboard end users can have a significant impact on onboarding conversion:
Rate: the percentage of end users who successfully complete onboarding
Time: the amount of time required for an end user to successfully complete onboarding
Steps: the number of steps your end user and application must complete before funding and trading
To that end, sFOX would like to provide a series of recommendations and best practices below:
1. Collecting KYC Information from End Users
In addition to the basic information required to create an end user, sFOX recommends collecting the following from individual end users during your onboarding process:
In doing so, you avoid having to collect additional information from the end user later on that may be required by sFOX is certain cases.
2. Creating End Users
Include optional information such as the following when creating an end user:
Source of Funds (
source_of_funds
)
In doing so, you can reduce the likelihood of requests for additional information after the end user is created.
3. Link a Bank Accounts via Plaid
After an end user has reached status
=VERIFIED
, we highly recommend directing the end user to link a bank account via Plaid for the following reasons:
Proof of Address: Linking a bank account via Plaid may fulfill the proof of address requirement for the end user resulting in faster onboarding in fewer steps and avoiding document collection requirements for fulfilling proof of address, which tends to be low conversion.
Account Funding / ACH: U.S. bank accounts linked via Plaid instantly gain access to the ACH payment rail whereas bank accounts linked via API are required to complete micro-deposit verification before ACH may be enabled, which can take up to 5 business days to complete.
4. Submit ID Documents
After an end user has reached status
=VERIFIED
, we recommend collecting and submitting ID documents rather than waiting for an EDD request for them.
Last updated