Teams: branch access, sources, and notifications

Last reviewed: 2026-08-07 · Last updated: 2026-08-07

Scope: What a team is and how it differs from a user role, the Branch, Source, Notification and Users sections, the full notification group and category tree, and how to shape teams around who acts on what.

Update: Corrected what deleting a team does, and widened the half-configured-team warning to cover sources.

A team groups the people in your workspace around one part of your business. It decides two things: which invoices they can see - by branch and by the channel the invoice arrived through - and what they are notified about when something succeeds or fails.

Teams are optional. If you trade from a single location and everyone in your workspace deals with everything that arrives, you do not need one. They start to earn their keep once you have several branches, more than one way invoices reach you, or colleagues who should only be dealing with their own part of the operation.

A team is not a role

Get this distinction straight first, because the two sit next to each other in settings and answer different questions.

A user role A team
Answers the question What is this person allowed to do? Which records are theirs, and what should they be told about?
Controls The modules they see, and whether they can view, create, edit, delete, or export in each one Which branches' and sources' invoices they can see, and who receives which notifications
Where you set it Settings → Workspace Settings → User Roles Settings → Workspace Settings → Team

Neither replaces the other, and both have to be right. A role can grant someone full access to the Sales module and they will still only see invoices from the branches and sources their teams cover. Give someone the role that matches the job they do, then put them in the team that matches the part of the business they look after. Roles are covered in full in User roles and permissions.

A colleague says something is missing - role or team? If they cannot reach a module at all, or a button does nothing, that is their role: see User roles and permissions. If they can open the module but specific invoices are not in it, that is their team - check the branches and sources it covers.

Where teams live

Go to Settings, find Workspace Settings, click View, then open the Team tab. You will see List of teams, alongside a Create Team button.

Each team on the list shows:

Column What it shows
Team Name The name you gave the team
Team Code The short code you gave it
Team UUID An identifier JomeInvoice shows for the team
Created Date The date the team was created

Every row also carries Edit, which opens the team so you can configure it, and Delete.

Create a team

  1. Go to Settings → Workspace Settings → Team.
  2. Click Create Team.
  3. Fill in Team Name and Team Code. Both are required.
  4. Click Create team.

Give the team a name your colleagues will recognise - "Northern Region", "Finance", "Integration Support" - because that name is what appears on the team list and against each person on the Users list. Everything else about a team is configured after it exists, so the next step is to open it with Edit.

What you configure on a team

Opening a team shows its details at the top - Team Name, Team Code, and Team UUID - and four sections below.

Section What it answers
Branch Which of your branches this team can see
Source Which channels' invoices this team can see
Notification What the team is told about, and who is told
Users Who is in the team

Apply Changes saves everything on the screen, not just the team's name and code. Make all the changes you need, then click it once.

Branch and Source control what team members can see, not just what they are told about. A person only sees invoices from the branches and sources their teams cover. Leave a branch switched off and its invoices will not appear for them at all - which is the point if you are separating regions, but a surprise if you expected them to see everything.

Two consequences worth knowing before you build your first team.

Someone in no team at all sees everything. Teams narrow what a person sees; they do not grant access that a role withheld. So adding one team does not quietly restrict everyone else - colleagues you have not put in a team carry on seeing the whole workspace. If your reason for using teams is to keep regions apart, every person has to be in a team for that to hold.

A team needs both branches and sources selected. Leave either list empty and the team covers nothing, so putting someone into a half-configured team is worse than leaving them out of teams entirely - they go from seeing everything to seeing nothing. Set both lists first, then add people.

Branch

A searchable list of every branch in your workspace, with a toggle against each one, and a count at the top reading, for example, "3 of 12 branches selected". The list shows Branch Name, Branch Status, and Branch Code, and is paginated if you have many branches.

Your Main HQ appears here alongside your branches, with a Branch Status of HQ. Everything else shows Branch.

Switch on the branches this team is responsible for. Members see those branches' invoices and not the others'.

Branches themselves are created and configured on the Organisation tab, not here - see Organisation, Main HQ and branches.

Source

Source lists the ways an invoice can reach your workspace, each with its own toggle, and works the same way: members see invoices that arrived through the sources switched on, and not the others.

The channels documented for customers are:

  • SFTP - an automated file feed dropped into a folder. See Set up an automated (SFTP) invoice feed.
  • API - your own system submitting to JomeInvoice directly. See API submission errors.
  • Manual Web - invoices created by hand inside JomeInvoice.
  • MyInvois Portal - purchases brought in from MyInvois: the e-invoices your suppliers have already submitted to LHDN, downloaded into JomeInvoice so you can see what you have been billed.

The list also includes connected point-of-sale and e-commerce systems.

The Source list shows what JomeInvoice can connect to, not what you necessarily have. Which of them you can actually use depends on your subscription - check with JomeInvoice if a channel you need is not working for you.

Switch on the channels this team is responsible for. A team that exists so your integration owner hears about the automated feed would have SFTP and API on and the rest off.

Notification

This is where a team earns its keep. Notifications are arranged in three groups, and each group holds categories.

Every category is switched on or off independently, and every category has its own recipient list, shown as N User(s) Selected with a control to choose who they are. Each group also has a switch of its own, so you can turn a whole group off in one action, or leave the group on and switch off only the categories you do not want. Groups and categories can be collapsed while you work through them.

Only people in this team receive its notifications. Add someone under Users first, then pick them as a recipient.

Group Category Examples of what triggers it
API Notification Technical Errors API timeout; internal server error (500); connection refused
Authentication Errors Invalid API key; expired access token; missing auth header
SFTP Notification Data Error Wrong file format; missing mandatory columns; duplicate invoice record
Authentication Errors Invalid SFTP credentials; expired or invalid SSH key; permission denied on the SFTP folder
General Notification LHDN Submission Errors Invalid seller or buyer TIN; duplicate submission detected; submission status returned as failed or rejected
Successful File Notices File uploaded successfully; file imported successfully; submission completed successfully
Consolidation Submitted Consolidated invoice submitted to LHDN; awaiting LHDN response
Failed Documents Amounts do not match the line items; buyer or supplier could not be matched; conversion failed after multiple retries; receipt no longer available for conversion
E-invoice Request Rejected Request submitted without receipt details; no matching receipt found; receipt amount or date does not match; receipt already processed; failed while creating the invoice

The practical value is in setting these separately. Sending everything to everybody is the fastest way to get all of it ignored. Instead, send SFTP → Data Error and SFTP → Authentication Errors to whoever maintains the feed, and General → LHDN Submission Errors to whoever has to correct and resubmit the invoice. The person who fixes an expired SSH key is rarely the person who fixes a buyer's TIN.

A few categories are worth knowing what they connect to:

Users

A searchable list of everyone in your workspace, with a toggle against each person and a count reading, for example, "4 of 26 users selected". Search by name or email.

Each row shows Name, Email, Title, Role, and Team. The Role column is a useful reminder of the difference this page opened with: it shows the permission set that person holds, which is set on their role rather than here.

Someone can be in more than one team, and what they see is the combination. A finance controller covering two regions goes in both regional teams and sees both regions' invoices. Someone who needs to see everything goes in a team with every branch and source switched on.

Deleting a team

You can delete a team even while people are still in it. Nobody is removed from your workspace, and that team's notifications stop being sent.

Deleting a team widens what its members can see, it does not narrow it. Anyone whose only team was the one you deleted stops being scoped at all, and goes back to seeing the whole workspace. If you are using teams to keep regions or entities apart, move those people into another team before you delete the old one.

Working out who should hear what

Start from the people, not from the notification list. Ask who would actually act on each kind of failure, then build a team around each of those answers.

Your situation A team shape that works
A chain operator whose regional managers should hear about their own outlets One team per region. Select that region's branches under Branch, add the region's manager under Users, and set the recipients on the General Notification categories that matter to them - typically LHDN Submission Errors and Failed Documents
An IT contractor who should hear about integration failures and nothing else One team with SFTP and API selected under Source. Switch on API Notification and SFTP Notification with the contractor as recipient, and switch General Notification off. They get expired keys and connection failures; they never get a buyer's TIN problem
A finance team that wants LHDN rejections and consolidation confirmations only One team with General Notification on, recipients set on LHDN Submission Errors and Consolidation Submitted, and the remaining General categories switched off. Leave API Notification and SFTP Notification off entirely
A single-location business where everyone deals with everything Probably no teams at all. With one branch and one or two people, a team adds a layer to maintain without changing who needs to know

Two habits keep this useful as your workspace grows. Prioritise the categories someone will act on rather than switching everything on at once, and revisit the recipient lists when people change jobs - a notification keeps going to whoever is named until you change it.

For the month-end reminder described in What consolidated invoices are, Consolidation Submitted is the category to set, which is why chain operators get the most out of teams: one consolidated draft is produced per branch, so the manager of each outlet has something specific to watch for.