LocalForces
Documentation

LocalForces documentation

How to run your agency on LocalForces, from your first client to your first placement, with live examples.

Getting started

What LocalForces does

An applicant tracking system for recruiting agencies: clients, requests, a private talent pool, pipelines and placements in one place.

LocalForces follows the way an agency actually works. A client sends you a request (a role to fill). You position candidates from your talent pool on that request and move them through the client’s pipeline until one is placed. The placement records the engagement and the fee you earn.

  • Clients: the companies you recruit for, each with its own pipeline and terms.
  • Requests: the roles a client asked you to fill.
  • Talent pool: your agency’s private candidates. Other agencies never see them.
  • Positionings: a candidate on a request, moving through the pipeline.
  • Placements: the hire, with rates, salary and your fee.
Everything you store belongs to your agency only. LocalForces is multi-tenant: every record carries your agency, and every query is filtered on it.

Getting started

First steps

Create your agency, invite your team and add your first client in about ten minutes.

  1. 1Sign up at /signup with your agency name. Your workspace gets its own address (your-agency.localforces.com) and a 14-day trial.
  2. 2Open Team and invite your recruiters and account managers; they get an email to set their password.
  3. 3Add your first client in the admin panel under Clients, with its contacts and fee terms.
  4. 4Create a request for that client, or paste the client’s brief and let the AI fill it in.
  5. 5Add candidates to your pool (upload a CV, the AI reads it) and position them on the request.
Use the language switcher (top right) to work in English, French or Dutch. Your choice is saved on your profile.

Getting started

Team and roles

Four roles inside an agency decide who can do what.

RoleCan do
AdminEverything in the agency, plus users, settings, branding, billing and the audit log.
RecruiterClients, requests (validate and publish), the talent pool, pipelines, placements and GDPR actions.
Account managerClients, draft requests, and following requests and placements.
ViewerRead-only: sees requests, the pool, pipelines and placements without changing anything.

Account managers can only edit requests while they are drafts. A recruiter completes and validates them.

Recruiting

Clients and pipelines

Each client has contacts, commercial terms and, if you want, its own pipeline columns.

A client holds its contacts (hiring managers), country, currency and terms: fee percentage for permanent hires, guarantee period and payment terms. These terms prefill the placement form later.

By default every client uses the standard pipeline, grouped in three phases: qualification, preparation and closing. Open Pipeline, pick the client and choose Customise columns to rename, reorder, add or remove columns, mark the ones where a candidate can be rejected, or copy the pipeline of another client.

“Placed” always stays the last column. A column that still holds candidates cannot be deleted.

Recruiting

Requests

A request is a role to fill. It starts as a draft and is validated by a recruiter.

A request has a client and job title, the number of profiles, a target start date, the profile sought (mission type, seniority, minimum years, key skills) and the terms (work mode, location, days, currency, daily rate range, contract type).

  1. 1Save it as a draft while details are missing.
  2. 2Validate it once it has a client, title, start date and key skills.
  3. 3Position candidates and follow progress in the pipeline.
  4. 4It becomes Filled automatically when enough candidates are placed.

Saved views help you work through the list: Active, No positioning, Past due, Drafts, Filled / cancelled and Archived.

Briefs that companies send through the “Hire talent” form on your website arrive as draft requests, with the contact details in the account manager note. If AI is enabled, the skills and seniority are already filled in.

Recruiting

AI reading of CVs and briefs

Upload a CV or a client brief; the AI turns it into structured fields for you to check.

On the candidate form, “Read the CV with AI” extracts the text of a PDF or Word CV and asks the model for structured data: name, contact details, years of experience, seniority, skills and domains. Only valid values are kept, and you check them before saving.

app.localforces.com/pool/new
cv-lena-van-damme.pdf

Lena Van Damme

Senior Java developer · Ghent, Belgium

[email protected] · +32 470 00 00 00

EXPERIENCE

Lead developer, payments platform (2021 – now)

Java 17, Spring Boot, Kafka, AWS (EKS, RDS)

Backend developer, logistics scale-up (2016 – 2021)

LANGUAGES Dutch · French · English

Reading the CV…
Sample data: a CV is read and turned into profile fields.

On a draft request, “Read the brief with AI” does the same for a pasted text or an uploaded brief: job title, client, skills, seniority, dates, rates and a suggested mission type.

The model runs on your own servers (Ollama) or with Anthropic’s Claude, chosen per installation. CVs never leave the configured provider. Scanned PDFs without text cannot be read yet.

Recruiting

Talent pool

Your agency’s private candidates, searchable by name, skill, city and supplier.

Candidates are grouped by category (employees, freelancers, suppliers, referrals). Each profile has the CV, skills, seniority, domains, availability, currency and buy-rate range. Duplicates are detected by email or by name.

app.localforces.com/pool
  • Lena Van DammeSenior Java developer · 9 yrsGhent, BEJavaSpring BootKafkaAWSNow
  • Pieter de GrootData engineer · 6 yrsUtrecht, NLPythonAirflowdbtSnowflake2 weeks
  • Amara OkaforCloud architect · 12 yrsLondon, GBAzureTerraformKubernetesSecurity1 month
  • Julien MarchandFull-stack developer · 5 yrsBrussels, BETypeScriptReactNode.jsPostgreSQLNow
  • Sofia LindqvistProduct owner · 8 yrsAmsterdam, NLScrumJiraFintechRoadmapsNow
  • Marcus ChenDevOps engineer · 7 yrsToronto, CAKubernetesGitLab CIAWSGo3 weeks
  • Hannah BrooksQA automation lead · 10 yrsAustin, USPlaywrightCypressJavaCI/CDNow
  • Yusuf DemirJava developer · 4 yrsAntwerp, BEJavaSpring BootAngularOracle1 month
  • Claire MullerSAP FICO consultant · 11 yrsLuxembourg, LUSAP FICOS/4HANAFinance2 weeks
  • Tom HughesMachine learning engineer · 5 yrsManchester, GBPythonPyTorchMLOpsAWSNow

10 of 10 candidates

Try it: search a skill such as “Java” or filter on a country.

Candidates who register on your website land in the pool with source “Website” and their consent date.

Recruiting

Pipeline and positionings

A kanban per client: drag candidates from column to column until they are placed.

Pick a client to see its own columns, or All clients to see every positioning grouped by phase. Drag a card to move it. Open a card to see the stepper, add client feedback and a follow-up date, log activity or reject the candidate with a reason.

app.localforces.com/pipeline

Northwind Logistics

Senior Java developer · 2 profiles

Fees this quarter: €0

Identified

2

Phone pre-screen

2

CV submitted

2

Client interview

1

Placed

0

Live demo on sample data. Hover to pause, click a card to move it.

Sample data: candidates move through a client’s pipeline. Click a card to move it yourself.
Dropping a card on “Placed” opens the placement form instead of moving it directly, so every placement records its terms.

Recruiting

Placements and fees

Record the hire and the fee: a percentage of salary, a flat fee or a margin on the daily rate.

The placement form is prefilled from the request and the client: start date, engagement, selling and buying rates, annual salary, fee model, guarantee days. It shows the fee before you confirm.

Fee modelHow it is computed
PercentageAnnual salary × fee %. Typical for permanent hires.
Flat feeThe amount you agreed with the client.
Margin(Selling rate − buying rate) × days. Typical for freelancers.
app.localforces.com/placements

Your fee

€14,400

Placements

0

Open requests

0

Fees this year

€0k

Fees by month

J
F
M
A
M
J
Try it: move the sliders, the fee is computed with the same rule as the app.

Confirming places the candidate, optionally closes their other positionings and marks the request filled when enough people are placed. Follow each placement from pending to confirmed, invoiced and paid. Cancelling a placement puts the candidate back in the pool.

Your website

Job board and registration

Publish requests on your public job board; candidates register or apply with their CV.

On a validated request, use the globe button to publish it: choose the country, write the public description, and decide whether to show the client name and the daily rate. Closed or archived requests disappear from the board automatically.

Candidates register at /join or apply to a job. Every submission is checked (hidden honeypot field, rate limit, reCAPTCHA) and stored in Applications. A new candidate is created in your pool and, when applying, positioned in the first column of that job’s pipeline. Existing profiles are never overwritten.

Jobs include Google for Jobs structured data and appear in your sitemap.

Your website

Briefs from companies

Companies send a hiring brief from your website; it lands as a draft request.

  1. 1A company fills in the “Hire talent” form: who they are, the role, the start date, budget and a description or a brief file.
  2. 2LocalForces matches the company to an existing client (same website or name) or creates the client with that contact.
  3. 3A draft request is created for that client, with the contact and budget in the account manager note and the brief file attached.
  4. 4If AI is enabled, it fills the key skills, seniority, work mode and rates from the description.
  5. 5Your agency contact email gets a notification, and the company a confirmation.
app.localforces.com/requests

Brief from Northwind Logistics

Sample data: from a brief to a ranked shortlist.

Your website

Social sharing and statistics

Post jobs to Facebook and LinkedIn when you publish; see who visits your site.

When publishing a job you can tick channels: your Facebook page, your LinkedIn company page, or a signed webhook for Zapier, Make or Buffer. The post is written in your agency’s language. Each attempt is logged.

The Stats page shows visitors, page views, time on site, countries, referrers, devices and bot traffic. Tracking is first-party and cookie-less: no IP addresses and no cookies are stored.

Administration

Privacy and GDPR

Retention, consent renewal and the right to be forgotten are built in.

  • Candidate profiles are kept for a retention period (24 months by default).
  • Before it ends, the candidate gets an email to renew their consent with one click.
  • Without an answer, the profile is deleted or anonymised, as you configure.
  • Deleting a candidate deletes their positionings too.
  • The audit log keeps only technical references, never candidate personal data.

Administration

Your domain and branding

Pro and Enterprise agencies use their own domain, logo and colours.

Every agency gets your-agency.localforces.com. On Pro, add a custom domain (for example jobs.your-agency.com) with a CNAME record pointing to LocalForces, then upload your logo and pick your colours in the agency settings.

Billing is handled with Stripe: change plan, update your card or download invoices from the billing page.

Administration

Help and contact

Questions, onboarding or an Enterprise setup: get in touch.

Use the contact form on the Hire talent page or write to the address in the privacy notice. Enterprise customers can run LocalForces on their own servers, for example in Germany, with nightly backups.