Overview
FreeAgent is a UK-focused accounting platform popular with freelancers and small businesses. The Automize FreeAgent connector covers invoices, bills, expenses, contacts, bank accounts, and bank transactions.
- Regions: UK-headquartered, primarily UK accounting (MTD-compliant). Also supports IE, US, AU.
- Plans: Sole Trader, Partnership, Limited Company – all expose the API. Some features (bank feeds) require subscriptions to add-ons.
Setting up the connection
Auth type: OAuth 2.0 (Authorization Code).
- Sign in at dev.freeagent.com → Create App.
- Set OAuth Redirect URI to the one shown in the Automize FreeAgent connector dialog.
- Copy OAuth Identifier (Client ID) + OAuth Secret.
- In Automize, open Settings → Connectors → FreeAgent → Add connection. Paste credentials, click Connect, sign in, pick the company.
Find your credentials at https://dev.freeagent.com/.
Rate limits
FreeAgent enforces ~120 req/min. Connector retries 429 with backoff.
Data model
Accounting primitives:
Company ─┬─ Contacts (customers + suppliers)
├─ Invoices ─── (sales)
├─ Bills ─── (purchases)
├─ Expenses
├─ Bank Accounts ─── Bank Transactions
└─ Projects (optional)Available operations
14 operations available. Click any row to jump to its detail.
| Operation | Category | What it does |
|---|---|---|
| Create Bill | General | Create a new bill |
| Create Contact | General | Create a new contact |
| Create Expense | General | Create a new expense |
| Create Invoice | General | Create a new invoice |
| Get Company | General | Get company details |
| Get Contact | General | Get contact details |
| Get Invoice | General | Get invoice details |
| List Bank Accounts | General | List all bank accounts |
| List Bank Transactions | General | List bank transactions |
| List Bills | General | List all bills |
| List Contacts | General | List all contacts |
| List Expenses | General | List all expenses |
| List Invoices | General | List all invoices |
| Send Invoice | General | Email an invoice to the contact |
Operations
Create Bill
Create a new bill
| Parameter | Required | Type | Description |
|---|---|---|---|
Bill bill | Yes | text |
Tips
- bill: {contact, dated_on, due_on, category, total_value, currency_value}.
Create Contact
Create a new contact
| Parameter | Required | Type | Description |
|---|---|---|---|
Contact contact | Yes | text |
Tips
- contact: {first_name, last_name OR organisation_name, email, contact_type}.
Create Expense
Create a new expense
| Parameter | Required | Type | Description |
|---|---|---|---|
Expense expense | Yes | text |
Tips
- expense: {user, category, dated_on, gross_value, description, attachment(base64)}.
Create Invoice
Create a new invoice
| Parameter | Required | Type | Description |
|---|---|---|---|
Invoice invoice | Yes | text |
Tips
- invoice: {contact: 'https://api.freeagent.com/v2/contacts/123', dated_on, payment_terms_in_days, invoice_items:[{description, quantity, price, sales_tax_rate}]}.
Get Company
Get company details
No input parameters.
Tips
- Returns company details + VAT registration + currency.
Get Contact
Get contact details
| Parameter | Required | Type | Description |
|---|---|---|---|
Contact Id contact_id | Yes | text |
Tips
- Returns contact + account_balance + bank details if configured.
Get Invoice
Get invoice details
| Parameter | Required | Type | Description |
|---|---|---|---|
Invoice Id invoice_id | Yes | text |
Tips
- invoice_id (URL form or numeric ID). Returns invoice + line items.
List Bank Accounts
List all bank accounts
No input parameters.
Tips
- Returns all bank accounts. Each has current_balance + transactions endpoint.
List Bank Transactions
List bank transactions
No input parameters.
Tips
- Filter by bank_account, from_date, to_date, view (unexplained, manually_uploaded).
List Bills
List all bills
No input parameters.
Tips
- Bills you owe suppliers. Filter by view (overdue_or_open_for_payment, settled, etc.).
List Contacts
List all contacts
No input parameters.
Tips
- Filter by view (active, recent_changes), contact_type (customer, supplier).
List Expenses
List all expenses
No input parameters.
Tips
- Expense claims. Filter by view, user, date range.
List Invoices
List all invoices
No input parameters.
Tips
- Filter by view (all, recent_open_or_overdue, last_30_days, etc.), contact, from_date, to_date.
- Pages 25 per call. Use per_page=100.
Send Invoice
Email an invoice to the contact
| Parameter | Required | Type | Description |
|---|---|---|---|
Invoice Id invoice_id | Yes | text |
Tips
- Emails the invoice to the contact's email. Includes a PDF + payment link.
FAQ
- Sandbox?
- Yes – dev.freeagent.com has sandbox companies. Separate API URL (api-sandbox.freeagent.com). Set sandbox=true on the connection.
- Why is my Contact URL form vs numeric?
- FreeAgent's API uses full URLs as IDs (e.g. https://api.freeagent.com/v2/contacts/123). Pass the URL on Create Invoice etc. Numeric works in some places – URL is safer.
- MTD VAT?
- FreeAgent submits VAT to HMRC under Making Tax Digital. API exposes VAT returns metadata; actual submission flow runs through FreeAgent UI.