Ajutor – Ghid complet 3PL
Aici găsiți, pe o singură pagină, tot ce trebuie să știți ca să folosiți platforma: autentificare și context companie, interfața (meniu, bară de sus), fluxul operațional de la catalog la retur, descrierea fiecărui modul, un scenariu numerotat cu calcule de stoc și, la final, documentația 3PL (furnizori, coduri, facturare estimată, audit, sesiune, glosar). Nu este nevoie să căutați în altă parte — conținutul este integral mai jos.
Roadmap
- lansat Comparare documente (PO / SO / recepții / retururi) — Un singur ecran /compare — selector tip + două ID-uri; linkuri vechi redirecționează.
- lansat parțial Istoric cantități pe linie (activity) — Jurnal pe linii PO; extinderi pentru alte documente.
- lansat Integrări: panou sănătate în setări — Ultimul apel transport 3PL și ANAF.
- lansat Onboarding primii pași — Banner pe dashboard până la confirmare.
Was this page helpful?
One tap; you can submit again anytime.
Puteți intra rapid ca utilizator demo ion.popescu@3plwms.com (parola este cea configurată în Setări sistem de către administrator). După autentificare veți fi redirecționați spre crearea unui articol. În secțiunea Scenariu practic complet de pe această pagină există linkuri „Mergi la pagină” pentru fiecare pas al fluxului.
1. Introducere
3PL este o aplicație web pentru gestiunea depozitului și a relației cu clienții logistică (model 3PL). Lucrați în modul „companie”: datele (articole, comenzi, stoc) aparțin companiei selectate în sesiune. Rolul dvs. (ex. administrator companie, operator depozit) determină ce meniuri și acțiuni sunt disponibile.
Acest ghid este structurat în ordinea în care un utilizator nou înțelege de obicei sistemul: mai întâi cum intrați și ce înseamnă contextul companiei, apoi unde găsiți funcțiile în ecran, apoi cum curg operațiunile de la intrarea mărfii până la livrare și retur, apoi ce face fiecare modul, un exemplu numeric complet, iar la final documentația administrativă 3PL (furnizori, coduri interne, facturare estimată, audit etc.), aceeași informație ca în Workbook 3PL din aplicația autentificată.
Workflow în depozit — Când intră sau iese marfa, ce înseamnă statusurile, anulările și legătura între comenzi, recepții și retururi, pe înțelesul echipei (fără detalii tehnice). Deschide ghidul (/workflow).
Utilizatorii autentificați pot deschide și Workbook 3PL din meniu (aceeași documentație, în layout-ul aplicației). Pe această pagină publică de ajutor, conținutul este reprodus integral mai jos, la secțiunea 9.
3. Autentificare, selecție companie și context
Cum vă autentificați
Deschideți pagina principală a site-ului și accesați Autentificare (sau echivalentul din meniul public). Introduceți adresa de e-mail și parola primite de la administratorul organizației. După trimiterea formularului, serverul verifică credențialele și creează o sesiune securizată. Dacă autentificarea eșuează, verificați tastarea parolei, starea contului și faptul că folosiți URL-ul corect al instanței.
Mai multe companii
Dacă utilizatorul are drepturi în mai multe companii client, sistemul poate afișa un pas de Selectare companie înainte de a intra în dashboard. Compania aleasă devine contextul activ: listele, comenzile, stocul și rapoartele se referă la acea companie până când schimbați compania din bara de sus (vezi secțiunea 5).
După autentificare
Ecranul principal este Dashboard: rezumate, indicatori și acces rapid. Navigarea către module se face prin meniul lateral. Dacă nu vedeți un modul, fie compania nu are acel modul în abonament, fie rolul dvs. nu include permisiunea — în ambele cazuri trebuie solicitată ajustarea la administratorul 3PL sau la administratorul companiei.
4. Meniul lateral (sidebar)
Meniul se află în partea stângă. Grupurile se pot extinde sau restrânge; subferestrele duc la liste (ex. listă comenzi) sau la acțiuni de creare. Etichetele de mai jos sunt cele folosite în interfață (în engleză); rolul lor în procesul de business este explicat pe scurt.
- Dashboard — Punct de plecare: indicatori, scurtături, uneori grafice. Nu înlocuiește rapoartele detaliate din modulul Reports.
- Clients — Companiile cărora le furnizați servicii de logistică (fiecare cu date operaționale proprii în sistem). Legături cu datele operaționale unde este cazul.
- Partners — Parteneri comerciali: furnizori (de la care cumpărați) și clienți (cărora le vindeți), inclusiv puncte de lucru și date de contact pentru documente și livrări.
- Articles — Catalogul de articole (SKU): cod unic, descriere, unitate de măsură, atribute fizice, coduri de bare. Fără articol în catalog nu puteți adăuga linii valide pe PO sau SO.
- Inbound — Intrări: Purchase Orders (PO, comenzi de cumpărare către furnizor) și Receptions (recepții fizice în depozit). Recepția crește stocul.
- Stock — Vizualizare cantități pe articol și depozit, jurnal de mișcări (tranzacții), uneori reguli sau alerte legate de stoc.
- Outbound — Ieșiri: Sales Orders (SO). Livrarea (marcarea ca livrat) scade stocul din depozitul sursă ales.
- Returns — Retururi de la client: documente legate de un SO, care măresc din nou stocul în depozitul ales pentru retur.
- Stock options — Configurări suplimentare legate de politici sau opțiuni de stoc (disponibilitate în funcție de modul și rol).
- Warehouses — Definirea depozitelor fizice sau logice între care se ține evidența cantităților. Fiecare mișcare de stoc se raportează la un depozit.
- Export/Import — Transfer de date în masă (de ex. Excel/CSV) pentru anumite entități, conform formatelor acceptate de platformă.
- Reports — Rapoarte operaționale: stoc, urmărire lot, istoric, exporturi pentru analiză.
- Administration — Utilizatori, roluri, integrări (ex. webhooks), setări la nivel de companie unde este permis.
5. Bara de sus
Selector companie — Dacă aveți acces la mai multe companii, un control în partea superioară permite comutarea contextului. Toate ecranele care depind de companie (liste, formulare, stoc) vor reflecta noua selecție după schimbare. Nu confundați compania cu „furnizorul 3PL” din documentația administrativă: compania este entitatea operațională curentă.
Meniu utilizator — Zona din dreapta sus conține de obicei profil, setări personale și deconectare. O pictogramă de ajutor poate deschide această pagină.
Consecințe operaționale — Înainte de a crea documente, verificați vizual compania selectată, pentru a evita înregistrarea comenzilor sau recepțiilor sub altă companie decât cea dorită.
6. Flux operațional (de la date de bază la retur)
Pe scurt, pas cu pas: același flux explicat pentru oameni (stoc, statusuri, anulări) — Workflow în depozit.
În 3PL, ordinea recomandată respectă dependențele dintre date: mai întâi definiți ce vindeți/stocați (articole), unde (depozite) și cu cine (parteneri), apoi creați documente care mișcă cantitățile. Stocul este actualizat de regulă la recepție (intrare), la livrare SO (ieșire) și la retur (intrare). Sistemul înregistrează mișcările astfel încât să puteți urmări istoricul în jurnalul de stoc.
Scop. Fiecare SKU folosit în comenzi trebuie să existe o singură dată în catalog, cu identificator clar, pentru a evita dublurile și confuziile la recepție și inventar.
Ce introduceți. Cod articol (unic în contextul permis de regulile sistemului), denumire / descriere, unitate de măsură pentru operațiuni (ex. BUC, KG), și opțional dimensiuni, greutate, cod de bare — utile la logistică și scanare.
Câmpuri tipice obligatorii: referință client acolo unde este cerută de formular, cod articol, descriere, unitate de măsură (UM).
Rezultat. Articolul poate fi selectat pe liniile de PO și SO; fără acest pas, fluxul se oprește aici.
Scop. Înregistrați intenția de a achiziționa mărfuri de la un furnizor: ce articole, în ce cantități, la ce termene sau condiții rezonabile reflectate în document.
Legături. Partenerul trebuie să fie definit ca furnizor. Liniile fac referire la articole din catalog. Statusul PO poate evolua (ex. draft → trimis → parțial recepționat → închis), în funcție de modul în care lucrați operațional.
Rezultat. Puteți crea o recepție care consumă cantități din acest PO, până la concurența totală comandată.
Scop. Confirmați fizic intrarea mărfii: cantitățile primite pot fi egale sau mai mici decât cele comandate pe PO (recepție parțială). Depozitul ales este locul unde se adună stocul disponibil pentru SO.
Mecanism. La validarea recepției, aplicația creează mișcări de stoc pozitive pentru combinația articol + depozit (+ lot, dacă modulul impune loturi).
Rezultat. Stocul disponibil crește imediat; jurnalul de tranzacții reflectă intrarea, ceea ce permite audit și reconciliere ulterioară.
Scop. Înregistrați vânzarea către un client: articole și cantități, depozitul sursă din care se alocă stocul. Până la livrare, cantitățile pot fi rezervate sau tratate conform regulilor platformei.
Livrare. Trecerea comenzii în starea LIVRAT (sau echivalent) declanșează scăderea stocului din depozitul ales. Este important ca statusul să reflecte realitatea fizică, pentru ca stocul și rapoartele să rămână corecte.
Rezultat. Stocul scade; retururile ulterioare se leagă de acest SO pentru trasabilitate.
Scop. Când clientul returnează mărfuri, documentul de retur înregistrează ce intră înapoi în depozit, în legătură cu SO-ul inițial.
Rezultat. Stocul crește din nou; lanțul PO → recepție → SO → retur rămâne urmăribil pentru audit.
7. Module și acces
Fiecare modul de mai jos poate fi ascuns dacă nu face parte din pachetul companiei sau dacă rolul dvs. nu include permisiunea. Textul descrie de ce există modulul și ce veți face în mod tipic acolo.
Clients
Gestionarea entităților pentru care operați logistic în calitate de 3PL: date de identificare, legături cu modulele operaționale. Fără clienți 3PL corect configurați, alte fluxuri pot fi incomplete.
- Vizualizare și editare conform drepturilor
- Context pentru raportare per client
Partners
Agenda partenerilor: furnizori și clienți operaționali, cu puncte de lucru (adrese de livrare/preluare, contacte). PO-urile se leagă de furnizori; SO-urile de clienți.
- Evită introducerea manuală repetată a adreselor
- Uniformizează denumirile pe documente
Articles
Sursa unică de adevăr pentru SKU-uri: cod, descriere, UM, atribute fizice. Toate liniile de comandă referă aceste înregistrări.
- Menține consistența între recepții și livrări
- Permite căutare și filtrare rapidă în liste mari
Inbound
Tot ce intră în depozit din achiziții: comenzi către furnizor (PO) și recepții care confirmă marfa primită. Aici începe creșterea de stoc din fluxul de aprovizionare.
- Urmărire cantități comandate vs recepționate
- Legătură clară furnizor – articol – depozit
Stock
Vizibilitate cantitativă: cât există, unde, și istoricul mișcărilor (intrări/ieșiri/ajustări după caz). Esențial pentru reconciliere și pentru a evita livrări fără acoperire.
- Verificare înainte de promisiuni către client
- Audit după recepții și livrări
Outbound
Comenzi de vânzare și livrări. Fluxul se încheie operațional cu marfă ieșită din depozit și status corespunzător pe document.
- Alocare depozit sursă
- Control cantități livrabile
Returns
Gestionați retururile post-livrare, păstrând legătura cu SO-ul inițial pentru a explica creșterile de stoc și pentru rapoarte.
- Trasabilitate end-to-end
- Suport pentru dispute și garanții
Warehouses
Definiți locațiile între care se împarte stocul. O recepție și o livrare trebuie să știe mereu „în care depozit” se întâmplă.
- Structură minimă înainte de prima recepție
- Poate reflecta clădiri, zone sau logica dvs. internă
Stock options
Reguli sau parametri suplimentari pentru modul în care stocul este calculat sau prezentat (în funcție de configurarea instanței). Explorați doar dacă administratorul a activat funcții aici.
Export/Import
Operații în masă pentru migrări inițiale sau actualizări periodice, în formate acceptate. Respectați șabloanele și validările pentru a evita erorile de import.
Reports
Ieșiri structurate pentru management: stoc la zi, urmărire lot, istoric mișcări, uneori indicatori agregați. Folosiți rapoartele pentru decizii, nu doar ecranul de listă simplă.
Administration
Control acces utilizatori, roluri, integrări (webhooks), uneori setări de firmă. De obicei rezervat administratorilor; modificările aici afectează întreaga companie selectată.
8. Scenariu practic complet (exemplu numeric)
Următorul scenariu pornește de la zero și arată cum se calculează stocul după achiziție, livrare și retur. Fiecare pas include de ce este necesar și ce verificați după execuție.
Ipoteză. Achiziționați 100 BUC de „Produs A” de la „Furnizor X”, le recepționați integral în „Depozit principal”, vindeți 30 BUC către „Client Y”, marcați livrarea, apoi clientul returnează 10 BUC. Stocul final așteptat: 100 − 30 + 10 = 80 BUC în depozitul unde ați înregistrat returul.
- Pas 1 — Articol în catalog. Creați articolul cu cod unic (ex. ART-001), descriere și UM BUC. Fără acest pas, liniile de comandă nu au la ce să se lege.
- Pas 2 — Depozit. Definiți „Depozit principal” (sau numele ales). Fără depozit nu puteți preciza unde crește stocul la recepție.
- Pas 3 — Parteneri. Creați „Furnizor X” ca furnizor și „Client Y” ca client. Veți selecta aceste înregistrări pe PO, respectiv SO.
- Pas 4 — PO 100 BUC. Comandă de cumpărare către Furnizor X pentru 100 BUC Produs A. Verificați totalul liniilor înainte de salvare.
- Pas 5 — Recepție. Înregistrați recepția pe PO, 100 BUC în depozitul ales. După salvare, în Stock ar trebui să vedeți +100 pentru combinația articol + depozit.
- Pas 6 — SO 30 BUC. Comandă de vânzare către Client Y, 30 BUC, depozit sursă = depozitul unde aveți cele 100 BUC. Până la livrare, stocul disponibil poate fi tratat conform regulilor de rezervare ale sistemului.
- Pas 7 — Livrare. Deschideți SO-ul și setați status LIVRAT (sau echivalent). Stocul scade cu 30 BUC. Verificați în jurnalul de stoc mișcarea de ieșire.
- Pas 8 — Retur 10 BUC. Creați returul legat de SO, 10 BUC înapoi în depozit. Stocul crește cu 10. Rezultat final: 100 − 30 + 10 = 80 BUC.
Verificare finală. În modulul Stock, confirmați că pentru „Produs A” în depozitul folosit aveți 80 BUC și că jurnalul conține intrările/ieșirile corespunzătoare recepției, livrării și returului.
9. Ghid 3PL și platformă (documentație extinsă)
Secțiunea următoare este identică ca substanță cu Workbook 3PL din aplicația autentificată. Acoperă: concepte (3PL, mai multe companii pe aceeași platformă), roluri în platformă, coduri interne TPL și CLI, pașii de creare furnizor și legare companii, utilizatori, facturare estimată, jurnal de audit, sesiune și context (selectare furnizor vs companie), cod intern de furnizor, parcurgerea ecranelor în UI pentru creare furnizor și companie, glosar și tabel cu rute utile. Linkurile către pagini administrative (ex. listă furnizori, audit, facturare) funcționează după autentificare și depind de drepturile contului dvs.; dacă nu aveți acces, contactați administratorul.
Unified documentation: concepts (3PL provider vs 3PL company), roles, TPL and CLI codes, creating a provider, companies and users, estimated billing, audit log, session and context, internal code, UI walkthrough and glossary. The “Page” table links use a sample provider you can access when signed in.
Full guide: 3PL platform and 3PL companies
Guide covering the 3PL provider flow, 3PL companies, modules, cost estimate, and audit.
This workbook walks step by step through how the app connects a logistics 3PL provider, 3PL client companies, billable modules, users, and the audit trail. It is aimed mainly at super administrators and 3PL administrators (admin_3pl role).
Terms used below: “3PL provider” = the record under 3PL Providers (internal TPL… code); “3PL company” = a company served by that 3PL, with its own CLI… internal code and its own modules and users.
1. Core concepts
The platform separates two levels: (A) administering a 3PL provider — settings, users tied to that provider, default modules for new companies; (B) operating inside a 3PL company — stock and orders, company users, modules enabled for that company. Physical depots are catalogued under the 3PL operator, not owned by the 3PL company row.
Modules exist in a catalog (monthly or daily price). When you create a 3PL provider you choose a set of default modules (stored as slug list). They act as a template for new companies under that 3PL; afterwards, a super admin can adjust modules per company where the admin UI allows.
- One 3PL provider can have many 3PL companies.
- Each 3PL company has its own internal code (CLI prefix in practice); it is a different field from the provider’s TPL code, even though both are stored as `internal_code` in different tables.
- Current context (active company / selected 3PL) affects which menus and data you see.
- A 3PL provider is itself a company; a second row (3PL company record) with the same details as the provider is the operational record for that same business—not a mistaken duplicate.
2. Roles and permissions (summary)
Creating, editing, and deleting 3PL provider records is generally reserved for super administrators. Viewing a provider and related pages (getting started, audit) is allowed for users who have access to that provider (e.g. 3PL admins). Billing preview and company module invoicing screens are reserved for super administrators.
- Super admin: can create 3PL providers, change internal codes, manage platform-level module screens where they exist.
- 3PL administrator (admin_3pl): operates on behalf of the provider; sees the provider and linked companies, without necessarily having super-admin rights.
- Company users: tied to one or more 3PL companies; do not necessarily see global 3PL administration.
3. Internal codes: TPL (provider) vs CLI (3PL company)
Internal codes keep entities distinct. The TPL prefix is used for 3PL providers. If you leave the field empty at creation, the system may assign an automatic code like TPL plus digits (e.g. TPL000042). You can also enter a manual code (uppercase letters, digits, hyphens) with uniqueness checks.
Technical note: internal code uniqueness is enforced per table (`three_pl_providers` and `clients_3pl`). There is no cross-table constraint that forbids the same character string in both tables — the database can theoretically store the same text as both a provider code and a 3PL company code. Validation on save only checks duplicates within the same table (e.g. `unique:clients_3pl,internal_code` for companies).
Why TPL and client-company (CC) prefixes anyway: generators and the in-app convention (see the “TPL vs 3PL company code” help when creating a provider) keep the two worlds clearly separate — not as a hard uniqueness rule across tables, but for clarity in reports, messages, support, and integrations: you avoid ambiguity when one code could mean two different entity types.
When editing a 3PL provider, internal code changes respect uniqueness only within the providers table and may be recorded in history / activity log.
What does TPL mean?
In the source code (CodeGeneratorService), the TPL prefix is explicitly tied to third-party logistics: the 3PL provider is the entity that performs logistics for its clients. It is not a long “official” label in the UI — it is a short prefix for provider internal codes (e.g. TPL000042).
What does CLI mean here?
Sequential auto-codes for 3PL companies use a CLI-style prefix in the database (CLI000001, CLI000002, etc.). In forms and ANAF suggestions you will also see a CC segment (3PL company code), e.g. TPL…-CC-… — it is not “command-line interface”. The help modal contrasts TPL (provider) vs 3PL company codes.
Why both TPL and CLI — what is each one for?
The app model has two levels: (1) the 3PL provider — the logistics-side record that holds provider settings, default modules, and admin_3pl users (any formal agreement between platform and provider is a super-admin concern, not something 3PL users “administer” as contracts here); (2) the 3PL company — the client company record for orders, stock, and company users. Depot master data (`warehouses`) belongs to the 3PL provider only (`three_pl_provider_id`), not to a 3PL company. TPL and CLI codes are short identifiers, easy to spot in reports and integrations, each for its own level.
- TPL answers: which logistics provider (3PL organization) is this record about? — you see it in provider administration, default modules for new companies, and (for super administrators only) provider-level billing estimates.
- CLI answers: which client company of that 3PL is running operations? — orders, inbound flows, and operational data are tied to the company with the CLI code. Depot records still sit under the 3PL operator; they do not replace the provider’s TPL code.
4. Creating a 3PL provider — wizard steps
From administration, open the new provider form. It is split into logical steps (data, modules, code, optional template from another provider, 3PL administrator).
New 3PL Provider 3PL Providers
Step A — Main data
Enter legal name (required) and optionally commercial name and tax identifiers where fields exist. Without a valid legal name you cannot proceed correctly.
Step B — Default modules
Select catalog modules that become defaults for new companies under this 3PL. The list may be empty; the super-admin billing preview will then show zero or no lines until modules are added.
Step C — Internal code
Leave empty for automatic TPL… assignment or enter your own. Live checks (available / taken) run after normalization.
Step D — Template from existing provider (optional)
If you pick a template provider and do not select modules manually, default modules may be copied from that provider. Useful for repeatable setups.
Step E — 3PL administrator (optional but recommended)
You can attach a user with admin_3pl immediately: either an existing user (search by name/email) or a new user (name, email, password). Super-admin accounts cannot be chosen as 3PL administrator. For a new user, a welcome email may be sent depending on app configuration.
5. After save — redirect and onboarding
After a successful create, the app redirects to Getting started for that provider, not to the list. You see a snapshot: number of 3PL companies, depots in that provider’s warehouse catalog, distinct users linked to 3PL companies.
From the same page you get shortcuts: new company (with provider pre-filled via parameter), audit log, 3PL users management, and a link to this workbook. Super administrators also see a billing preview shortcut there.
- If there is no 3PL company yet, the first practical step is to create one.
- Once companies exist, open a company’s detail page for operational setup (users, modules, etc.); manage depots from the 3PL warehouse catalog when your role allows.
6. 3PL companies under a 3PL
New companies are created from the companies flow. When you open the form with URL parameter three_pl_provider_id equal to the provider’s id, the “3PL Provider” field is preselected — reducing selection mistakes.
The company receives an internal code in the CLI namespace (per form/generator rules). Active modules for the company may align with the 3PL template or be adjusted later, depending on your platform configuration.
Deep-link example: /companies/create?three_pl_provider_id=5 (replace 5 with the real id).
7. Users tied to the 3PL provider
The 3PL provider users page lets you attach users to that provider and assign allowed roles (including admin_3pl). This is separate from users tied only to a specific 3PL company.
Actions here may write audit log entries so there is a trace of who added or removed someone from the provider.
9. Audit log and CSV export
The log for a 3PL provider aggregates Activity events where the subject is the provider record itself, or where properties include that provider’s id (e.g. actions on users linked to the 3PL).
You can browse a paginated list and export a CSV file (UTF-8 with BOM for Excel) with columns such as time, log name, description, causer email, subject type, subject id, properties JSON.
- Export is useful for internal compliance or external review over a period.
10. Routes and parameters (reference)
| Page | Notes |
|---|---|
| 3PL Workbook (this guide) | This guide (authenticated, verified user). |
| 3PL Providers — list | Provider administration; create/update only where policy allows. |
| Getting started (provider onboarding) — Open the list and pick a provider for direct links. | Onboarding after create or from provider detail. |
| Audit log (CSV export from the page) — Open the list and pick a provider for direct links. | List + CSV export. |
| New 3PL company | New 3PL company with 3PL preselected. |
11. Session: selecting 3PL provider and active company
After login, users with more than one context may use screens such as 3PL selection and active company selection. The chosen context drives which data appears in menus, reports, and day-to-day operations.
Switching 3PL context (where available) updates the session so later actions are interpreted in that provider’s scope. Likewise, the active company scopes operational data and modules.
- If some menus are missing, check that the correct company is selected and that your role includes the relevant module.
What is “context” in this app?
The session mainly stores two values that define “where you are” in the app: current_three_pl_id (selected 3PL provider) and current_company_id (active 3PL company). Sidebar, filters, and many queries use them (SidebarComposer, navbar).
In practice: if I change “context”, am I changing the 3PL?
Not only by hand. Context = the pair (3PL in session + active company). Most often you change the active company (another client company / another CLI code): the app then updates the 3PL in session to match the chosen company, so you do not work in a company that belongs to 3PL A while the session still thinks 3PL B.
You change the 3PL explicitly (without picking a company first) when you use the provider selection flow or quick 3PL switch: that updates current_three_pl_id directly; when selecting from the list, the company may be cleared so you pick a company under the new provider.
In short: you change context either by switching to another company (the 3PL in session updates on its own) or by choosing another 3PL as a filter (you usually then pick the company again).
Difference: changing context vs. changing 3PL provider
They are not two unrelated ideas: changing the 3PL provider is one kind of context change, but not the only one.
- Selecting a provider via /select-three-pl (storeThreePlSelection): sets current_three_pl_id and clears current_company_id so you pick a company under that 3PL again. This is the 3PL “filter” change for super admins (and a similar flow for admin_3pl users with multiple providers).
- Switching active company (switchCompany): sets current_company_id and, if the company has three_pl_provider_id, also updates current_three_pl_id to match — they stay in sync (you do not stay on 3PL B in session while working in a company that belongs to 3PL A).
- Quick 3PL switch (switchThreePl on ThreePlProviderController): only changes current_three_pl_id in session (e.g. from a context UI), without going through the company selection screen.
- Leave context (leaveContext, super admin only): clears both current_company_id and current_three_pl_id — back to a more global view with no active company/3PL in session.
12. Editing a provider and internal code history
When editing a 3PL provider, internal code changes follow the same uniqueness and normalization rules as on create. Changes may be written to a dedicated activity log for code changes (old/new value, user, time).
Use the provider edit screen and any “internal code history” section shown in the UI.
13. UI workflow — steps and button labels
The steps below match the actual screens (Blade views). Labels are those shown through the translation system (English when the app locale is en).
New 3PL Provider
Route: `/three-pl-providers/create` (New 3PL Provider).
Page title: “New 3PL Provider” / subtitle “Add a logistics service provider”.
Top right: “Back to list” (returns to the provider list).
Step bar: ① Main data — ② modules — ③ 3PL administrator — ④ Preview. You can click each step to jump where allowed.
- Step 1 — Main data: card “Provider data”. Optional: “Template from existing provider” (copies default modules). “Internal code” field with placeholder for auto TPL, “Generate code” button, “TPL vs 3PL company code” link (opens the help modal). Enter “Legal name” (required) — without it, optional fields stay gated and the “Next” button on this step may stay disabled. Then “Next” to step 2.
- Step 2 — modules: heading “Default modules for new companies”; “Select all” / “Deselect all”. Footer: “Main data” (back) and “3PL administrator” (forward). The right sidebar shows “Cost estimate” as you toggle modules.
- Step 3 — 3PL administrator: card titled “3PL administrator”. Checkbox “Add 3PL administrator now”. Choose “Existing user” (search) or “New user” (name, email, password, confirmation; optional “Skip welcome tour”). Footer: back to “modules” or “Preview” forward.
- Step 4 — Preview: card “Review and create” with the summary. Buttons: “Back” to step 3 and “Save” (submits the form). On success: redirect to Getting started for that provider.
New company
Route: `/companies/create` (New 3PL company); add `?three_pl_provider_id=ID` to preselect the provider.
Title: “New 3PL company” / intro about adding a 3PL company linked to a 3PL provider.
For super admins, steps are: ① Main data — ② Company administrator — ③ Preview. For other users the wizard has fewer steps — see the progress bar on screen.
- Step 1 — Main data: two cards — “Main data” (left) and “Contact and address” (right). Under “Main data”: required “3PL Provider” dropdown (when shown), required “Cod Intern” label (hard-coded Romanian label in the view), “Legal name”, optional commercial name, CUI/CIF with “Fetch from ANAF”, EORI, registration country. “Contact and address”: email, phone, registered office, description, payment, currency, VAT, “Active company” switch. Footer: “Next”.
- Step 2 — Company administrator (super admin only): “Company administrator” card with “Create admin user” switch. Enable the form for a new user (name, email, password) or leave it off. Then “Preview”.
- Final step — Preview: “Review and create”; button “Create 3PL company” (not “Save”) submits the form.
14. Quick glossary
- 3PL provider
- The logistics organisation between the platform and the companies you serve. In the app it gets a short code that usually starts with the letters TPL so you can spot it quickly in lists and reports.
- 3PL company
- The company that works day to day in the app: orders, warehouse, its own users. It has its own short code (in practice, the CLI family), different from the 3PL provider code — so everyone knows who is the “logistics provider” and who is the “operating client”.
- TPL code / CLI code
- Two kinds of short codes so people and reports don’t mix up the “logistics organisation” with the “company that operates every day”. TPL code (3PL provider): if you leave the field empty at creation, the system may suggest something like TPL followed by digits (e.g. TPL000042). You can also enter your own code using UPPERCASE letters, digits, and hyphens — it must be unique among providers. CLI code (3PL company): when auto-generated it often looks like CLI plus digits (e.g. CLI000001, CLI000002). In forms or documents you may also see variants with a CC segment (3PL company code). For management: the same-looking code does not mean the same thing — TPL = provider level, CLI/CC = 3PL company level.
- Active company (context)
- In plain terms: which company you are “looking at” on screen after sign-in and after you pick the company. All lists, orders, and stock refer to that company until you switch it in the selector. Don’t confuse this with changing the 3PL provider in admin screens — that is a different level of work.
- Module
- A piece of functionality you can turn on for a company — for example a report type or a specific flow. Some modules have a price in the catalogue; what you see in the menu depends on what was enabled for your company.
- Activity / audit
- A history of important events: who changed what, and when. Used for internal control, audit questions, or when you need to reconstruct “who did what”. It can usually be exported to a file for review.
- API
- The “official” way other systems in your business (ERP, finance, BI) can read or send data into the app, with the right permissions for each user. Technical documentation is public on the site at /api-docs — IT teams use it to build integrations.
- Webhook
- A web address you register in the system; when something important happens (for example an order status changes), the app sends an automatic “heads-up” to that address. That helps automation — e.g. updating a table in another tool or triggering a notification — without checking everything by hand.
- 3PL
- Common shorthand for “warehouse management system”. In practice: the part of the app where you track what comes in, what goes out, what is on hand, returns, and warehouse-related reports.
- SKU / article
- The product record in the catalogue: the code warehouse and office use, the name, the unit (pieces, kg…). Without this step you cannot add lines on purchase or sales orders — everything starts from the catalogue.
- PO (Purchase Order)
- The order you place with a supplier — which products and how many. When goods arrive, you record receptions “against” this order until you cover what you ordered (or partially, if that is what you agreed).
- SO (Sales Order)
- The sale to the customer: what you ship and in what quantities. When you mark the delivery as complete in the app (goods have left for the customer), quantities leave stock. If the customer sends something back, the return is linked to this sale so the story stays clear.
- Reception
- The step where you confirm goods have physically entered the warehouse, usually based on a purchase order. After you confirm, “what you have on the shelf” goes up by the received quantities.
- Warehouse
- The place where you track quantities — a building, a location, or an internal name. Every inbound or outbound move must clearly state which warehouse it happens in, otherwise stock cannot be followed correctly.
- Stock / transaction journal
- “How much we have now” for each product and warehouse. Next to that, the history (journal) shows how you got to those figures: receptions, shipments, adjustments. Useful when you need to explain differences or check a delivery.
- Return
- When the customer sends goods back. You record it in the app linked to the original sale; the quantity goes back into the chosen warehouse so stock and history stay correct.