DOES THE APP FIT YOUR STORE?
This page is for agencies, IT leads, and e-commerce teams who want to judge whether the app fits their setup before installing it. Everything stated here can be verified without installing.
WHAT THE APP DOES
Saal: Sales Agent lets you authorize selected customers as sales reps. They can sign in to the storefront on behalf of one of their assigned customers and order in that customer's name — with the terms on file, in the normal storefront, without admin access and without staff accounts.
Typical use case: field sales and commercial agents who take orders by phone, by email, or on site today and re-enter them in the back end afterwards.
REQUIREMENTS
For the full feature set:
- Shopify Plus with B2B enabled
- Companies and company locations created
- Customer-specific pricing maintained through catalogs and price lists
- Payment by company credit card on file or by invoice
- A theme that supports app blocks (Online Store 2.0)
Without Shopify Plus, a reduced feature set is available (see below).
FITS / DOES NOT FIT
A good fit when …
- Field sales or commercial agents take orders by phone, by email, or on site with the customer
- Those orders are re-entered manually as drafts in the admin today
- Terms are already negotiated and stored in catalogs or price lists
- Sales reps should not, or may not, be given access to the Shopify admin
- You work with commercial agents who cannot be given staff accounts
- A B2B portal exists, but the self-service rate is below expectations
Not a fit when …
- Prices are negotiated or discounted individually per order
- Quote-to-order and approval processes are required
- Comprehensive sales management inside the Shopify admin is expected (orders are attributed to the sales rep and can be reported on; commission accounting is not included at this time)
- Sales reps already have admin access with staff seats and are happy with it
- Pure B2C without company customers
- Configurable products with per-order costing are central to the business
FEATURE SET: WITH AND WITHOUT PLUS
| Feature | Shopify Plus | Without Plus (beta) |
|---|---|---|
| Signing in to assigned customers in the storefront | Included | Included |
| Filling the cart in the normal storefront | Included | Included |
| Completing through the regular checkout | Included | Not included |
| Customer-specific catalogs and price lists | Included | Not included |
| Payment by company credit card on file | Included | Not included |
| Order with invoice as the payment method | Included | Not included |
| Draft order with an automatic payment request | Included | Included |
| Assignment by company, customer, or tag | Included | Included |
| Pricing logic from third-party apps | in progress | in progress |
COMPLETING THE ORDER ON PLUS
Depending on the payment method on file, the result is:
- with a saved company credit card, a regular order with payment;
- with invoice set as the payment method, a regular order using that payment method. Downstream processes such as automatic invoicing from the ERP apply unchanged;
- with no payment method available, a draft order with a payment request, sent either automatically or manually.
Note on the beta without Plus: Without Shopify Plus, customer-specific prices are applied only to a limited extent. If your B2B prices are modeled through discount apps or a wholesale channel, this produces incorrect prices on real invoices. Tag-based prices, by contrast, are already supported. In that case we recommend waiting before installing.
TECHNICAL NOTES
Order attribution
The order is first created under the sales rep and, immediately afterwards, assigned to the actual customer through the orders/create webhook. The process runs with an automatic retry; if it fails, the assignment can be made manually.
Shopify Flow
Workflows that react to orders/create and read the customer should be configured with a one-minute delay. Otherwise they may see the sales rep instead of the customer.
ERP connection
The same applies to ERP synchronizations that react to orders/create. Most connectors run on an interval of several minutes anyway.
Other apps
Apps that react immediately to an incoming order (review, loyalty, or notification apps, for example) can show the same effect. Checking before rollout is advisable.
Order confirmation
Shopify's standard confirmation goes to the sales rep. Optionally, the app automatically sends a multilingual confirmation with explanatory text to the customer — or none at all, if the ERP already produces an order confirmation.
Data storage
All configuration lives in metafields in the store. No data beyond the store and the installation is stored outside the store. Every value is readable and writable through the regular GraphQL Admin API, for automated assignment during onboarding or for control from a central directory service.
Uninstalling
The theme blocks and all features are removed. The metafields remain and can be deleted through the API if needed.
SETUP
Setup takes about five minutes and requires no developer work.
- Place two theme blocks via deep link: the login block and the session bar
- Flag customers as sales reps
- Define assignments: companies, individual customers, or tags
Assignment to the respective company happens automatically at login.
SECURITY AND ACCESS
Real company membership, not a simulated session
At login, the sales rep is registered as a contact with ordering permission at the respective company location. This is the regular B2B checkout, not a reconstructed session and not shared credentials.
No admin access
Sales reps need neither staff seats nor access to the Shopify back end. That explicitly includes commercial agents and external sales partners.
Payment data
Only the last four digits of the company payment method on file are visible. Full card details are never displayed or stored.
Membership lifecycle
After logout, the sales rep is removed from the customer's company. The same applies to the previous membership when switching to another customer. Optionally, a primary company can be set, which the rep falls back to after every logout — relevant for stores that hide prices and assortment entirely behind the login.
Revoking permissions
Assignments can be revoked centrally at any time. Access ends immediately.
Traceability
Every order is attributed to the sales rep who placed it and can be reported on afterwards.
Consent
The customer's consent is confirmed once, with date, note, and the responsible sales agent, and stored for subsequent orders.
Inventory on drafts
Draft orders do not reserve inventory. Between taking the order and confirming it, the goods can be sold elsewhere. Inventory reservation for drafts is in progress.
SAAL: SALES AGENT ON THE SHOPIFY APP STORE
Install it directly from the Shopify App Store. Setup takes about five minutes and needs no developer work.
View on the Shopify App Storeapps.shopify.com/saal-sales-agent