# Supply Chain Management — Business Processes

## 1. Procurement Process

```
PR → PO → GR → 3-Way Match → Invoice → Payment
```

### 1.1 Purchase Requisition (PR)

**Trigger**: Department identifies need for materials or services.

1. Requestor creates PR with item details, quantity, estimated cost, and justification
2. PR routes through multi-level approval based on amount thresholds:
   - Level 1: Department Manager (up to Rp 10M)
   - Level 2: Supply Chain Manager (Rp 10M–Rp 100M)
   - Level 3: Director (>Rp 100M)
3. Approved PR is converted to Purchase Order
4. Rejected PR may be revised and resubmitted

**Key fields**: PR# (auto), requestor, department, required date, line items (SKU, description, qty, UOM, est. price), justifications, approval history

### 1.2 Purchase Order (PO)

**Trigger**: Approved PR or direct procurement need.

1. Procurement officer selects supplier (system suggests preferred suppliers)
2. PO captures: supplier, delivery warehouse, line items (SKU, qty, unit price), delivery date, payment terms
3. PO approval workflow with configurable authority limits:
   - Up to Rp 50M: Procurement Manager
   - Rp 50M–Rp 500M: Finance Manager
   - Above Rp 500M: Director
4. PO sent to supplier via email (PDF) or supplier portal
5. Supplier acknowledgment tracked

**PO lifecycle**: `Draft → Pending Approval → Approved → Partially Received → Completed → Closed`

**PO Amendments**: Changes to approved POs (qty, price, delivery date) require an amendment record with reason capture. Re-approval required if amendment exceeds threshold.

### 1.3 Goods Receipt (GR)

**Trigger**: Physical goods arrive at warehouse.

1. Warehouse staff creates Goods Receipt Note (GRN) linked to PO
2. Received quantities recorded per PO line item
3. **Quality Inspection**: Items routed to inspection queue
   - Pass → Accept into inventory
   - Fail → Reject or Quarantine with NCR
   - Partial → Accept good qty, reject defective
4. Inventory levels auto-updated upon GRN confirmation
5. Putaway to suggested bins based on item category

**Discrepancy handling**: Qty or quality mismatches flagged automatically. Shortages recorded as pending receipt.

### 1.4 Three-Way Matching

**Trigger**: Supplier invoice received.

1. System matches: **PO quantity × unit price** ↔ **GR quantity** ↔ **Invoice quantity × unit price**
2. Match statuses:
   - **Matched** — all three documents agree → payment queued
   - **Mismatch** — discrepancies identified → resolved via debit/credit note or override
3. Mismatches require disposition: approve with tolerance, create debit note, or reject invoice

### 1.5 Supplier Performance

- **On-Time Delivery %**: PO lines delivered on or before requested date
- **Fill Rate %**: Quantity delivered / quantity ordered
- **Defect Rate %**: Rejected qty / total received qty
- **Composite Score**: Weighted average of above metrics
- **Non-Conformance Incidents**: Quality issues tracked with severity (Critical/Major/Minor), disposition (Return/Rework/Concession), and corrective action tracking
- **Blacklist/Approval**: Suppliers can be flagged as Under Review, Blacklisted, or Pending Onboarding with full audit trail

---

## 2. Inventory Process

```
Receipt → Putaway → Storage → Pick → Pack → Ship
                    ↓
          Transfer / Adjustment / Count / Usage / Disposal
```

### 2.1 Inventory Tracking

- **Real-time visibility** across all warehouses and bin locations
- **Stock quantities**: On Hand, Available (On Hand − Reserved), Reserved (allocated to orders)
- **Valuation methods**: FIFO, LIFO, Weighted Average supported
- **ABC Classification**: A = 80% value, B = 15%, C = 5% — drives cycle count frequency and review priority
- ****Lot/Batch Tracking**: Each receipt lot tracked with manufacture date, expiry date, and remaining shelf life. FEFO (First Expired First Out) for picking.
- **Serial Number Tracking**: Individual units tracked through lifecycle: Receipt → Storage → Ship → Return → Retire

### 2.2 Warehouse Management

- **Multi-location hierarchy**: Company > Warehouse > Zone > Aisle > Rack > Bin
- **Putaway rules**: System suggests optimal bin based on item category, velocity, size
- **Transfers**: Stock moved between warehouses with full traceability (Transfer Request → Dispatch → In Transit → Receive)
- **Cycle Count**: Periodic count sessions with variance reporting:
  1. Create session (target items/zone)
  2. Blind count (counter sees no system qty)
  3. Variance report with expected vs actual
  4. Adjustment posting with reason code and supervisor approval
- **Physical Stock Take**: Full inventory count at period end with frozen operations
- **Pick List**: Generated from confirmed sales orders with route-optimized pick sequence

### 2.3 Stock Adjustments

- **Reason codes**: Damage, Expired, Found, Recount, Write-Off, Other
- **Mandatory supervisor approval** for write-offs above threshold
- Full audit trail with before/after values

### 2.4 Low Stock & Reorder

- **Reorder Point**: When current stock falls below configured minimum
- **Safety Stock**: Buffer against demand variability
- **EOQ (Economic Order Quantity)**: Optimal order quantity calculation
- **Auto-suggested reorder**: System generates replenishment recommendations

### 2.5 Inventory Aging

- Items grouped by age brackets: 0–30d, 31–60d, 61–90d, 91–180d, 181–365d, 365+d
- Slow-moving and obsolete items flagged for review and potential disposal

### 2.6 Material Usage & Disposal

- **Usage**: Consumption recorded with cost center / project allocation. Auto-deduct from inventory.
- **Disposal**: Expired, damaged, or obsolete stock disposed with reason, method, and approval.

---

## 3. Order Fulfillment Process

```
Sales Order → ATP Check → Confirm → Pick → Pack → Ship → Deliver → Invoice
```

### 3.1 Sales Order (SO)

**Trigger**: Customer places order (manual entry or e-commerce integration).

1. Order entry with customer info, line items, delivery address, requested date, payment terms
2. **Availability-to-Promise (ATP)** check at order entry:
   - System checks on-hand + incoming POs − existing reservations
   - Provides earliest fulfillment date
   - Partial ATP: some qty available now, balance on backorder
3. Order confirmed upon availability or customer acceptance

**SO lifecycle**: `Draft → Confirmed → Picking → Dispatched → Delivered → Closed`

### 3.2 Pick, Pack, Ship

1. **Pick List** generated from confirmed SOs (optimized for warehouse route)
2. Items picked from bins, quantities confirmed
3. **Packing**: Items packed and labeled. Packing list generated.
4. **Shipment Created**: Carrier assigned, tracking number captured
5. **Delivery Confirmation**: POD captured (timestamp, recipient name, signature)

### 3.3 Backorder

- Partial fulfillment creates automatic backorder for unfulfilled quantities
- Backorder fulfilled when stock becomes available (next PO receipt)
- Customer notified of backorder status

### 3.4 Returns / RMA

**Trigger**: Customer requests return (defective, wrong item, damaged, or change of mind).

1. RMA (Return Merchandise Authorization) created with reason code
2. Return approved based on policy:
   - Defective → Immediate approval
   - Customer request → Subject to return window
3. **Disposition**: Repair & Return, Replace, Refund, Credit Note, Scrap
4. Inventory re-instated for acceptable returns
5. Quality inspection for returned items before re-stocking

### 3.5 Sales Invoicing

- Auto-generated upon shipment dispatch or delivery confirmation
- Invoice matched to SO line items
- Payment status tracking: Unpaid → Partial → Paid
- Overdue payment alerts with configurable thresholds

---

## 4. Supplier Lifecycle

```
Onboarding → Qualification → Contract → Performance → Evaluation → (Renew / Replace / Blacklist)
```

### 4.1 Onboarding

- Supplier registration with company details, tax ID (NPWP), bank accounts, contacts
- Multiple contacts per supplier with roles and preferred channels
- Supplier categorization: Raw Material, Finished Goods, Packaging, Services, Logistics

### 4.2 Contracts

- Contract captured with validity dates, payment terms, scope
- Auto-renewal and expiry alerts
- Approved price lists per SKU

### 4.3 Performance Evaluation

- Periodic scorecards generated automatically
- KPI weights configurable by procurement admin
- Rating: Excellent (90+), Good (75–89), Fair (60–74), Poor (<60)

### 4.4 Corrective Actions

- Supplier NCRs trigger corrective action requests
- CAPA (Corrective and Preventive Action) tracking
- Repeated failures lead to blacklist review

---

## 5. Logistics & Transportation

```
Ship → Track → Deliver → Confirm → Invoice
```

### 5.1 Shipment Planning

- Outbound shipments planned with carrier assignment
- **Freight Cost Comparison**: Compare rates across carriers for given origin, destination, weight, and volume
- Documents generated: Bill of Lading, Packing List, Delivery Note, Commercial Invoice, Certificate of Origin
- CO₂ tracking per shipment (distance × transport mode factor)

### 5.2 Real-Time Tracking

- Carrier API integration (JNE, Tiki, SiCepat, etc.)
- Tracking statuses: Pending Pickup → In Transit → Out for Delivery → Delivered → Exception
- Location history with timestamps

### 5.3 Delivery Confirmation

- ePOD (electronic Proof of Delivery) capture
- Condition recording: Good / Damaged / Partial
- Delivery photo capture (optional)

---

## 6. Demand Planning

```
Historical Data → Forecast → Scenario → Replenishment → Procurement
```

### 6.1 Forecasting

- Statistical methods: Moving Average (3/6/12 months), Exponential Smoothing
- Manual overrides with reason capture for promotions, seasonality, market events
- Forecast accuracy tracking: MAPE (Mean Absolute Percentage Error) per SKU
- Seasonal adjustment factors for products with demand patterns

### 6.2 Replenishment Planning

- **Net Requirement** = Forecast Demand − Current Stock − Open PO + Safety Stock
- Suggested order quantities based on EOQ
- One-click conversion to Purchase Requisition

### 6.3 Scenario Planning

- "What-if" simulations: supply disruption, demand spike, currency change, supplier switch
- Impact analysis per SKU with risk rating
- Recommended actions for each scenario

---

## 7. Quality Management

```
Incoming Inspection → Pass/Fail → NCR → CAPA → Closure
```

### 7.1 Inspection Plans

- Checklist items per item group/category
- Sampling method: 100% inspection, AQL (Acceptable Quality Level), Fixed Sample
- Acceptance criteria per checkpoint

### 7.2 Inspection Records

- Created at goods receipt or during production
- Score and result (PASS / FAIL) per inspection
- FAIL triggers NCR creation

### 7.3 Non-Conformance Reports (NCR)

- Severity: Critical (safety/regulatory), Major (functionality), Minor (cosmetic)
- Dispositions: Return to Supplier, Rework, Accept with Concession, Scrap
- Root cause and corrective action tracking
- Status: Open → In Progress → Closed

---

## 8. System Administration

### 8.1 User Management & RBAC

- Role-based access per module: View, Create, Edit, Delete, Approve, Export
- Roles: Admin, Supply Chain Manager, Procurement Officer, Warehouse Operator, Logistics Coordinator, Finance Officer, Sales Representative, Read-Only Viewer

### 8.2 Approval Matrix

- Configurable per document type (PR, PO, MR, SO)
- Multi-level: up to 3 approval levels by amount threshold
- Delegation can be configured for absences

### 8.3 Document Numbering

- Auto-numbering per document type with configurable format
- Prefix + Year + Running counter

### 8.4 Audit Trail

- Immutable log of all CUD (Create, Update, Delete) and approval actions
- Fields: Timestamp, User, Action, Module, Document#, Old/New values
- Retention: 3 years minimum

### 8.5 Integrations

- ERP (SAP, Oracle, Odoo) — bidirectional
- E-commerce (Shopify, WooCommerce) — inbound orders
- Accounting (QuickBooks, Xero) — bidirectional
- Carriers (JNE, DHL, FedEx) — outbound + tracking
- Notifications: Email (SendGrid/SMTP), SMS (Twilio), In-App
- SSO: SAML 2.0 / OIDC

---

*Document version 1.0 — May 2026*
*Confidential — PT SCM Group*
