curl -X POST https://api.finhub.com/api/v1/customers \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "X-API-Key: your_api_key_here" \
  -d '{
    "firstName": "John",
    "lastName": "Doe",
    "email": "john.doe@example.com",
    "password": "SecurePassword123!",
    "captcha": "03AGdBq26FHIOiuI9...",
    "termsAccepted": true,
    "marketingConsent": false
  }'
{
  "customerId": "cust_12345abcde",
  "email": "john.doe@example.com",
  "firstName": "John",
  "lastName": "Doe",
  "status": "PENDING_EMAIL_VERIFICATION",
  "createdAt": "2025-06-01T06:42:15Z",
  "verificationEmailSent": true
}

Profile Management

These API endpoints allow tenants to manage customer profiles in the FinCore™ platform, supporting both individual (B2C) and business (B2B) customer models with comprehensive profile management capabilities.

Use Cases

  • Retrieving customer profile information
  • Updating customer contact details
  • Managing customer preferences
  • Viewing and updating customer status
  • Retrieving verification history

Integration Notes

Profile management is a core capability of the FinCore™ platform, enabling tenants to maintain accurate and up-to-date customer information. The profile data structure supports:

  • Basic personal information
  • Contact details
  • Address information
  • Verification status
  • Compliance information

For B2B customers in the Enterprise subscription tier, additional profile fields may be available to support complex business structures and relationships.

Key Endpoints

Get Customer Profile

GET /v2/profile/{customerId}

Retrieves the complete profile information for a specific customer.

Update Customer Profile

PUT /v2/profile/{profileId}

Updates the profile information for a specific customer.

Get Customer Details

GET /v2/customer/{customerId}

Retrieves detailed information about a specific customer.

Update Customer Status

PUT /v2/persons/{customerId}/{customerStatus}

Updates the status of a specific customer.

API Reference

For interactive API documentation, see the following endpoints:

Create Individual Customer

This API endpoint allows you to create a new individual customer account in the FinHub platform.

This endpoint is part of the B2C Registration Flow. For a complete understanding of the customer registration process, please refer to the Individual Account Opening guide.

Endpoint Details

PropertyValue
URL/api/v1/customers
MethodPOST
MicroservicecustomerMicroService

Request Headers

HeaderValueDescription
Content-Typeapplication/jsonThe format of the request body
Acceptapplication/jsonThe expected response format
X-API-KeystringYour API key for authentication

Request Body

{
  "firstName": "John",
  "lastName": "Doe",
  "email": "john.doe@example.com",
  "password": "SecurePassword123!",
  "captcha": "03AGdBq26FHIOiuI9...",
  "termsAccepted": true,
  "marketingConsent": false
}
ParameterTypeRequiredDescription
firstNamestringYesCustomer’s first name
lastNamestringYesCustomer’s last name
emailstringYesCustomer’s email address (must be unique)
passwordstringYesCustomer’s password (must meet security requirements)
captchastringYesCaptcha verification token
termsAcceptedbooleanYesIndicates if the customer accepted the terms and conditions
marketingConsentbooleanNoIndicates if the customer consented to marketing communications

Response

Success Response (201 Created)

{
  "customerId": "cust_12345abcde",
  "email": "john.doe@example.com",
  "firstName": "John",
  "lastName": "Doe",
  "status": "PENDING_EMAIL_VERIFICATION",
  "createdAt": "2025-06-01T06:42:15Z",
  "verificationEmailSent": true
}
FieldTypeDescription
customerIdstringUnique identifier for the created customer
emailstringCustomer’s email address
firstNamestringCustomer’s first name
lastNamestringCustomer’s last name
statusstringCurrent status of the customer account
createdAtstringTimestamp of customer creation (ISO 8601 format)
verificationEmailSentbooleanIndicates if a verification email was sent

Error Responses

400 Bad Request

{
  "error": "VALIDATION_ERROR",
  "message": "Invalid request parameters",
  "details": [
    {
      "field": "email",
      "message": "Email address is already registered"
    }
  ]
}

429 Too Many Requests

{
  "error": "RATE_LIMIT_EXCEEDED",
  "message": "Too many requests, please try again later",
  "retryAfter": 60
}

Try It

curl -X POST https://api.finhub.com/api/v1/customers \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "X-API-Key: your_api_key_here" \
  -d '{
    "firstName": "John",
    "lastName": "Doe",
    "email": "john.doe@example.com",
    "password": "SecurePassword123!",
    "captcha": "03AGdBq26FHIOiuI9...",
    "termsAccepted": true,
    "marketingConsent": false
  }'
{
  "customerId": "cust_12345abcde",
  "email": "john.doe@example.com",
  "firstName": "John",
  "lastName": "Doe",
  "status": "PENDING_EMAIL_VERIFICATION",
  "createdAt": "2025-06-01T06:42:15Z",
  "verificationEmailSent": true
}

Next Steps

After successfully creating a customer, you should:

  1. Guide the customer to check their email for the verification link
  2. Once email is verified, proceed to Verify Phone
  3. Complete the KYC verification process using the KYC Verification APIs

Create Organization API

This endpoint allows tenants to create new business organizations in the FinCore™ platform, supporting the B2B customer model (SCT02) with comprehensive organization profile creation.

Use Cases

  • Onboarding new business customers
  • Creating organization profiles for B2B clients
  • Initiating the KYB verification process
  • Supporting multi-entity business structures
  • Enabling business customer registration workflows

Integration Notes

The organization creation API is a key component of the B2B capabilities in the FinCore™ platform. The organization creation process supports:

  • Business registration information validation
  • Business type and industry classification
  • Initial compliance risk assessment
  • Country-specific business requirements (SCT03)
  • Integration with KYB verification workflows

For Enterprise subscription tier tenants, additional organization creation features are available to support complex business structures and enhanced compliance requirements.

Request Parameters

ParameterTypeRequiredDescription
businessNamestringYesLegal name of the business
businessTypestringYesType of business entity
registrationNumberstringYesOfficial business registration number
countryOfIncorporationstringYesCountry where the business is registered
dateOfIncorporationstringYesDate when the business was incorporated
industryTypestringYesPrimary industry of the business
contactEmailstringYesPrimary contact email for the business
contactPhonestringYesPrimary contact phone for the business

Response Codes

CodeDescription
201Organization created successfully
400Invalid request parameters
401Unauthorized - Invalid API key
403Forbidden - Insufficient permissions
409Organization already exists
500Internal Server Error

Response Body

{
  "organizationId": "string",
  "businessName": "string",
  "status": "string",
  "createdAt": "string",
  "kybStatus": "string"
}

Organization Management

These API endpoints allow tenants to manage business organizations in the FinCore™ platform, supporting the B2B customer model (SCT02) with comprehensive organization profile management capabilities.

Use Cases

  • Creating new business organizations
  • Managing organization profiles and details
  • Handling organization KYB verification
  • Managing organization status and compliance
  • Retrieving organization documents and verification history

Integration Notes

Organization management is a key component of the B2B capabilities (SCT02) in the FinCore™ platform. The organization data structure supports:

  • Business details and registration information
  • Business type and industry classification
  • Corporate structure and ownership information
  • Address and contact information
  • Compliance and verification status

For Enterprise subscription tier tenants, additional organization management features are available to support complex business structures and relationships.

Key Endpoints

Create Organization

POST /v2/organization

Creates a new business organization in the system.

Get Organization Details

GET /v2/organization/{organizationId}/{status}

Retrieves detailed information about a specific organization.

Update Organization Status

PUT /v2/organization/{organizationId}/{status}

Updates the status of an organization.

Initiate KYB

PUT /v2/kyb/initiateKYBStatus/{organizationId}

Initiates the Know Your Business verification process for an organization.

API Reference

For interactive API documentation, see the following endpoints:

Profile Management

These API endpoints allow tenants to manage customer profiles in the FinCore™ platform, including retrieving, updating, and managing profile information for both individual (B2C) and business (B2B) customers.

Use Cases

  • Retrieving customer profile information
  • Updating customer contact details
  • Managing customer preferences
  • Viewing and updating customer status
  • Retrieving verification history

Integration Notes

Profile management is a core capability of the FinCore™ platform, enabling tenants to maintain accurate and up-to-date customer information. The profile data structure supports:

  • Basic personal information
  • Contact details
  • Address information
  • Verification status
  • Compliance information

For B2B customers in the Enterprise subscription tier, additional profile fields may be available to support complex business structures and relationships.

Key Endpoints

Get Customer Profile

GET /v2/profile/{customerId}

Retrieves the complete profile information for a specific customer.

Update Customer Profile

PUT /v2/profile/{profileId}

Updates the profile information for a specific customer.

Get Customer Status

GET /v2/customer/status/{customerStatus}

Retrieves customers with a specific status.

Get Verification History

GET /v2/verification-history/{customerId}

Retrieves the verification history for a specific customer.

Response Codes

CodeDescription
200Operation successful
400Invalid request parameters
401Unauthorized - Invalid API key
403Forbidden - Insufficient permissions
404Customer not found
500Internal Server Error