REST API v1

Fynlo API Documentation

Access your business data programmatically. Integrate Fynlo with your tools, dashboards, and workflows.

RESTful API

Standard HTTP methods with JSON responses

Secure

API key authentication with granular scopes

Developer Friendly

Consistent pagination, filtering, and error handling

Authentication

All API requests require an API key. Create one in Settings → API Keys.

Base URL

https://api.fynloapp.com

Pass your key via X-API-Key header or Authorization: Bearer.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/invoices?page=1&page_size=10" \
  -H "X-API-Key: fynlo_your_api_key_here"

Rate Limits & Scopes

Rate Limits

Starter100 req/min
Professional1,000 req/min
Enterprise10,000 req/min

API Key Scopes

readRead-only access to all data
read,writeRead and create/update data
read,write,deleteFull access including deletes

Get business details

GET /api/v1/business

Retrieve the details of your business profile including name, email, currency, country, and industry.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/business" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": {
    "id": 1,
    "name": "Acme Corp",
    "email": "hello@acme.com",
    "currency": "USD",
    "country": "US",
    "industry": "Technology"
  }
}

List invoices

GET /api/v1/invoices

Retrieve a paginated list of invoices. Supports filtering by status, date range, and search term.

Query Parameters

ParameterTypeDescription
pageintegerPage number (default: 1)
page_sizeintegerItems per page (default: 20, max: 100)
statusstringFilter by status: draft, sent, paid, overdue, cancelled
searchstringSearch invoices by number or client name
cURL
curl -X GET "https://api.fynloapp.com/api/v1/invoices?page=1&page_size=20&status=paid&search=INV" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "invoice_number": "INV-001",
      "client_name": "John Doe",
      "amount": 1500.00,
      "status": "paid",
      "due_date": "2024-02-15"
    }
  ],
  "meta": { "total": 42, "page": 1, "page_size": 20, "pages": 3 }
}

List clients

GET /api/v1/clients

Retrieve a paginated list of clients with their contact information and outstanding balances.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/clients" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "name": "John Doe",
      "email": "john@example.com",
      "phone": "+1234567890",
      "outstanding_balance": 1200.00
    }
  ],
  "meta": { "total": 15, "page": 1, "page_size": 20, "pages": 1 }
}

List expenses

GET /api/v1/expenses

Retrieve a paginated list of expenses. Supports filtering by status and category.

Query Parameters

ParameterTypeDescription
statusstringFilter: pending, approved, rejected
categorystringFilter by expense category
cURL
curl -X GET "https://api.fynloapp.com/api/v1/expenses?status=approved" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "description": "Office Supplies",
      "amount": 85.50,
      "category": "Office",
      "status": "approved",
      "date": "2024-01-20"
    }
  ],
  "meta": { "total": 128, "page": 1, "page_size": 20, "pages": 7 }
}

Chart of accounts

GET /api/v1/accounts

Retrieve the full chart of accounts with codes, names, types, and current balances.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/accounts" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "code": "1000",
      "name": "Cash",
      "type": "asset",
      "balance": 50000.00
    }
  ]
}

Bank accounts

GET /api/v1/bank-accounts

Retrieve connected bank accounts with balances and account details.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/bank-accounts" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "bank_name": "Chase",
      "account_number": "****4567",
      "balance": 25000.00,
      "currency": "USD"
    }
  ]
}

Tax rates

GET /api/v1/tax-rates

Retrieve configured tax rates including VAT, GST, and custom rates.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/tax-rates" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "name": "VAT",
      "rate": 18.0,
      "is_default": true,
      "is_compound": false
    }
  ]
}

List vendors

GET /api/v1/vendors

Retrieve a paginated list of vendors/suppliers.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/vendors" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "name": "Supply Co",
      "email": "orders@supply.co",
      "outstanding": 3200.00
    }
  ],
  "meta": { "total": 23, "page": 1, "page_size": 20, "pages": 2 }
}

Payroll employees

GET /api/v1/payroll-employees

Retrieve payroll employee records with positions and salary information.

cURL
curl -X GET "https://api.fynloapp.com/api/v1/payroll-employees" \
  -H "X-API-Key: fynlo_your_api_key_here"
Response (JSON)
{
  "data": [
    {
      "id": 1,
      "name": "Jane Smith",
      "position": "Engineer",
      "salary": 5000.00,
      "pay_frequency": "monthly"
    }
  ]
}

Ready to integrate?

Create your API key and start building integrations in minutes.

Get Your API Key