Inventory Operations Module

Supplier Management

Supplier module helps you control vendor records used in purchases and supplier reports. You can add suppliers, edit details, control active status, search/filter quickly, and run bulk operations.

Part A: Non-Technical User Guide

1. What You Can Do

  • Add a new supplier (name, email, phone, address, status).
  • Edit supplier information any time.
  • Activate/inactivate suppliers.
  • Search suppliers by name/email/phone/address.
  • Filter suppliers by status.
  • Delete single or multiple suppliers.
  • Export supplier list and copy list data.

2. Page Layout

  1. Search box: quick search by text.
  2. Filter icon: open advanced status filter.
  3. Top action buttons: Set Active/Inactive, Delete (bulk), Export, Copy, Add.
  4. Table: Name, Email, Phone, Address, Status, Actions.
  5. Pagination: navigate large supplier lists.

3. How to Add Supplier

  1. Go to Suppliers menu.
  2. Click Add.
  3. Fill required fields: Name, Email, Phone.
  4. Add address if needed and choose status.
  5. Click submit to save.

4. How to Edit Supplier

  1. Find supplier from list.
  2. Click Edit icon.
  3. Update fields and save.

5. How to Change Status

  1. Single: use status toggle in supplier row.
  2. Bulk: select rows and click Set Active or Set Inactive.

6. How to Delete

  1. Single: click delete icon for one supplier.
  2. Bulk: select multiple rows, then click bulk delete.
  3. Confirm warning popup.

7. Export and Copy

  • Excel/CSV: download visible/selected supplier rows.
  • Copy: copy table data to clipboard.

8. Common Problems and Fixes

Problem Reason Fix
Cannot save supplierRequired fields missingProvide name, email, and phone.
Email already existsDuplicate supplier emailUse a unique email.
Status not changingNo permission or API failedCheck user rights and retry.
Bulk actions not visibleNo rows selectedSelect supplier rows first.

Part B: Technical Reference (For Technical Users)

1. Frontend Files

  • frontend-source/src/pages/suppliers/Suppliers.jsx - list UI + search/filter/sort + CRUD actions.
  • frontend-source/src/pages/suppliers/components/SupplierAddEditModal.jsx - add/edit form UI.
  • frontend-source/src/api/supplier.js - supplier API client methods.

2. Backend Files

  • app/Http/Controllers/Api/SupplierController.php - list/store/update/status/delete logic.
  • routes/api.php - supplier routes.

3. API Endpoints (Supplier Module)

Method Endpoint Purpose
GET/api/v1/suppliersList suppliers with pagination/filter/sort
POST/api/v1/supplier/storeCreate supplier
ANY/api/v1/supplier/update/{id}Update supplier
PUT/api/v1/supplier/statusSingle/bulk status update with ids[]
DELETE/api/v1/supplier/delete/{id}Delete single supplier
DELETE/api/v1/supplier/multiple-deleteDelete multiple suppliers

4. List Query Parameters

  • search
  • status
  • page
  • perPage
  • sortField
  • sortOrder

5. Validation Rules

Store

  • name: required, string, max 255
  • email: required, email, unique in suppliers
  • phone_number: required, string, max 15
  • address: optional, string, max 255

Update

  • Same as store with email unique check excluding current record id.

Status Update

  • ids: required array, each id must exist in suppliers
  • status: required, 0 or 1

6. Request Payload Examples

{
  "name": "ABC Supplier",
  "email": "abc@supplier.com",
  "phone_number": "01700000000",
  "address": "Dhaka",
  "status": 1
}
{
  "ids": [1, 2, 3],
  "status": 0
}
{
  "ids": [1, 2, 3]
}

7. Permission Keys Used in Frontend

  • supplier.view
  • supplier.create
  • supplier.edit
  • supplier.delete

8. Integration Notes

  • Supplier data is consumed in Purchase screens and Supplier Report.
  • Supplier status directly impacts selectable suppliers in purchase operations.
  • Consistent response shape follows status, message, data, meta.

Screenshots

Supplier Management
Supplier management screen