Getting Started

This guide will walk you through setting up your account, creating your first tenant organization, and making your first API calls to our ledger service.

Prerequisites

Before you begin, you'll need:

  • A valid email address for account registration
  • Basic understanding of REST APIs
  • A tool for making HTTP requests (curl, Postman, or your favorite HTTP client)

Step 1: Create Your Account

First, register for an account on our platform:

curl -X POST https://api.sandbox.whocomply.com/v1/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "admin@yourfintech.com",
    "password": "YourSecurePassword123!",
    "first_name": "John",
    "last_name": "Doe"
  }'
  • Name
    email
    Type
    string
    Description

    Your email address - this will be your login username

  • Name
    password
    Type
    string
    Description

    A secure password (minimum 8 characters)

  • Name
    first_name
    Type
    string
    Description

    Your first name

  • Name
    last_name
    Type
    string
    Description

    Your last name

Expected Response

{
  "success": true,
  "data": {
    "user": {
      "id": "user_abc123",
      "email": "admin@yourfintech.com",
      "first_name": "John",
      "last_name": "Doe",
      "status": "active",
      "created_at": "2025-01-15T10:30:00Z"
    }
  },
  "message": "User registered successfully"
}

Step 2: Login and Get Your JWT Token

Once registered, login to get your authentication token:

curl -X POST https://api.sandbox.whocomply.com/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "admin@yourfintech.com",
    "password": "YourSecurePassword123!"
  }'

Save Your Token

{
  "success": true,
  "data": {
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
    "user": {
      "id": "user_abc123",
      "email": "admin@yourfintech.com",
      "first_name": "John",
      "last_name": "Doe"
    }
  },
  "message": "Login successful"
}

Step 3: Create Your Organization (Tenant)

Now create your organization/tenant. This is where all your ledger data will be isolated:

curl -X POST https://api.sandbox.whocomply.com/v1/tenants \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Your Fintech Limited",
    "slug": "your-fintech",
    "business_type": "wallet"
  }'
  • Name
    name
    Type
    string
    Description

    Your company or organization name

  • Name
    slug
    Type
    string
    Description

    A URL-friendly identifier (lowercase, hyphens allowed)

  • Name
    business_type
    Type
    string
    Description

    Type of business: wallet, exchange, lending, payment_processor, or other

Tenant Created Successfully

{
  "success": true,
  "data": {
    "tenant": {
      "id": "tenant_xyz789",
      "name": "Your Fintech Limited",
      "slug": "your-fintech",
      "business_type": "wallet",
      "status": "active",
      "created_at": "2025-01-15T10:35:00Z"
    }
  },
  "message": "Tenant created successfully"
}

Step 4: Generate API Keys

For production integrations, you'll want to use API keys instead of JWT tokens:

curl -X POST https://api.sandbox.whocomply.com/v1/tenants/tenant_xyz789/api-keys \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "production-backend",
    "scopes": ["transactions:write", "accounts:read", "balances:read"]
  }'
  • Name
    name
    Type
    string
    Description

    A descriptive name for this API key

  • Name
    scopes
    Type
    array
    Description

    Array of permission scopes for this key

Available Scopes

ScopeDescription
transactions:readRead transaction history
transactions:writeCreate and post transactions
accounts:readRead account information
accounts:writeCreate and modify accounts
balances:readQuery account balances
reports:readGenerate reports
webhooks:manageManage webhook configurations

API Key Response

{
  "success": true,
  "data": {
    "api_key": {
      "id": "key_def456",
      "name": "production-backend",
      "key": "lsk_live_abc123def456...",
      "scopes": ["transactions:write", "accounts:read", "balances:read"],
      "created_at": "2025-01-15T10:40:00Z"
    }
  },
  "message": "API key created successfully"
}

Step 5: Test Your Setup

Verify everything is working by fetching your user profile:

curl -X GET https://api.sandbox.whocomply.com/v1/user \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

And list your tenants:

curl -X GET https://api.sandbox.whocomply.com/v1/tenants \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

What's Next?

🎉 Congratulations! You've successfully set up your account and tenant organization. Here's what you can do now:

Currently Available

Coming Soon (Q1 2025)

  • Account Management: Create and manage your chart of accounts
  • Transaction Processing: Post transactions and maintain double-entry books
  • Balance Queries: Real-time balance lookups and reporting
  • Webhook Events: Get notified of important events in real-time

Join the Beta Program

Want early access to our transaction processing features? Email us at beta@whocomply.com with:

  • Your tenant ID
  • Your use case and expected transaction volume
  • Any specific requirements for your business

Need Help?

Our team is here to help you succeed. Reach out at support@whocomply.com if you have any questions.

Was this page helpful?