Skip to content

Every AMC with its term, planned service visits, the technician job for each visit, and the renewal reminders that go out before it ends.

Contracts holds every maintenance contract (AMC) you’ve sold: the plan, the term, the service visits and when it renews. Each visit gets its own technician job, every closed visit sends the customer a service certificate, and renewal reminders go out on their own at 60, 30 and 7 days before the end.

The Contracts list with Import from Excel, New contract, search, status filter, end dates and visits used

  1. Import from Excel: bring in the contracts you already have.
  2. New contract: add one contract by hand.
  3. Search: find a contract by its number, the customer’s name or phone.
  4. Status: Live (active + expiring) at first. Pick Active, Expiring, Expired, Renewed, Cancelled or All statuses.
  5. Ends: the end date, with how far away it is. It turns amber within 30 days and red once it has passed.
  6. Visits: visits used out of visits included, for example 1 / 4.

Status What it means
Active The term is running.
Expiring The end date is within the plan’s renewal notice (30 days unless the plan says otherwise).
Expired The end date has passed and it wasn’t renewed.
Renewed A new term replaced this one.
Cancelled Stopped early. It stays on the book.

Setaflow moves contracts between Active, Expiring and Expired by itself, once a day.


Most contracts start by themselves: when a job reaches its handover stage, your trade’s AMC plan starts for that customer. Add one by hand for a contract sold outside that flow.

  1. Go to Contracts and click New contract.
  2. Pick the Plan. It fills in the term, the price and the number of included visits. These are copied onto the contract, so a later change to the plan never changes this contract.
  3. Pick the Customer and, if there is one, the Linked record.
  4. Set Starts on. Leave Ends on, Agreed price and Included visits empty to use the plan’s values, or type your own.
  5. Leave Contract number empty and Setaflow numbers it, for example CON-2026-0003.
  6. Click Create contract.

The New contract dialog with Plan, Customer, dates, price and visits

The contract is created with its renewal reminder armed, and its visits and jobs are planned straight away.


Click a row. The contract page opens.

The contract page for Revathi Balaji with Edit, Send certificate, the more menu and the Term card

  1. Edit: change the dates, price or visits. Moving the end date or the price re-arms the renewal reminder.
  2. The main button shows the next thing to do: Renew when the contract is in its renewal window, Send certificate when a certificate didn’t go out, Plan visit N when a visit is missing, or Assign visit N when the next job has no technician.
  3. ⋯: Renew early, Cancel contract and Delete.
  4. Term: visits used, days left, the payment for this term, the dates, the renewal notice, when the next reminder goes out, and what the plan includes.

The contract actions menu with Renew early, Cancel contract and Delete


The Service visits card lists every visit, its technician job and any parts fitted.

The Service visits card with Plan visits and jobs, Log as done, photos, Assign technician and the visit menu

  1. Plan visits and jobs: plans any missing visits and creates one job for each.
  2. Log as done: closes the visit from the office.
  3. Photos: how many site photos are attached, out of how many the visit needs.
  4. Assign technician: picks who does the visit. A technician on WhatsApp gets the job straight away.
  5. ⋯: more visit actions.

Each visit shows its job code (for example T-1011), the job’s status and who it’s assigned to. A finished visit shows what was done and its certificate, such as SC-000001, with Sent or Not sent.

When a contract is created or renewed, Setaflow plans its visits:

  • If the plan has Visit every (days), visits fall at that interval from the start date. Otherwise they’re spread evenly across the term.
  • A visit that lands on a holiday or a closed day moves to the next working day.
  • Each visit gets a job due at 10:00 on the visit day. The job is Unassigned until you pick a technician.

Click Plan visits and jobs at any time. It only adds what’s missing, so pressing it twice does nothing extra.

The technician usually closes the visit from WhatsApp by sending photos and replying Done. To close it from the office:

  1. Click Log as done on the visit.
  2. Check Photos, then write the Outcome, for example Panels cleaned, inverter OK, generation 412 kWh this month.
  3. Click Log as done.

The Complete visit 2 dialog with the photo count and the Outcome box

The visit is marked done and the service certificate goes to the customer.

The visit ⋯ menu has:

The visit menu with Log as chargeable and Photos required

  • Log as chargeable: log a paid, out-of-contract call. It doesn’t use up an included visit.
  • Photos required (n)…: change how many photos this visit needs, from 0 to 20.

When all included visits are used, the next visit must be logged as chargeable.


Setaflow reminds the customer before the contract ends, with no work from you:

  1. At 60, 30 and 7 days before the end date, at 9:00 am, the customer gets a renewal message on WhatsApp.
  2. At the first reminder, Setaflow makes a renewal quote at the contract’s agreed price, with a payment link if you collect payments online.
  3. When the renewal payment is marked paid, the next term is created, the old contract becomes Renewed, next year’s reminders are set and the new visits and jobs are planned.

If the customer paid another way, open the contract and click Renew (or Renew early in ⋯). Check Next term starts, Months and Renewal price, then click Renew contract.

The Renewal chain card on the contract page links each term to the one before and after it.


For lifts and fire safety, the job record can hold a Licence valid till or NOC valid till date. Setaflow reminds you at 60, 30 and 7 days before that date, with a notification for the owner and the record owner. The customer also gets a WhatsApp reminder if your reminder template is approved. The date shows on the contract’s Term card.


  1. Click Import from Excel.
  2. Click Download template and fill in one contract per row.
  3. Click Choose a file and pick your sheet (.xlsx, .xls or .csv).

The Import contracts from Excel dialog with the column list, Download template and Choose a file

Only the customer column is required. The customer is matched on contact id, phone or email, and the plan on its key. An empty end date becomes the start date plus the plan’s term, and an empty price becomes the plan’s price. You can upload up to 1,000 rows at a time. Uploading the same sheet again creates nothing twice.

The result shows how many rows were created, skipped or failed, with a reason for each row.


  • Contracts depend on your plan. If you don’t see Contracts in the sidebar, your plan doesn’t include it.
  • Buttons depend on your role. Staff who can’t create contracts don’t see Import from Excel or New contract. See Roles and access.
  • Cancelling or deleting a contract cancels its unfinished visit jobs.

Was this article helpful?