Business Onboarding

Overview

The Business module within the Customer API offers a suite of endpoints tailored to streamline the business creation and verification processes, alongside managing business-related documents efficiently. Here's a brief overview of what each endpoint aims to achieve:

  • Get Business Creation Parameters V2: This endpoint provides a list of required parameters and prerequisites needed to initiate the business creation process. It's a preparatory step that ensures businesses have gathered necessary information before submission.

  • Create Business V2 : Allows for the creation of a new business entity on the Ibanera platform. This endpoint is the starting point for registering a business and requires submission of detailed information such as business name, type, and identifying information.

  • Get Parameters for Business Verification V2: Once a business is created, this endpoint is used to retrieve a detailed list of parameters and documents required for verification purposes. Its role is to guide businesses through assembling the necessary documentation and data for verification.

  • Upload Business Document: Facilitates the upload of business-related documents to the platform. This endpoint is pivotal in submitting the documents necessary for business verification, such as proof of address, incorporation certificates, and more.

  • Delete Business Document: Offers functionality to remove previously uploaded documents. This endpoint is useful in case of submission errors or when a document update is necessary, thereby maintaining the accuracy and relevancy of submitted documents.

  • Submit Business Verification: Central to the verification process, this endpoint allows businesses to submit their complete set of verification data along with necessary documents. It's the culmination of the business verification preparation, where all collated information and documentation are officially submitted for review.

  • Get Verification Status: Provides businesses with the ability to check the status of their verification process. It gives real-time feedback on the review progress, including approved, pending, or required additional information, ensuring businesses are informed about their verification journey.

Each of these endpoints collectively supports businesses in their journey from creation to verification on the Ibanera platform, ensuring a structured and efficient process in becoming a recognized and verified business entity.


Get Business Creation Parameters V2

This endpoint is designed to retrieve the necessary parameters required for the Create Business endpoint, which is used to register a new business account. This endpoint provides essential data for countries, states, and entity types that are required for the creation of a business account.

  • Endpoint: /api/v2/customer/business/createparameters

  • Method: GET

Response Body Types:

The response is structured in JSON format and contains the following main elements within the details object:

  • countries: An array of country objects with:

    • id (integer): Id of country, to be matched with CountriesID for States

    • name (string): Country Name

    • isoCode (String): Country ISO Code, 3 letters - ISO 3166-1 alpha-3

  • states: An array of state objects including

    • countriesID (Integer): Id of state’s country

    • name (String): Name of state

    • ansiCode (String): ANSI Code for US states

  • productServices: An array of products and service type objects with

    • id (Integer): Id of product or service type

    • name (String): Name of product or service type

Example of a Successful Response:

{
    "id": 0,
    "details": {
        "countries": [
            {
                "name": "United States",
                "isoCode": "USA",
                "id": 1001
            }
        ],
        "states": [
            {
                "countriesID": 1001,
                "name": "Alabama",
                "ansiCode": "AL"
            }
        ],
        "productServices": [
            {
                "name": "Bank Transfers",
                "id": 1000
            }
        ]
    },
    "status": "1",
    "errors": []
}

Possible Error Message Codes:

In cases of failure or invalid requests, the response might return "status": "0" with a list of errors each containing:

  • fieldName: Indicates the request item or step that caused the error.

  • messageCode: A code identifying the specific error.


Create Business V2

The Create Business endpoint is designed to register a new business account. This POST request requires comprehensive information about both personal and business details, terms and conditions agreements, and an optional invitation send flag.

  • Endpoint: /api/v2/customer/business/create

  • Method: POST

Request Body Parameters:

  • personalDetails (JSON Object, Required): Container for personal information.

    • firstName (String, Required): First Name.

    • middleNames (String, Not Required, Nullable): Middle Names.

    • lastName (String, Required): Last Name.

    • emailAddress (String, Required): Email Address.

    • phoneNumber (String, Required): Phone Number, should include country code.

    • reference (String, Not Required): External reference for the customer.

    • currencyCode(String, Required): Currency code.

  • registeredCountryCode(String, Required): Country code where business is registered.

  • bConductsThirdPartyPayments (Boolean, Required): Flag to determine whether customer will be conducting third party payments.

  • requestedProducts(Integer array, Required): A list of products and services that the account will be used for.

  • sendInvite (Boolean, Required): Flag to send an email invite to the user to login via the User Interface. Set to false by default.

Request Body Example JSON:

{
    "personalDetails": {
        "firstName": "John",
	    "middleNames": null,
	    "lastName": "Smith",
        "reference": "User_6685",
        "currencyCode": "USD",
        "emailAddress": "user@example.com",
        "phoneNumber": "+1234567890"
    },
    "RegisteredCountryCode": "USA",
    "bConductsThirdPartyPayments": false,
    "RequestedProducts": [1000,1001],
    "sendInvite": true
}

Response Body Types:

On successful creation, the response will contain:

  • id (Integer): A numeric ID representing the operation.

  • details (JSON Object): Includes customersId and customerUsersCustomersID, identifying the created business and the user associated with it.

  • status (String): "1" indicates a successful operation.

  • errors (JSON Array): Empty for successful operations.

Example of a Successful Response:

{
  "id": 13984,
  "details": {
    "customersId": 13833,
    "customerUsersCustomersID": 14087
  },
  "status": "1",
  "errors": []
}

Possible Error Message Codes:

Similar to other endpoints, in case of failure, an error object will be included with:

  • fieldName: Field related to the error.

  • messageCode: Specific error code.

Error Message CodeDescription

Required

Named field missing, null or empty

Username_Not_Available

Email address is already in use

Invalid_PhoneNumber

Minimum length is six digits. Invalid format. Example supported formats:

+12345678910

12345678910

+1(234)567-8910

+1 (234) 567-8910

+1 2345678910

Invalid_RequestedProducts

Product not recognized

Invalid_CurrencyCode

Currency Code not found/available

Invalid_CountryISOCode

Country not found


Get Parameters for Business Verification V2

This endpoint is designed to assist in collecting the necessary parameters for submitting business verification data through the Submit Verification endpoint. By making a GET request to this endpoint, developers and users can retrieve lists of countries, states, document types, and other essential verification-related parameters.

  • Endpoint: /api/v2/customer/business/verificationparameters

  • Method: GET

Request Parameters

  • customersId (Integer, Required): The ID of the customer whose verification parameters are to be retrieved.

Response Body Types

The response consists of several arrays that include:

  • countries (JSON Array): Contains objects with necessary details for countries, including:

    • id (Integer): ID of the country.

    • countryName (String): Name of the country.

    • isoCode (ISO 3166-1 alpha-3 String): 3-letter country ISO code.

  • states (JSON Array): Contains objects with state-specific information:

    • countriesID (Integer): ID of the state’s country.

    • name (String): Name of the state.

    • ansiCode (String): ANSI code for US states and equivalent for others.

  • mainActivityTypes, sourceFundTypes, transactionVolumes, monthlyUsdEquivalents, uboReportingExemptions, regionsOfOperation , entityTypes (JSON Arrays): Lists main business activity, source fund, transaction volume, monthly USD equivalents, UBO reporting exemptions, regions of operation and business entity types required for verification.

    • id (Integer): Identifier for the type.

    • name (String): Name of the type.

  • documents (JSON Array): Contains objects with necessary details for document upload, including:

    • bRequired (Bool): True if required for verification

    • DocumentTypesId (Integer): Id of Document Type

    • DocumentNotes (String): Description of document type

    • DocumentStatus (String): Status of Customer's document:

      • Not Submitted

      • Checking

      • Approved

      • Expired

      • Rejected

    • Filename (String): Filename of uploaded document

    • Name (String): Name of document type

  • AdditionalDocuments (JSON Array): Contains objects with additional supporting documents for document upload, including:

    • bRequired (Bool): True if required for verification

    • DocumentTypesId (Integer): Id of Document Type

    • DocumentNotes (String): Description of document type

    • DocumentStatus (String): Status of Customer's document:

      • Not Submitted

      • Checking

      • Approved

      • Expired

      • Rejected

    • Filename (String): Filename of uploaded document

    • Name (String): Name of document type

Example of a Successful Response:

{
    "id": 10030,
    "details": {
        "countries": [
            {
                "id": 1001,
                "countryName": "United States",
                "isoCode": "USA"
            }
        ],
        "states": [
            {
                "countriesID": 1001,
                "name": "Alabama",
                "ansiCode": "AL"
            }
        ],
        "mainActivityTypes": [
            {
                "id": 1009,
                "name": "Accommodation and Food Services"
            }
        ],
        "sourceFundTypes": [
            {
                "id": 1006,
                "name": "Business Income"
            }
        ],
        "documents": [
            {
                "bRequired": true,
                "documentTypesId": 1001,
                "documentNotes": "Any utility bill, bank statement or similar proof of address within the last 3 months",
                "documentStatus": "0",
                "name": "Proof of Address",
                "fileName": null,
                "bSingleUploadOnly": true
            }
        ],
        "additionalDocuments": [
            {
                "bRequired": true,
                "documentTypesId": 1003,
                "documentNotes": "Any utility bill, bank statement or similar proof of address within the last 3 months",
                "documentStatus": "Not Submitted",
                "name": "Significant Parties Proof of Address",
                "fileName": null,
                "bSingleUploadOnly": false
            }
        ],
        "transactionVolumes": [
            {
                "id": 1000,
                "name": "Less than 10"
            }
        ],
        "monthlyUsdEquivalents": [
            {
                "id": 1000,
                "name": "1 to 100,000"
            }
        ],
        "uboReportingExemptions": [
            {
                "id": 1000,
                "name": "Securities reporting issuer"
            }
        ],
        "regionsOfOperation": [
            {
                "id": 1000,
                "name": "North America"
            }
        ],
        "entityTypes": [
            {
                "id": 1003,
                "name": "Corporation"
            }
        ]
    },
    "status": "1",
    "errors": []
}

Upload Business Document

The Upload Business Document endpoint allows businesses to upload documents that are necessary for the verification process of the business account. This endpoint plays a crucial role in fulfilling the document submission requirements for account verification, including proofs of address, identity, operational licenses, and other significant documentation.

  • Endpoint: /api/v1/customer/business/uploaddocument

  • Method: POST

  • Content-Type: multipart/form-data

    • This endpoint requires the 'Content-Type' to be set to 'multipart/form-data' due to the file upload requirement.

Form Parameters

  • customersId (Integer): The ID of the business customer for whom the document is being uploaded. This identifier ensures that the document is associated with the correct account.

  • bAdditionalDocument (Boolean): A flag to indicate if the document being uploaded is an additional document not explicitly required but submitted to aid in the verification process. This can be useful for providing extra evidence to expedite verification.

  • documentId (Integer): The ID referencing the type of document being uploaded, as defined by the verification parameters provided by the /verificationparameters endpoint.

  • file (File): The document file to be uploaded. The request should use multipart file upload to include the actual document file.

  • note (String, Optional): Any additional notes or comments that should accompany the document being uploaded. This can provide context or additional information relevant to the document.

Response Format

  • application/json: The response data is provided in JSON format.

Success Response Example

{
  "id": 12413,
  "status": "1",
  "errors": []
}

This response indicates that the document upload was successful, with "status": "1" denoting a successful operation and an empty "errors" array signifying no errors occurred during the process.

Error Message CodeDescription

Required

Named field missing, null or empty

Unauthorized

User is not permitted to edit Customer’s files

Invalid_FileName

File not found

Invalid_DocumentTypesID

Valid document types available at /api/v1/customer/business/verificationparameters


Get Business Verification Status

The Get Business Verification Status endpoint of the Customer API retrieves the current verification status of a business customer.

Endpoint Description

  • Endpoint: /api/v1/customer/businesses/getverificationstatus

  • Method: GET

  • Query Parameters:

    • customersId (Integer): Identifier of the managed business customer. This parameter is required.

Response Body Types

  • status (Integer): Indicates the operation's success (1) or failure (0).

  • errors (String array): List of errors if the operation fails.

  • details (Object):

    • businessVerificationStep (String): The current verification step such as Not Started, In Progress, Submitted, Verified.

    • documents (Array): Details about documents uploaded.

      • fileName (String): Name of the file.

      • bUploaded (Bool): True if the document is uploaded.

      • bRejected (Bool): True if the document is rejected.

      • bVerified (Bool): True if the document is verified.

      • documentStatus (String): Status of the document e.g., Not Submitted, Checking, Approved.

      • uploadNotes (String): Notes associated with the document upload.

      • documentId (Integer): Identifier of the Document Type.

      • rejectionReason (String): Reason for document rejection, if any.

  • additionalDocuments (Array): Similar structure to documents for additional documents submitted.

Example of a Successful Response

{
  "id": 13830,
  "details": {
    "businessVerificationStep": "InProgress",
    "documents": [
      {
        "fileName": null,
        "bUploaded": false,
        "bRejected": false,
        "bVerified": false,
        "documentStatus": "Not Submitted",
        "uploadNotes": null,
        "documentId": 1000,
        "rejectionReason": null
      }
    ],
    "additionalDocuments": [
      {
        "fileName": "examplepdf.pdf",
        "bUploaded": true,
        "bRejected": false,
        "bVerified": false,
        "documentStatus": "Checking",
        "uploadNotes": null,
        "documentId": 1000,
        "rejectionReason": null
      }
    ]
  },
  "status": "1",
  "errors": []
}

Possible Error Message Codes

  • Unauthorized: The user is not permitted to use the endpoint.

  • Required: Named field missing, null or empty

  • Invalid_CustomersId: The customersId parameter is invalid.

  • Business_Account_Not_Found: No business account found for the given customersId.


Delete Business Document

This section documents the Delete Business Document endpoint of the Customer API, used for removing a verification document associated with a business customer.

Endpoint Description

  • Endpoint: /api/v1/customer/business/deletedocument

  • Method: POST

  • Content-Type: application/json

Request Body Parameters

  • customersId (Integer): Identifier of the managed business customer. This parameter is required.

  • documentId (Integer): Identifier of the document to be deleted. This parameter is required.

  • filename (String): Name of the file to delete. This parameter is required.

  • bAdditionalDocument (Bool): Indicates whether the document is listed in the additional documents list in verificationparameters response. This parameter is required.

Request Body Example

{
  "bAdditionalDocument": false,
  "customersId": 13830,
  "documentId": 1000,
  "filename": "examplepdf.pdf"
}

Success Response Body Types

  • status (Integer): Indicates the operation's success (1) or failure (0).

  • errors (String array): List of errors if the operation fails.

  • details (Object):

    • bSuccess (Bool): True if the document was successfully deleted.

Example of a Successful Response

{
  "id": 1,
  "details": {
    "bSuccess": true,
    "details": null,
    "errors": []
  },
  "status": "1",
  "errors": []
}

Possible Error Message Codes

  • Unauthorized: The user is not permitted to use the endpoint.

  • Required: Named field missing, null or empty

  • Invalid_FileName: Indicated an issue with the file name provided.

  • Invalid_DocumentTypesID: The documentId provided is not valid.

  • Invalid_FileSize: The file size exceeds the maximum limit allowed.


Submit Business Verification

The Submit Business Verification endpoint is designed for submitting the comprehensive verification details of a business customer. This involves critical information relating to the company's ownership structure, main business activities, capital, investments, and anticipated activity, among others. This information is crucial for the completion of the business verification process.

  • Endpoint: /api/v3/customer/business/submitverification

  • Method: POST

Request Body Parameters:

  • customersID (Integer): Id of the managed business account

  • registrationInformation (JSON Object): Contains registration details for the business

    • entityName (String, Required): Legal name of entity

    • entityTypesID (Integer, Required): Type of business entity

    • entityTypeOther (String): Type of business entity if the type 'Other' is specified in as entityTypesID

    • registrationDate (Datetime, Required): Date of business registration

    • registrationNumber (String, Required): Official registration number

    • taxNumber (String, Required): Tax ID number

    • doingBusinessAs (String, Required): List of all business names

    • addressStreet (String, Required): Registered address street

    • addressNumber (String, Required): Registered address unit number

    • addressPostCode (String, Required): Registered address zip/postal code

    • addressCity (String, Required): Registered address city

    • addressState (String, Required): Registered address state/county/province as applicable

    • addressCountry (String, Required): Registered address country code

    • operatingAddressStreet (String): Operating address street. Required if any other operating address field is entered

    • operatingAddressNumber (String): Operating address unit number. Required if any other operating address field is entered

    • operatingAddressPostCode (String): Operating address zip/postal code. Required if any other operating address field is entered

    • operatingAddressCity (String): Operating address city. Required if any other operating address field is entered

    • operatingAddressState (String): Operating address state/county/province as applicable. Required if any other operating address field is entered

    • operatingAddressCountry (String): Operating address country code. Required if any other operating address field is entered

  • operationsInformation (JSON Object): Contains operations details for the entity

    • webAddress (String): Website address of entity

    • phoneNumber (String): Business phone number

    • supportEmail (String): Business support email

    • bPubliclyListed (String, Required): Is the business publicly listed. Value must be "Yes", "No" or "NA"

    • ticker (String): Trading symbol of the listed company. Required if publicly listed

    • exhcanges (String): Exchange(s) where company is listed

    • operationRegionIds (Integer Array, Required): Regions of business operations

    • bLicenseRequired (String, Required): Does the business require a license. Value must be "Yes", "No" or "NA"

    • additionalLicensingInfo (String): Additional licensing information

    • financialInstitutionFormFileName (String): File name of financial institution form

    • businessActivityIds (Integer Array, Required): Main business activity types

    • web3ChainsAndAddresses (String): If the entity uses Web3 for transactions, any blockchain and blockchain addresses

    • sourceOfFundsIds (Integer Array, Required): Source of funds types

    • sourceOfFundsOther (String): Other source of fund type. Required if 'Other' source fund type is chosen.

    • activeBanks (String, Required): Name of bank(s) for which the business currently holds an active account

    • yearlyTransactionsId (Integer, Required): Anticipated yearly number of transactions type

    • monthlyUsdValueId (Integer, Required): Anticipated monthly US dollar equivalent

  • ownerInformation (JSON Object): Contains information about beneficial owners of the business

    • exemptionId (Integer): UBO Exemption type, if applicable.

    • authorizedSigner (String, Required): An individual that is an authorized signer for the organisation

    • bConfirmAboveTen (Boolean): Confirmation that applicant has included all beneficial owners with 10% or more ownership.

    • individualBeneficialOwners (JSON Object, all elements are required. At least one controlling party is required, unless the entity has a UBO exemption): Contains objects with necessary details for Significant Parties - all beneficial owners and/or control persons

      • number (Integer): Individual beneficial owner number. Should be numbered 1 to N, where N is the number of individual beneficial owners in total

      • guid(String): Individual beneficial owner guid. Used to identify individual beneficial owner in beneficialOwnersStructure object.

      • firstName (String): First name

      • lastName (String): Last name

      • title (String): Title of individual

      • dateOfBirth (Date): Date of Birth in format ‘yyyy-mm-dd’.

      • nationality (String, Country ISO Code, 3 letters - ISO 3166-1 alpha-3): Nationality country

      • email (String): Individual's email address

      • phoneNumber (String): Phone number, must include country code

      • country (String, Country ISO Code, 3 letters - ISO 3166-1 alpha-3): Country of individual's current citizenship

      • ssn (String): SSN/ Tax Id Number

      • stateProvince (String, For USA, use ISO 3166-2:US code. E.g. US-FL): State or Province

      • city (String)

      • addressLine1 (String): Address Line 1

      • addressLine2 (String, Optional): Address Line 2

      • postcode (String): Postcode or ZIP code

      • proofOfAddressFileName (String): Proof of address filename. File should be uploaded via uploaddocument, using documentId matching ‘Significant Parties Proof of Address’.

    • businessBeneficialOwners (JSON Object): Contains objects with necessary details for all entities which are beneficial owners

      • number (Integer): Business beneficial owner number. Should be numbered 1 to N, where N is the number of business beneficial owners in total

      • guid(String): Business beneficial owner guid. Used to identify business beneficial owner in beneficialOwnersStructure object.

      • entityName (String, Required): Legal name of entity

      • entityTypesID (Integer, Required): Type of business entity

      • registrationDate (Datetime, Required): Date of business registration

      • registrationNumber (String, Required): Official registration number

      • taxNumber (String, Required): Tax ID number

      • doingBusinessAs (String, Required): List of all business names

      • addressStreet (String, Required): Registered address street

      • addressNumber (String, Required): Registered address unit number

      • addressPostCode (String, Required): Registered address zip/postal code

      • addressCity (String, Required): Registered address city

      • addressState (String, Required): Registered address state/county/province as applicable

      • addressCountry (String, Required): Registered address country code

      • operatingAddressStreet (String): Operating address street. Required if any other operating address field is entered

      • operatingAddressNumber (String): Operating address unit number. Required if any other operating address field is entered

      • operatingAddressPostCode (String): Operating address zip/postal code. Required if any other operating address field is entered

      • operatingAddressCity (String): Operating address city. Required if any other operating address field is entered

      • operatingAddressState (String): Operating address state/county/province as applicable. Required if any other operating address field is entered

      • operatingAddressCountry (String): Operating address country code. Required if any other operating address field is entered

    • beneficialOwnersStructure (JSON Array): A list of objects of type OwnershipTreeDto, representing the direct beneficial owners of the onboarding business. Required unless a UBO Exemption is given.

  • documentsUpload (JSON Array): Document Upload

    • DocumentTypesID (Integer, Required)

    • FileName (String, Required): Name of file

  • terms (JSON Object): Customer's confirmation

    • bTaxAcknowledgement (Boolean, Required): Indicates whether customer agrees to "I confirm that the entity applying for the account is up to date and compliant with all applicable tax laws and regulations for which the entity would be responsible"

    • bFatcaAcknowledgement (Boolean, Required): Indicates whether customer agrees to "I do confirm that I am in full compliance with the Foreign Account Tax Compliance Act (FATCA)"

    • bConfirmTrueAndCorrect (Boolean, Required): Indicates whether customer agrees to "I confirm that the information provided is true and correct. I will notify, in writing, any changes to the information provided. I am aware that all or part of the information provided in this questionnaire may be transferred to the tax administrator or to any other institution in accordance with international treaties or agreements, as well as the United States regarding automated exchange of information on financial accounts"

    • bAcceptTerms (Boolean, Required): Indicates whether customer agrees to "I agree to use the services of Ibanera LLC only for legitimate purposes. I acknowledge that false or incorrect information provided could require reports to regulators or law enforcement resulting in termionation of business relations"

OwnershipTreeDto

  • bIsBusiness(Boolean, Required) True if owner is a business/entity, false if owner is an individual.

  • ownersGuid (String, Required) Must match a guid from businessBeneficialOwners or individualBeneficialOwners according whether bIsBusiness is true or false.

  • percentageOwned (Decimal, Required): Percentage Shares Owned

  • position (String): Individual's position in the company. Required if owner is an individual, must be null otherwise.

  • bControllingParty (Boolean): True if the individual is the controlling party. Required if owner is an individual, must be null otherwise.

  • children(JSON Array): A list of objects of type OwnershipTreeDto, representing the direct beneficial owners of the owner business. Must be null if the owner is an individual

Beneficial Owners Structure Validation

Validation errors pertaining to an object in Benefical Owners Structure will be referenced by a path of the form BeneficialOwnersStructure[i].Children[j].....Children[k] using zero-indexing to identify the specific object in BeneficialOwnersStructure.

FieldNameMessage CodeDescription

OwnerInformation.BeneficialOwnersStructure

GUIDs must be distinct

GUIDs of the top level objects in beneficialOwnersStructure must be distinct

OwnerInformation.[[Path]].Children

GUIDs must be distinct

GUIDs of the top level objects in children must be distinct

OwnerInformation.[[Path]].bIsBusiness

Required

bIsBusiness must be true or false

OwnerInformation.[[Path]].OwnersGuid

Not Found

OwnersGuid not found on list of business/individual owners

OwnerInformation.[[Path]].OwnersGuid

Invalid

Every beneficial business owner should occur at least once in the ownership tree with Children not null

OwnerInformation.[[Path]].OwnersGuid

Repeated Children

Every beneficial business owner should occur at most once in the ownership tree with Children not null

OwnerInformation.[[Path]].OwnersGuid

Business cannot be direct owner of itself

A business cannot appear in BeneficialOwnersStructure as a direct child of itself

OwnerInformation.[[Path]].PercentageOwned

PercentageOwned must be between 0 and 100

PercentageOwned must be between 0 and 100

OwnerInformation.[[Path]].bControllingParty

Required

bControllingParty is required for individual owners

OwnerInformation.[[Path]].bControllingParty

Invalid

bControllingParty must be null for business owners

OwnerInformation.[[Path]].PositionAtCompany

Required

PositionAtCompany is required for individual owners

OwnerInformation.[[Path]].PositionAtCompany

Invalid

PositionAtCompany must be null for business owners

OwnerInformation.[[Path]].Children

Invalid

Children must be null for individual owners

OwnerInformation.[[Path]].Children

A controlling party is required

At least one object in Children should be have bControllingParty as true

Submit Business Verification Request Body JSON Example

{
   "customersID": 14347,
  "registrationInformation": {
    "entityName": "Solid State Account Company",
    "entityTypesID": 1003,
    "entityTypeOther": null,
    "registrationDate": "2000-01-01",
    "registrationNumber": "123456789",
    "taxNumber": "123456789",
    "doingBusinessAs": "Auxiliary Wireless Company",
    "addressStreet": "747 Prosacco Stravenue",
    "addressNumber": "up House",
    "addressPostCode": "12345",
    "addressCity": "La Mesa",
    "addressState": "NY",
    "addressCountry": "USA",
    "operatingAddressStreet": null,
    "operatingAddressNumber": null,
    "operatingAddressPostCode": null,
    "operatingAddressCity": null,
    "operatingAddressState": null,
    "operatingAddressCountry": null
  },
  "operationsInformation": {
    "webAddress": "www.mycompany.com",
    "phoneNumber": "123456789",
    "supportEmail": "support@email.com",
    "bPubliclyListed": "NA",
    "ticker": null,
    "exchanges": null,
    "operationRegionIds": [
      1000
    ],
    "bLicenseRequired": "NA",
    "additionalLicensingInfo": null,
    "primaryRegulator": null,
    "licenseNumber": null,
    "financialInstitutionFormFileName": null,
    "businessActivityIds": [
      1009
    ],
    "web3ChainsAndAddresses": "293583498y5fr",
    "sourceOfFundsIds": [
      1006
    ],
    "sourceOfFundsOther": null,
    "activeBanks": "My Bank",
    "yearlyTransactionsId": 1000,
    "monthlyUsdValueId": 1000
  },
  "ownerInformation": {
    "exemptionId": null,
    "businessBeneficialOwners": [
      {
        "number": 1,
        "guid":"0553a3dc-4615-4fa6-bb4f-e51ac3893e61",
        "entityName": "Neural Keyboard Company",
        "entityTypesID": 1003,
        "entityTypesOther": null,
        "registrationDate": "2000-01-01",
        "registrationNumber": "123456789",
        "taxNumber": "123456789",
        "doingBusinessAs": "Online Ball Company",
        "addressStreet": "547 Haag Rest",
        "addressNumber": "Indiana Block",
        "addressPostCode": "12345",
        "addressCity": "Justynfurt",
        "addressState": "NY",
        "addressCountry": "USA",
        "operatingAddressStreet": null,
        "operatingAddressNumber": null,
        "operatingAddressPostCode": null,
        "operatingAddressCity": null,
        "operatingAddressState": null,
        "operatingAddressCountry": null
      }
    ],
    "individualBeneficialOwners": [
      {
        "number": 1,
        "guid":"f82de508-37b9-4cc8-901a-11498e1d0603",
        "firstName": "Alan",
        "lastName": "Von",
        "title": "Mr",
        "dateOfBirth": "1988-04-21",
        "nationality": "GBR",
        "email": "email1@example.co.uk",
        "phoneNumber": "123456789",
        "country": "GBR",
        "ssn": "123456789",
        "stateProvince": "Yorkshire",
        "city": "Schimmelfurt",
        "addressLine1": "9907 Alexa Ways",
        "addressLine2": "No. 1",
        "postcode": "HU5 8EZ",
        "proofOfAddressFilename": "sgp1.pdf"
      },
      {
        "number": 2,
        "guid":"9d597eca-ecd2-4580-8376-98ddf6ef3825",
        "firstName": "Ned",
        "lastName": "Mills",
        "title": "Mr",
        "dateOfBirth": "1988-04-21",
        "nationality": "GBR",
        "email": "email2@example.co.uk",
        "phoneNumber": "123456789",
        "country": "GBR",
        "ssn": "123456789",
        "stateProvince": "Yorkshire",
        "city": "Fargo",
        "addressLine1": "93513 Grady Manors",
        "addressLine2": "No. 1",
        "postcode": "HU5 8EZ",
        "proofOfAddressFilename": "sgp2.pdf"
      }
    ],
    "beneficialOwnersStructure": [
      {
        "bIsBusiness": true,
        "ownersGuid": "0553a3dc-4615-4fa6-bb4f-e51ac3893e61",
        "percentageOwned": 44,
        "bControllingParty": null,
        "positionAtCompany": null,
        "children": [{
            "bIsBusiness": false,
            "ownersGuid": "9d597eca-ecd2-4580-8376-98ddf6ef3825",
            "percentageOwned": 13,
            "bControllingParty": true,
            "positionAtCompany": "Boss",
            "children": null
        }]
      },
      {
        "bIsBusiness": false,
        "ownersGuid": "f82de508-37b9-4cc8-901a-11498e1d0603",
        "percentageOwned": 12,
        "bControllingParty": true,
        "positionAtCompany": "CEO",
        "children": null
      }],
    "authorizedSigner": "Jay Ell",
    "bConfirmAboveTen":true
  },
  "terms": {
    "bTaxAcknowledgement": true,
    "bFatcaAcknowledgement": true,
    "bConfirmTrueAndCorrect": true,
    "bAcceptTerms": true
  },
  "documentsUpload": [
    {
      "documentTypesID": 1001,
      "fileName": "file1001.pdf"
    },
    {
      "documentTypesID": 1002,
      "fileName": "file1002.pdf"
    },
    {
      "documentTypesID": 1003,
      "fileName": "file1003.pdf"
    },
    {
      "documentTypesID": 1007,
      "fileName": "file1007.pdf"
    }
  ]
}

Response Body Parameters

  • status (Integer): 1 if success, 0 if failure

  • errors (Array): List of errors (if present)

  • details (JSON Object)

    • customersId (Integer): Customer Id of the new business

    • businessVerificationStep (String): State of business verification: Not Started, In Progress, Submitted, Verified

Response Body JSON Example

{
    "id": 13830,
    "details": {
        "customersId": 13830,
        "businessVerificationStep": "Submitted"
    },
    "status": "1",
    "errors": []
}

Potential Error Codes

Error Code MessageDescription

Required

Required field not provided

Invalid_RegistrationInformation_EntityTypesID

Entity type not found

Invalid_RegistrationInformation_AddressCountry

Country not found

Invalid_RegistrationInformation_AddressState

State not found

Invalid_RegistrationInformation_OperatingAddressCountry

Country not found

Invalid_RegistrationInformation_OperatingAddressState

State not found

Invalid_OperationsInformation_bPubliclyListed

Value must be "Yes", "No" or "NA"

Invalid_OperationsInformation_OperationRegionIds

Id not found

Duplicated_OperationsInformation_OperationRegionIds

Ids must not be duplicated

Invalid_OperationsInformation_bLicenseRequired

Value must be "Yes", "No" or "NA"

Invalid_OperationsInformation_BusinessActivityIds

Id not found

Duplicated_OperationsInformation_BusinessActivityIds

Ids must not be duplicated

Invalid_OperationsInformation_SourceOfFundsIds

Id not found

Duplicated_OperationsInformation_SourceOfFundsIds

Ids must not be duplicated

Invalid_OperationsInformation_YearlyTransactionsId

Id not found

Invalid_OperationsInformation_MonthlyUsdValueId

Id not found

Invalid_OwnerInformation_ExemptionId

Id not found

Invalid_OwnerInformation_BusinessBeneficialOwners

Should be null if business exempt

Invalid_OwnerInformation_IndividualBeneficialOwners

Should be null if business exempt

Invalid_OwnerInformation_BusinessBeneficialOwners_Number

Numbers should be distinct and consecutive starting at 1

Invalid_OwnerInformation_BusinessBeneficialOwners_EntityTypesID_[[Number]]

Entity type Id not found for beneficial business owner number [[Number]]

Invalid_OwnerInformation_BusinessBeneficialOwners_AddressCountry_[[Number]]

Country not found for beneficial business owner number [[Number]]

Invalid_OwnerInformation_BusinessBeneficialOwners_AddressState_[[Number]]

State not found for beneficial business owner number [[Number]]

Invalid_OwnerInformation_BusinessBeneficialOwners_OperatingAddressCountry_[[Number]]

Country not found for beneficial business owner number [[Number]]

Invalid_OwnerInformation_BusinessBeneficialOwners_OperatingAddressState_[[Number]]

State not found for beneficial business owner number [[Number]]

Invalid_OwnerInformation_IndividualBeneficialOwners_Number

Numbers should be distinct and consecutive starting at 1

Invalid_OwnerInformation_IndividualBeneficialOwners_Email

Emails of individual beneficial owners must be distinct

Invalid_OwnerInformation_IndividualBeneficialOwners_Country_[[Number]]

Country not found for individual beneficial owner [[Number]]

Invalid_OwnerInformation_IndividualBeneficialOwners_Nationality_[[Number]]

Nationality not found for individual beneficial owner [[Number]]

Invalid_OwnerInformation_IndividualBeneficialOwners_StateProvince_[[Number]]

State not found for individual beneficial owner [[Number]]

Invalid_OwnerInformation.bConfirmAboveTen

bConfirmAboveTen must be true unless business has UBO exemption

Invalid_DocumentUpload_DocumentTypesID

Only one file per document type is allowed

Invalid_DocumentUpload_FileNames

Files must be distinct

Invalid_DocumentUpload_DocumentTypesID_[[DocumentTypesID]]

Type not found

Invalid_DocumentUpload_FileName_[[DocumentTypesID]]

File with document type [[DocumentTypesID]] not found

Last updated