# Team

Invite members, set their roles and commission rates, and see who has signed in.

Team is where you manage the people in your workspace: who they are, what role they hold, how they are paid commission and whether they can sign in.

## Who can open it

Owners, admins and ops. Other members who have permission to view team end-of-day reports are sent to the [Daily tracking grid](/docs/features/eod) instead, and everyone else to their own [end of day report](/docs/features/eod).

## The top cards

- **Total members** and how many roles they cover.
- **Avg commission** is the mean total cash override rate across active members who have one set.
- **Active now** and **Inactive members**. Inactive members are kept for historical attribution and do not use a seat.

**Seat usage** shows how many of this workspace's included seats are in use. Adding a member past them is never refused; the extra seat is billed at your plan's rate.

## The roster

Each member shows their name, role or title, email, close and set commission rates, and a commission summary. Filter by **All**, **Active** or **Inactive** (and **Shadow** and **Name only** when you have them), by source, by role and by commission, or search by name or any of a member's emails. Clicking a member opens their member page.

A badge next to a member explains their sign-in state:

| Badge | What it means |
|---|---|
| Invited, not yet signed in | A secure link has been sent, or can be. They are linked to the workspace the first time they sign in. |
| No email, cannot be invited | There is no email on file, so no sign-in link can be sent. Add one and invite them. |
| Inactive | Deactivated. Reactivate them before sending an invite. |
| Shadow, from Base44 (or Close, Aircall and so on) | Made by PYLO from that tool's data while the workspace runs in parallel. No login and no seat until you invite them. |
| Name only | PYLO knows them only by a name. Add an email to invite them. |

A member who has never signed in keeps a control to resend their invite.

On the **Pro** plan you can export the roster.

## Adding or editing a member

Click **Invite member**, or **Edit** on a row. The form asks for:

- **Name** and **Email**, with an option to email them a secure login link.
- **Role**: closer, setter, SDR, ops, admin or owner. Owners, admins and ops can open the management pages.
- **Active** or **Inactive**.
- Commission rates: **Close %**, **Set %** and **Low-ticket %**, plus a **Total cash override**, a percentage of all workspace cash for managers and owners, with a **Role title**.
- **Slack User ID** and **Discord User ID**, both optional.
- **Can see full team commission data**, which lets that person see everyone's commission figures, including the commission table on the [Agency Dashboard](/docs/features/dashboard). Turn it on for owners, admins and sales managers.

Click **Add Member** or **Save Changes** to finish.

## Shadow people: tracking a team nobody has onboarded

While a workspace runs in parallel, PYLO works out who every record belongs to from the client's own tools, so nobody on their team has to be added, invited or billed. New workspaces start in parallel.

PYLO looks for the person in this order:

1. **The tool's own user id**, such as a Close user or an Aircall user it has seen before.
2. **Their email**, their PYLO login or any other email they're known by.
3. **Their name, through the app's staff table.** When a Base44 app has a staff or team table mapped, an end of day or call that only names the rep is matched through it.
4. **Their name.** If exactly one person has that name, it's them. If two people share it, the record waits for you to decide.
5. **A new shadow person**, made from whatever the record knows.

A shadow person:

- Has a name from the tool, or from their email.
- Has a role from the tool. When it doesn't say, a call's closer is a closer, a booking's host is a closer, and anyone else is a setter marked **Role guessed**.
- Has blank commission rates, so nothing is paid at 0% by mistake. Set them with **Edit**.
- Has no login and doesn't use a seat.
- Shows **Shadow, from Base44** (or Close, Aircall, Calendly and so on) on the roster, and **Name only** when PYLO has no email for them yet.

The sources that make shadow people are Base44 (end of day reports, calls, affiliate sales, payouts and staff), Close users and their dials, dialer users, and the hosts of bookings. Nobody on the client's team is sent anything while this happens, and nothing is written back to their tools.

### Who's who

The **Who's who** section on Team shows what needs you:

- **People to confirm.** Pairs PYLO thinks may be one person: the same first name, a name spelled almost the same, a name matching an email, or a tool user whose name contains it. Each side shows how many end of day reports, dials, calls and sales it holds. **Same person** merges them after a second click. **Different people** keeps them apart, and PYLO won't suggest that pair again. PYLO never merges anyone on its own.
- **Records waiting for a person.** Records nobody could be found for, per source, with the reason. Nothing is dropped: they wait, counted, and are attributed as soon as you tell PYLO who they belong to.
- **Attributed to a person.** The share of each source's records attributed, and the total.

The same items reach the operator inbox each morning. They're yours, never the client's.

### Telling PYLO who someone is

Click **Invite or merge** on a shadow row, or **Emails and names** on any row:

- **Invite** puts their email on the same person and sends the sign-in link, so everything already logged stays theirs. A person known only by a name needs an email first.
- **Merge** moves everything a shadow person holds onto a member or another shadow person, and switches the shadow off. On a day both filed an end of day report, the one you keep has its report kept.
- **Also known as** lists their other emails.
- **Names and tool ids** lists every name and tool user id they're known by, and where each was seen. Add a name, or a tool's user id with the tool. To settle a name two people share, add it here with its tool, for example "Sam" in base44: from then on "Sam" in Base44 means this person.

Every change is attributed again on the next read, and nothing is counted twice.

When the workspace goes live, every shadow person becomes an ordinary member and starts using a seat. People known only by a name stay members without a login until you add an email and invite them.

Outside parallel mode an unknown person is handled as before: Base44 records from an email PYLO doesn't know are rejected and the import says why. Names and tool ids you've confirmed keep matching.

## Other emails

**Emails and names** on any row lists the other addresses that person uses, in Base44 or anywhere else PYLO imports from. Records under any of them land on that member, so a rep whose Base44 email differs from their PYLO one is matched instead of being added twice. One email belongs to one member per workspace.

## How commission rates are used

A closer's close rate is applied to cash collected on payments attributed to them, and a setter's set rate to cash attributed to them as setter. The total cash override is applied to all cash collected in the workspace. For payout review, see [Payouts](/docs/features/payouts), and for rules beyond flat rates see [Commission](/docs/settings/commission).

## Team changes, set up everywhere

Below the roster, **Add a rep**, **Change a rep** and **Remove a rep** each make one plan. Nothing happens until an owner or admin approves it under [Plans](/docs/settings/plans), and every tool is checked afterwards.

**Adding a rep** puts them on the roster with their role, level and first day, sends their PYLO sign-in link and an invite to connect their own AI agent, and gives them access where PYLO can do it for you: a Close membership, their name added as a choice on Close's setter or closer field, a Calendly invitation for closers, and the team's Slack channels (the ones you list, or else the channels your sales ops posts and notifications use). PYLO finds their Slack user by their email, so nobody types a member id. The welcome, with the dialing and closing hub links, is posted by PYLO's bot in the daily sales ops channel. A setter's own UTM booking link is made in the same plan when you give the booking link it points at. A DM setter is a setter who sets by DM: they get the DM inbox instead of a dialer seat, and PYLO keeps how they set on the roster, so their end of day asks their DM figures (inbound DMs handled, outbound DMs sent, follow-ups, replies, conversations started, calls pitched and calls booked) instead of dials and pickups. A setter who dials and DMs keeps the dial form and is asked their DMs and replies too. The round robin runs as a browser step in your own browser. Every other tool (a GoHighLevel user, the dialer seat and number, the DM inbox, the recorder) becomes a task in your inbox with the exact values. A new closer starts at the lowest calendar priority. Their ramp is checked from the data: closers review three recorded calls and take two closes above a 20% close rate; setters dial 300 a day for three days and book five calls. Moving them up is still your decision.

**Changing a rep** covers their role, level and calendar priority. A priority change needs a reason. A backdated pay change needs the owner.

**Removing a rep** sets their last day and takes them off the roster (they can still sign in to see their own pay), and takes away every access PYLO gave them, checking each one: their Close membership is deactivated, never deleted; their Calendly seat and Slack channels are removed; every agent they connected is signed out. Their open Close opportunities move to the person you choose, their lead claims are released, and their future bookings are listed for you to move in the calendar. Anything PYLO did not give them is a task for you to check. Nothing is deleted in any tool.

The [team board](/docs/features/team-board) shows how each rep is doing.

## The 1:1 tab

Owners and admins see a **1:1** button on a team member's page. It opens their 1:1 prep: their pace against this month's target, their month and last seven days beside the team's average for their role, the notes and open actions from their last 1:1, any ramp checks still open, and talking points PYLO suggests from the numbers. A suggested move, such as a call review, is only a suggestion.

**Notes from this 1:1** saves what was said and the action items agreed to the member's 1:1 log, the same log as the Development tab. Open action items show up in the next brief.
