> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arcsolar.com.au/llms.txt
> Use this file to discover all available pages before exploring further.

# 2. Meet your customer

> One record. The right context. A thoughtful first conversation.

export const LessonChecklist = ({lessonId, items}) => {
  const courseKey = "arcsolar-sales-onboarding-v1";
  const readProgress = () => {
    try {
      const value = JSON.parse(window.localStorage.getItem(courseKey) || "{}");
      return value && typeof value === "object" && !Array.isArray(value) ? value : {};
    } catch {
      return {};
    }
  };
  const complete = value => Array.isArray(value) && value.length === 3 && value.every(item => item === true);
  const [checks, setChecks] = useState([false, false, false]);
  const [loaded, setLoaded] = useState(false);
  const [saveFailed, setSaveFailed] = useState(false);
  useEffect(() => {
    const saved = readProgress()[lessonId];
    setChecks(items.map((_, index) => Array.isArray(saved) && saved[index] === true));
    setLoaded(true);
  }, [lessonId]);
  const toggle = index => {
    const next = checks.map((checked, itemIndex) => itemIndex === index ? !checked : checked);
    setChecks(next);
    try {
      window.localStorage.setItem(courseKey, JSON.stringify({
        ...readProgress(),
        [lessonId]: next
      }));
      setSaveFailed(false);
    } catch {
      setSaveFailed(true);
    }
  };
  return <fieldset className="my-8 border-0 border-t border-zinc-200 px-0 py-5 dark:border-zinc-700">
      <legend className="pr-3 font-semibold">Your checkpoint</legend>
      <p className="mt-0 text-sm">Tick each box when you have tried it or talked it through with your manager. You can untick a box to revisit it.</p>
      {items.map((item, index) => <label key={item} className="my-2 flex cursor-pointer items-start gap-3 py-2">
          <input type="checkbox" checked={checks[index] || false} disabled={!loaded} onChange={() => toggle(index)} className="mt-1 h-5 w-5 shrink-0" style={{
    accentColor: "#3D88F2"
  }} />
          <span>{item}</span>
        </label>)}
      <p role="status" className="mb-0 text-sm">{saveFailed ? "Browser storage is unavailable. Your ticks work on this page but may not survive a refresh. Keep a note of your lesson before leaving." : complete(checks) ? "Lesson checked off. You’re ready for the next step." : "Your ticks are saved on this device when browser storage is available."}</p>
    </fieldset>;
};

Lesson 2 of 7 · Sales rep onboarding

Every good conversation starts with knowing who is on the other end.

**Your goal:** find the right customer, understand their history and choose the next action.

## Open the right record

1. Select **Customers → Customer Records**.
2. Search by name, phone or email. Open the existing record; do not add a second one.
3. Check the contact details, installation address and owner. If the owner is someone else, check with your manager before contacting or reassigning the customer.
4. Read **Activity & audit**. Look for the latest conversation, promises already made and upcoming automatic messages. In a compact view, this may be called **Activity**.

## Know where the conversation stands

Open **Customers → Pipeline** and find the same customer. The stage should describe what has actually happened:

* **New:** you have not started qualification.
* **Contacted:** contact has been made.
* **Information requested:** you are waiting for something.
* **Quoted / Follow-up:** an offer is out or a decision is pending.

Use the other stages only when their conditions are met. A **Won** stage does not mean an installation is complete or money has arrived.

## Try it

On your practice record, find the customer’s goal and what is missing. Say the next step out loud: “I need the switchboard photo. I will follow up on Thursday.”

If the record does not tell you, ask. A clear question is better than a guessed answer.

## Keep these two guides nearby

[Customer records](/customers/records) explains the tabs. [Pipeline and stages](/customers/pipeline) explains every stage. Return here when you are ready.

## ArgonixIntelligence, by your side

A summary helps you catch up. Verify the latest message or call before relying on a promise, price or date.

<LessonChecklist lessonId="customer" items={["I found the correct practice customer without creating a duplicate.","I checked the owner, contact details and latest activity.","I can explain the customer’s current stage and next step."]} />

[Continue to lesson 3: Make the conversation count](/sales-onboarding/conversation)

[Previous step](/sales-onboarding/workspace) · [Course overview](/sales-onboarding)

*The ArcSolar team · [support@arcsolar.com.au](mailto:support@arcsolar.com.au)*


## Related topics

- [1. Find your workspace](/sales-onboarding/workspace.md)
- [Your first chapter with ArcSolar](/sales-onboarding.md)
- [7. Get ready for your first customer](/sales-onboarding/ready.md)
- [Welcome to ArcSolar](/index.md)
- [Book appointments and plan field days](/delivery/calendar.md)
