Skip to main content

Customers & invitations

A customer is a restaurant a supplier sells to. This module covers how a supplier adds one, invites it to Clipp, keeps its details up to date, and works from the customer's own page. What a supplier knows about each customer is explained in Customer info (supplier's view).

Who uses it​

  • Supplier staff add and edit customers, send and resend invitations, issue store credit, add payments and start orders from the customer page.
  • Restaurants accept or ignore the invitation or connection request. Until they accept, the supplier works with the details it typed in.

A customer's life at a glance​

StateWhat it means
InvitedThe supplier added the customer, or asked to connect, and the restaurant hasn't answered
ConnectedThe restaurant accepted. The two are linked and orders flow through the app
Recently connectedA connected customer in its first 30 days, until its first order moves forward
InactiveThe supplier marked the customer inactive. It leaves the default list

In this section​

PageWhat it covers
Customers listSearch, the actions at the top and viewing inactive customers
Add a customerMatching an existing restaurant, or creating a new one, and the invitation
Customer pageThe header actions, balance card, loyalty, notes and the customer's orders
Edit customer infoBusiness details, contacts, and how an edit affects a pending invitation
Inactive customersMarking a customer inactive, and what the restaurant can no longer see
Recently connected badgeThe badges on a customer and when each one clears

Where it shows up​

  • Supplier app: Customers list (/customers), the customer page, the Add New Customer dialog, the Edit Information form, the customer pickers on New order and in Chat.
  • Restaurant app: the invitation or connection request, the list of suppliers.
  • Messages: the invitation email and text.

Permissions​

ActionNeeds
See customers and the customer pageCustomers: read or full access
Add, edit, invite, mark inactiveCustomers: full access
See the customer's orders tableOrders: read or full access

See Staff & roles.

Decisions​

  • A matching restaurant must be connected, never duplicated. If the phone or email belongs to a restaurant already on Clipp, the supplier cannot create a second one. See Add a customer.
  • Editing a connected customer's contact never re-invites or transfers ownership. The restaurant owns its own account.

Specs​

customer-details-v2.feature
# prefix: CDV2
Feature: Customer page orders from the current orders
Only on local and dev builds, the customer page has a Legacy / v2 toggle above the orders table. v2
swaps the orders table and the payment card to read the customer's current orders, so the two can be
compared on one customer. On every other build the page shows the earlier order records only. The
choice lives in the URL, so Back from a v2 order returns to v2. v2 has no Clipp promo yet, so the
card's promotion lines stay empty.

Background:
Given a supplier viewing a customer's page

Rule: The toggle only exists where the v2 preview is on

Scenario: CDV2-001 the toggle starts on legacy
When the page opens on a dev or local build
Then the legacy orders table and payment card show and the toggle reads Legacy
And a build with the preview off has no toggle

Rule: v2 reads the customer's orders

Scenario: CDV2-002 the orders table lists the customer's current orders
When the supplier switches to v2
Then the table lists only that customer's orders, the status tabs narrow it, and an invoiced order has an Invoice button

Scenario: CDV2-003 the payment card shows v2 figures for the picked invoice days
When the supplier switches to v2
Then the card shows net sales, payment received, store credits, refunds and outstanding balance from the customer's sold invoices
customer-payment-v2.feature
# prefix: CPV2
Feature: Customer payment figures from the current orders
Only on local and dev builds, the customers list shows a second Paid and Outstanding Balance pair,
computed from the current orders by the sales-report rules, beside the earlier pair so the two can
be compared. They are not the same figures: paid excludes store credit, pending sums each sold
invoice's positive balance after store credit, and refunds reduce paid instead of being added back.

Background:
Given a supplier linked to a customer

Rule: The v2 figures are the sales-report figures for that customer

Scenario: CPV2-001 paid and outstanding balance come from the customer's sold invoices
Given a delivered invoice of 4 with a settled payment of 1 and another delivered invoice of 4 unpaid
When the supplier lists customers asking for the v2 payment figures
Then the customer shows paid 1 and outstanding balance 7

Scenario: CPV2-002 a canceled invoice is not counted
Given a delivered invoice of 4 and a canceled invoice of 4
When the supplier lists customers asking for the v2 payment figures
Then the customer shows outstanding balance 4

Scenario: CPV2-003 a customer with no invoices shows zero
Given a customer with no orders
When the supplier lists customers asking for the v2 payment figures
Then the customer shows paid 0 and outstanding balance 0

Scenario: CPV2-004 each customer shows its own figures
Given two customers, one with a paid invoice and one with two unpaid invoices
When the supplier lists customers asking for the v2 payment figures
Then each customer shows only its own paid and outstanding balance

Scenario: CPV2-005 store credit lowers the outstanding balance but is not paid
Given a delivered invoice of 4 with a store credit payment of 1
When the supplier lists customers asking for the v2 payment figures
Then the customer shows paid 0 and outstanding balance 3

Scenario: CPV2-008 each customer shows whether its outstanding balance is hidden
Given one customer whose link hides the outstanding balance and one whose link does not
When the supplier lists customers asking for the v2 payment figures
Then the first shows the balance as hidden and the second does not

Rule: Only staff with customer access read the figures, and only for their own customers

Scenario: CPV2-006 staff without customer access are refused
Given supplier staff without access to customers and staff with read access
When each asks for a customer's v2 payment figures
Then the first is refused and the second sees the figures

Scenario: CPV2-007 a restaurant gets nothing
Given a restaurant reading its own business
When it asks for the v2 payment figures
Then it receives none

Each other spec is linked from the page that explains it.

Known limitations​

  • On production, the customer page's orders table and payment card read the earlier order records, not current orders. The sale orders shown on the Orders page do not appear there. On local and dev builds the page opens on current orders and a Legacy option switches back. See Customer page.
  • The Paid and Outstanding Balance figures on the customers list are the earlier figures. A second pair from current orders shows on local and dev builds only. See Customers list.

FAQ​

A customer's new order is not on their page. Where is it? Open Orders and search for the customer. The customer page still reads the earlier order records on production. See Customer page.

I can't add a customer. It says a restaurant already matches. The phone or email belongs to a restaurant on Clipp. Choose it and send a connection request. See Add a customer.

Where did a customer go from my list? It may be inactive. Use the ⋮ menu and View Inactive Customers. See Inactive customers.