All the features. None of the bloat.
Multi-currency on Starter. Full REST API on Starter. Role-based access, custom fields, signed webhooks — all on Starter. Plan tiers cap volume (seats, contacts, storage), never capability.
Drag, drop, and watch your forecast update.
Build one pipeline or a dozen. Each stage has a probability, an aging policy, and clear "won/lost" semantics. Drag a card, the forecast updates instantly. No spreadsheets. No "let me check with marketing."
- Multi-pipeline workspaces: sales, partnerships, renewals, expansion — all in one workspace
- Stage-level rules: at least one Won + Lost stage, validated automatically — can never be misconfigured
- Stagnant deal alerts: deals stuck more than N days surface automatically
- Win/loss reasons: structured data on every closed deal, ready for analysis
A clean record for everyone you sell to.
Six entity types — Leads, Contacts, Companies, Deals, Projects, Products — linked the way real businesses actually work. Multi-contact deals, parent companies, junction tables for B2B buying committees.
- Buying committees: link multiple contacts to a deal with role + primary metadata
- Smart deduplication: case-insensitive email match, normalised across providers
- Activity timeline: emails, calls, meetings, notes — all in chronological order on every record
- Soft delete + audit log: nothing is ever truly lost; admins can restore
A forecast you'd actually bet your quarter on.
Probability per stage, weighted forecast, won-deltas vs last month, stagnant-deal flagging, line items, multi-currency. Forecast reports update live as your team moves cards.
- Line items: attach products, quantities, discounts, taxes — currency stamped from the parent deal
- Rate-locked closed deals: exchange rates freeze on Won/Lost — no historical drift
- Won deltas: "$45K this month · +23% vs last month" on every dashboard
Post-sale delivery, in the same workspace.
Every Won deal can spawn a Project — your delivery team's parallel pipeline. Kickoff → Build → Review → Delivered. Same data model, same access controls, same dashboards. Sales doesn't lose visibility once the deal closes; delivery doesn't context-switch into a separate tool.
- One pipeline per use case: "Implementation," "Custom build," "Onboarding" — each with its own stages
- Deal-linked: click any project, see the originating deal value, contacts, and line items
- Same building blocks: custom fields, activity types, tags, files — all share the workspace's vocabulary
- Plan-gated: Professional + Business; Starter teams skip the module entirely (no clutter)
Send quotes that auto-convert to deals.
Build a quote in three clicks: pick the customer, drop in line items from your product catalog, send. Track lifecycle (Draft → Sent → Accepted → Declined / Expired) and convert accepted quotes into Deal line items in one step — currency stamped from the parent.
- Math you can verify: same formula in the app and in the API —
quantity × unit_price × (1 − discount %) × (1 + tax %) - Lifecycle states: Draft / Sent / Accepted / Declined / Expired — enforced everywhere, no skipped steps
- Validity windows: quotes auto-expire; "expiring soon" filter built into every list page
- One-click conversion: Accepted quotes spawn Deal line items with currency + exchange rate inherited
To-dos that don't drift to your inbox.
Assign a task to anyone on your team. Link it to any record. Filter by overdue, by assignee, by priority. The detail panel keeps your scroll position intact — toggle complete with one click, never lose context.
- Link a task to anything: any task attaches to a Lead, Contact, Company, Deal, Project, or Quote
- Derived filters: Overdue · Unassigned · Due this week — built into every task list
- Toggle without closing: completing a task doesn't close the panel — keep editing in flow
- Activity-typed: task types share the activity-type vocabulary (Phone Call, Demo, Onsite Visit, Custom)
Your data model. Your way. No code.
14 field types across 6 entities. Apply a single field to multiple modules in one click. Required, dropdown, multiselect, date, currency, URL, email, phone — all validated automatically, all visible in the API.
- Multi-target apply: create one field, fan out to Leads + Companies in a single submit
- Type-safe by design: field type is immutable after creation — no silent data corruption
- API-first: custom fields appear on every entity endpoint automatically
- Tags with colors + entity scoping: 20-preset palette, per-entity tag namespaces
Every interaction, in chronological order.
Calls, emails, meetings, demos, notes — logged on the record itself, surfaced as a timeline that tells you what happened, when, and by whom. The "last activity at" timestamp powers your stagnant-deal alerts, so deals never quietly rot in "Discovery."
- Configurable types: ship-default Phone Call / Email / Meeting / To Do plus your own (Site Visit, Demo, Onsite Inspection)
- Icon-bearing: 26-icon palette per activity type for at-a-glance scanning
- Counts-as-interaction toggle: control which activity types bump the last-activity timestamp
- Notes are separate: quick text without cluttering the activity feed — same record, different stream
Attachments and sticky notes, on every record.
Drop a file onto any Lead, Contact, Company, Deal, Project, Quote, or Task — works on every record type. Add a free-form note when "activity" feels too heavy. Storage usage shows on your workspace dashboard, counts against your plan quota.
- Works across 8 record types: one upload pipeline, every record
- Type-checked at upload: malicious files are blocked even when they have a fake extension
- Storage quota visible: never wonder what's eating your plan limit
- Soft delete + GCS cleanup: removed files reclaim quota immediately, asynchronously cleared
65 currencies, no upgrade tier.
Sell in any currency, report in your base. Live exchange rates update daily; rates lock automatically when a deal closes so historical reports stay honest.
- Per-deal currency: stamped on every line item from the parent deal automatically
- Locked rates on closed deals: won this quarter at €0.93/USD, the report stays €0.93/USD forever
- Workspace base + display: base USD, but a UK rep sees GBP across the dashboard
Invite anyone. Scope what they see. Roll up by team.
Send an invite by email — your teammate clicks the link, picks a password, and lands inside your workspace with the role and team you set. Every record carries a visibility tier (Everyone / Team / Owner only) that's enforced everywhere — on every screen and in the API, not just hidden in the UI. Reports run "mine," "my team," or "all" out of the box.
- Invite by email, seat-enforced: secure link with expiry, plan seats checked safely (two simultaneous accepts won't push you over your limit), resend / revoke / audit pending invites
- Teams with hierarchy: nest a "Sales · NA" team under "Sales" — visibility resolves through real team membership, not a tag
- Per-record visibility — three tiers: mark every Lead, Contact, Company, Deal, Project, or Quote as
Everyone/Team/Owner only - Shared saved views: save a filter once, share it with the workspace — each teammate keeps their own default-tab pin without overwriting the shared filter
- Team-scoped reports: every report (pipeline overview, owner-performance, revenue won/lost) accepts
scope=mine|team|all— admins gate the workspace-wide rollup - Notes & activity timeline on every record: drop a note, log an activity (call / meeting / demo), every interaction is stamped with author + timestamp and merged into one chronological feed
Pipeline, won/lost, and owner-performance reports all read the same scope filter.
Granular roles, without the bureaucracy.
Five default roles out of the box, fully editable. Each role has ~50 toggles that gate every module and action. Account Owner is uniquely write-protected — only the Account Owner can edit the Account Owner.
- ~50 granular permissions per role: create / read / update / delete per module, plus action-level controls (assign records, convert leads, merge contacts, close deals, export to CSV, send quotes)
- Admin-only settings: invite users, edit roles, set up teams, configure webhooks, manage API keys, manage billing — each gated independently so you can build your own admin tier
- Owner-write protection: only the Account Owner can change Account Owner rights — nobody can escalate themselves to owner through a role edit
- Admin bypass on visibility: Account Owner + Admin always see every record — for support and incident response (matches Pipedrive / HubSpot, by design)
Admin defaults that don't break personal workflows.
Admins set workspace-default column layouts on every list page — your team gets sensible defaults out of the box. Power users save personal views (sort, filter, columns, sharable or private) without ever affecting anyone else's setup.
- Two layers, never collide: admin defaults + per-user overrides — updating defaults won't trample personal prefs
- Per-list-page persistence: Leads ≠ Contacts ≠ Deals — every list has its own view stack
- Shareable saved views: mark personal or share workspace-wide; creator-only edit / delete
- Default-view pinning: flag any saved view as "open this on tab visit" — restores instantly
Built for developers, not data analysts.
A REST API on every entity, signed webhooks with delivery logs and automatic retries, scoped API keys with last-used timestamps. We respect your developer time.
- ~200 endpoints across leads, contacts, companies, deals, projects, products, quotes, tasks, files, notes, activities
- HMAC-signed webhooks with delivery logs, exponential backoff retries, and a "test send" tool
- Scoped API keys: 16-entry permission allowlist, last-used timestamp, instant revoke
- Server-side filters: every list endpoint accepts filter, sort, paginate — same shape as the UI
# Create a deal via the API
curl https://api.interface365.ai/v1/deals \
-H "Authorization: Bearer i365_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Acme Q4 Renewal",
"value": 96000,
"currency": "USD",
"pipeline_id": "sales",
"stage_id": "proposal"
}'
# → 201 Created
# → webhook fires: deal.createdThe numbers your team meets on, every Monday.
A live dashboard with pipeline overview, KPI cards, won deltas, stagnant deal alerts, team leaderboard, and date-range filtering. No BI tool required.
- Sparkline trends on every KPI card — 30-day rolling
- Team leaderboard — opt-in for admins, top closers this month
- Click-through: tap any KPI, land on a pre-filtered list of the underlying records
Ready to ditch the spreadsheets?
14-day free trial. No credit card. Set up in under 5 minutes.