# Dispatch Tracker (Developer Guide)

<span style="color: #555555;">Web-based system for real-time QR-based transfer delivery tracking.</span>

**<span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Overview</span>**

Dispatch Tracker is a centralized web application that enables real-time monitoring and status tracking of transfer delivery (TD) receipts through QR code scanning and manual entry. The system provides guard teams with a single interface to start delivery runs, update delivery outcomes as they happen, and maintain an accurate, up-to-date record of every store’s delivery status.

The system eliminates the need for manual status reporting, reduces the risk of missing or unrecorded deliveries, and ensures that all transfer outcomes — including failed attempts and cancellations — are properly documented with reasons and timestamps.

## **<span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Target Users</span>**

<span style="font-size: 12pt; font-family: Calibri, 'sans-serif'; color: rgb(0, 0, 0);">Guard Teams</span>

**<span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Problem Solved</span>**

<span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span>There was previously no system to track whether a transfer delivery was successfully received, failed, or cancelled — outcomes were entirely unrecorded after dispatch.

<span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span>IMD and Audit had no way to verify the result of a delivery. There was no official record of which TDs were completed, rejected, or never attempted.

<span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span>There was no visibility into how long a transfer took from dispatch to store receipt, making it impossible to assess delivery performance or identify delays.

<span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span>The system resolves these issues by recording every delivery outcome — with status, reason, timestamp, and responsible user — giving IMD, Audit, and the promo team a clear, auditable trail from dispatch to final store receipt.

**<span style="color: #1565c0;"><span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Main Features</span></span>**

<table border="1" cellpadding="0" cellspacing="0" class="MsoNormalTable" id="bkmrk-category-features-di" style="width: 1055px; margin-left: 5.5pt; border-collapse: collapse; border-image: initial; height: 636px; border: medium none currentcolor;" width="624"><tbody><tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes;"><td style="width: 275.5px; border: 1pt solid rgb(204, 204, 204); background: rgb(21, 101, 192); padding: 4pt 6pt;" valign="top" width="168">**<span style="color: white;">Category</span>**

</td><td style="width: 563.5px; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: rgb(204, 204, 204) rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; border-image: initial; background: rgb(21, 101, 192); padding: 4pt 6pt;" valign="top" width="456">**<span style="color: white;">Features</span>**

</td></tr><tr style="mso-yfti-irow: 1;"><td rowspan="4" style="width: 275.5px; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204); border-image: initial; background: white; padding: 4pt 6pt;" valign="top" width="168">**Dispatch Management**

</td><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">Start a delivery run by scanning a checklist QR code or entering the checklist ID manually.

</td></tr><tr style="mso-yfti-irow: 2;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">Select which stores to include or skip before confirming a delivery run.

</td></tr><tr style="mso-yfti-irow: 3;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">View all active delivery checklists and their real-time progress at a glance.

</td></tr><tr style="mso-yfti-irow: 4;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">Search checklists by ID to quickly locate a specific run.

</td></tr><tr style="mso-yfti-irow: 5;"><td rowspan="4" style="width: 275.5px; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204); border-image: initial; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="168">**Status Tracking**

</td><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">Mark individual Transfer Documents (TDs) as Out for Delivery, Delivered, Failed, or Cancelled.

</td></tr><tr style="mso-yfti-irow: 6;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">Record a reason when marking a TD as failed.

</td></tr><tr style="mso-yfti-irow: 7;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">Re-attempt failed deliveries without creating a new dispatch record.

</td></tr><tr style="mso-yfti-irow: 8;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">View the full attempt history for each TD including timestamps and responsible user.

</td></tr><tr style="mso-yfti-irow: 9;"><td rowspan="4" style="width: 275.5px; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204); border-image: initial; background: white; padding: 4pt 6pt;" valign="top" width="168">**Real-Time Monitoring**

</td><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">Live status summary per checklist: out for delivery, partial, delivered, failed, cancelled.

</td></tr><tr style="mso-yfti-irow: 10;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">Store-level aggregate status derived automatically from individual TD statuses.

</td></tr><tr style="mso-yfti-irow: 11;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">Instant UI updates on status changes — no page refresh required.

</td></tr><tr style="mso-yfti-irow: 12;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: white; padding: 4pt 6pt;" valign="top" width="456">Visual indicators highlight checklists that are fully completed (green background).

</td></tr><tr style="mso-yfti-irow: 13;"><td rowspan="4" style="width: 275.5px; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204); border-image: initial; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="168">**QR Scanning**

</td><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">Scan printed checklist QR codes using the device camera.

</td></tr><tr style="mso-yfti-irow: 14;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">Automatic QR detection with a framed viewfinder and scan-line animation.

</td></tr><tr style="mso-yfti-irow: 15;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">Manual checklist ID entry as a fallback when a camera is unavailable.

</td></tr><tr style="mso-yfti-irow: 16; mso-yfti-lastrow: yes;"><td style="width: 563.5px; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: currentcolor rgb(204, 204, 204) rgb(204, 204, 204) currentcolor; background: rgb(245, 248, 255); padding: 4pt 6pt;" valign="top" width="456">QR codes are single-use: already-dispatched checklists are rejected with a clear error.

</td></tr></tbody></table>

## **<span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">System Architecture</span>**

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Frontend:</span>**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;"> React.js  
**Backend:** Node.js + NestJS</span>

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Real-Time Communication:</span>**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;"> Socket.io  
**Queue System:** BullMQ  
**Cache / Messaging:** Redis  
**Database:** Microsoft SQL Server  
**Authentication:** JWT-based authentication  
**Printing Integration:** Custom Printer Server</span>

<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">The system uses a client–server architecture with asynchronous job processing for printing operations.</span>

## **<span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Installation &amp; Setup</span>**

### <span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Requirements</span>

<span style="font-size: 10.0pt; mso-bidi-font-size: 12.0pt; font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Node.js v18+</span>

<span style="font-size: 10.0pt; mso-bidi-font-size: 12.0pt; font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Visual Studio Code</span>

<span style="font-size: 10.0pt; mso-bidi-font-size: 12.0pt; font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">MSSQL Database</span>

<span style="font-size: 10.0pt; mso-bidi-font-size: 12.0pt; font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Redis Server</span>

### **<span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Install Dependencies</span>**

<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Frontend and backend must be installed separately.</span>

```
npm install
```

### **<span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;"> </span><span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Environment Variables</span>**

#### <span style="font-size: 12.0pt; line-height: 115%; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; font-style: normal; mso-bidi-font-style: italic;">Frontend</span>

```
VITE_FRONTEND_URL=https://localhost:5173<br></br>
VITE_ENV=development
```

#### <span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; font-style: normal; mso-bidi-font-style: italic;">Backend</span>

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Server</span>**

```
PORT=3000<br></br>
NODE_ENV=development
```

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">MSSQL Database</span>**

```
Mssql_DB_SERVER=10.10.42.33<br></br>
Mssql_DB_USER=your_username<br></br>
Mssql_DB_PASSWORD=your_pass<br></br>
Mssql_DB_DATABASE=<br></br>
Mssql_DB_PORT=1433
```

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Redis</span>**

```
REDIS_HOST=192.168.42.52<br></br>
REDIS_PASSWORD=W3lc0meRedis2026!
```

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Security</span>**

```
BCRYPT_ROUNDS=12<br></br>
JWT_ACCESS_SECRET=624767096055869195900403461040280741571<br></br>
JWT_REFRESH_SECRET=85713100746876451665600600936409954832080
```

```
 
```

```
FRONTEND_URL_LIVE=<br></br>
FRONTEND_URL_DEV=http://localhost:5173
```

```
 
```

### **<span style="font-size: 12.0pt; mso-bidi-font-size: 13.5pt; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Run Locally</span>**

<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Frontend:</span>

```
npm run dev
```

<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Backend:</span>

```
npm run dev
```

### **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Environments</span>**

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-spacerun: yes;"> </span>Production Environment</span>

- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">VM IP Address:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> 192.168.42.52 </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Environment Name:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> Docker </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Purpose:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> Live system used by end users </span>

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-spacerun: yes;"> </span>Staging Environment</span>

- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">VM IP Address:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> 192.168.42.52</span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Environment Name:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> Docker </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Purpose:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> Testing environment before production deployment </span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>**

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Repositories</span>**

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Production Repository</span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Frontend</span>**

- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Repository Name:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> McjimReactLive </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Branch:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">main → Production </span>


**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Backend</span>**

- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Repository Name:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> McjimNestLive </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Branch:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">main → Production </span>


<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Staging Repository</span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Frontend</span>**

- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Repository Name:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> McjimReactStaging </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Branch:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">main → Staging </span>


**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Backend</span>**

- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Repository Name:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> McjimNestStaging </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Branch:</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">main → Staging</span>


**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">Deployment Workflow</span>**

1. <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Develop changes locally </span>
2. <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Push changes to the **Staging Repository** </span>
3. **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">CI/CD pipeline automatically builds and deploys to Staging Environment</span>**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>
4. <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Perform testing and validation in staging </span>
5. <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Once approved: </span>

- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Push the same changes to the **Production Repository** </span>
- **<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">CI/CD pipeline automatically builds and deploys to Production Environment</span>**

<span style="font-size: 14.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;"> </span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin; color: #1f497d; mso-themecolor: text2;">How to Push Changes</span>**

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Step 1: Develop and Commit Locally</span>**

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Make your changes in your local environment, then commit:</span>

<span style="font-size: 12.0pt; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">git add .  
git commit -m "your message"</span>

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-spacerun: yes;"> </span>Step 2: Push to Staging Repository</span>**

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Push your changes to the **staging repository**:</span>

<span style="font-size: 12.0pt; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">git push origin main</span>

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">This will automatically trigger the **CI/CD pipeline** to:</span>

- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Build the application </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Deploy to the **Staging Environment** </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"> </span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-spacerun: yes;"> </span>Step 3: Test in Staging</span>**

- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Verify all features are working correctly </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Perform testing and validation </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Fix issues if needed (repeat Step 1–2) </span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Step 4: Push to Production Repository</span>**

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Once staging is approved, push the same changes to the **production repository**:</span>

<span style="font-size: 12.0pt; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">git push origin main</span>

<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">This will automatically trigger the **CI/CD pipeline** to:</span>

- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Build the application </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Deploy to the **Production Environment** </span>

**<span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-spacerun: yes;"> </span>Notes</span>**

- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Always push to **staging first before production** </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Ensure both repositories contain the **same code/version** </span>
- <span style="font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;">Do not skip staging validation before deploying to production</span>

**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; color: #1f497d; mso-themecolor: text2; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">API Documentation</span>**

**<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; font-weight: normal; mso-bidi-font-weight: bold;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Get the store </span>**

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Endpoint:</span>**

```
GET /api/dispatch-tracker/get-stores
```

**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi;">Description:</span>**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;"> <span style="mso-spacerun: yes;"> </span>Based on the dates selected by the user, it will retrieve all stores with their TD numbers.</span>

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Request body:</span>**

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">{</span>

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';"><span style="mso-spacerun: yes;"> </span>"</span>checklist\_id<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">": "40000100"</span>

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">}</span>

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;">Response:</span>**</span>

<div id="bkmrk-%5B-%C2%A0-%C2%A0-%7B-%C2%A0-%C2%A0-%C2%A0-%C2%A0-%22sto"><div>[</div><div> {</div><div> "store_code": "RCE",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "RCE2026134,RCE2026135,RCE2026136,RCE2026137,RCE2026138,RCE2026139,RCE2026140,RCE2026141,RCE2026142,RCE2026143,RCE2026144,RCE2026145,RCE2026146"</div><div> },</div><div> {</div><div> "store_code": "SCE",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "TD54260313,TD54260317,TD54260318,TD54260319,TD54260320,TD54260322,TD54260323,TD54260324,TD54260325,TD54260315"</div><div> },</div><div> {</div><div> "store_code": "SCEM",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "TD54260316,TD54260321,TD54260314"</div><div> }</div><div>]</div></div><div id="bkmrk--1"></div><div id="bkmrk--2"></div>**<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; font-weight: normal; mso-bidi-font-weight: bold;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>****<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Create Dispatch</span>**

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Endpoint:</span>**

```
POST /api/dispatch-tracker/create-dispatch
```

**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi;">Description:</span>**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;"> <span style="mso-spacerun: yes;"> </span>Based on the dates selected by the user, it will retrieve all stores with their TD numbers.</span>

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Request body:</span>**

<div id="bkmrk-%7B-%C2%A0-%C2%A0-%22checklist_id%22"><div>{</div><div> "checklist_id": "40000100",</div><div> "username": "MMALINAO",</div><div> "store_codes": [</div><div> {</div><div> "store_code": "EC",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "EC20260108"</div><div> },</div><div> {</div><div> "store_code": "LMT",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "LMT2026316,LMT2026317,LMT2026318,LMT2026319,LMT2026320,LMT2026321,LMT2026322"</div><div> },</div><div> {</div><div> "store_code": "LMTM",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "LMT2026315"</div><div> },</div><div> {</div><div> "store_code": "RAP",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "RAP2026252,RAP2026254,RAP2026255,RAP2026256,RAP2026257,RAP2026258"</div><div> },</div><div> {</div><div> "store_code": "RAPM",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "RAP2026253"</div><div> },</div><div> {</div><div> "store_code": "RMG",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "RMG2026178,RMG2026179,RMG2026180,RMG2026181"</div><div> },</div><div> {</div><div> "store_code": "RP",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "RP20260199,RP20260200,RP20260201,RP20260202,RP20260203"</div><div> },</div><div> {</div><div> "store_code": "SLE",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "SLE2026196,SLE2026197,SLE2026198,SLE2026199,SLE2026200,SLE2026201"</div><div> },</div><div> {</div><div> "store_code": "SST",</div><div> "is_dispatch": "Y",</div><div> "td_nums": "TD46260158,TD46260159"</div><div> }</div><div> ]</div><div>}</div></div>**<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; font-weight: normal; mso-bidi-font-weight: bold;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Get Dispatch List</span>**

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Endpoint:</span>**

```
GET /api/dispatch-tracker/get-dispatch-list
```

**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi;">Description:</span>**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;"> <span style="mso-spacerun: yes;"> </span>Based on the dates selected by the user, it will retrieve all stores with their TD numbers.</span>

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Request body:</span>**

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">{</span>

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';"><span style="mso-spacerun: yes;"> </span>"</span>search<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">": "40000100"</span>

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">}</span>

<span style="font-size: 10.0pt; line-height: 115%; font-family: 'Courier New'; mso-fareast-font-family: 'Times New Roman';">**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;">Response:</span>**</span>

<div id="bkmrk-%5B-%C2%A0-%C2%A0-%7B-%C2%A0-%C2%A0-%C2%A0-%C2%A0-%22che"><div>[</div><div> {</div><div> "checklist_id": "40000100",</div><div> "created_at": "2026-06-10T06:39:30.040Z",</div><div> "created_by": "MMALINAO",</div><div> "stores": [</div><div> {</div><div> "store_code": "SST",</div><div> "store_name": "SM CITY SAN MATEO",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 280,</div><div> "td_num": "TD46260159",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 279,</div><div> "td_num": "TD46260158",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "SLE",</div><div> "store_name": "STA. LUCIA EAST",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 278,</div><div> "td_num": "SLE2026201",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 277,</div><div> "td_num": "SLE2026200",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 276,</div><div> "td_num": "SLE2026199",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 275,</div><div> "td_num": "SLE2026198",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 274,</div><div> "td_num": "SLE2026197",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 273,</div><div> "td_num": "SLE2026196",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "RP",</div><div> "store_name": "RDS PASIG",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 272,</div><div> "td_num": "RP20260203",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 271,</div><div> "td_num": "RP20260202",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 270,</div><div> "td_num": "RP20260201",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 269,</div><div> "td_num": "RP20260200",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 268,</div><div> "td_num": "RP20260199",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "RMG",</div><div> "store_name": "RDS MAGNOLIA",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 267,</div><div> "td_num": "RMG2026181",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 266,</div><div> "td_num": "RMG2026180",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 265,</div><div> "td_num": "RMG2026179",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 264,</div><div> "td_num": "RMG2026178",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "RAPM",</div><div> "store_name": "RDS ANTIPOLO MONTEGANI",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 263,</div><div> "td_num": "RAP2026253",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "RAP",</div><div> "store_name": "RDS ANTIPOLO",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 262,</div><div> "td_num": "RAP2026258",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 261,</div><div> "td_num": "RAP2026257",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 260,</div><div> "td_num": "RAP2026256",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 259,</div><div> "td_num": "RAP2026255",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 258,</div><div> "td_num": "RAP2026254",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 257,</div><div> "td_num": "RAP2026252",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "LMTM",</div><div> "store_name": "LANDMARK TRINOMA MONTEGANI",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 256,</div><div> "td_num": "LMT2026315",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "LMT",</div><div> "store_name": "LANDMARK TRINOMA",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 255,</div><div> "td_num": "LMT2026322",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 254,</div><div> "td_num": "LMT2026321",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 253,</div><div> "td_num": "LMT2026320",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 252,</div><div> "td_num": "LMT2026319",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 251,</div><div> "td_num": "LMT2026318",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 250,</div><div> "td_num": "LMT2026317",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_id": 249,</div><div> "td_num": "LMT2026316",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> },</div><div> {</div><div> "store_code": "EC",</div><div> "store_name": "EVER COMMONWEALTH",</div><div> "status": "out_for_delivery",</div><div> "td_nums": [</div><div> {</div><div> "store_id": 248,</div><div> "td_num": "EC20260108",</div><div> "current_status": "out_for_delivery",</div><div> "history": [</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:39:30.050Z"</div><div> },</div><div> {</div><div> "result": "out_for_delivery",</div><div> "reason": "",</div><div> "da_created_by": "MMALINAO",</div><div> "da_created_at": "2026-06-10T06:34:06.713Z"</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> }</div><div> ]</div><div> }</div><div>]</div><div></div></div><div id="bkmrk--3"></div>**<span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; font-weight: normal; mso-bidi-font-weight: bold;"><span style="mso-list: Ignore;">·<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Update Store Status</span>**

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Endpoint:</span>**

```
POST /api/dispatch-tracker/update-store-status
```

**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%; font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi;">Description:</span>**<span style="font-size: 12.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;"> <span style="mso-spacerun: yes;"> </span>Based on the dates selected by the user, it will retrieve all stores with their TD numbers.</span>

**<span style="font-family: 'Calibri','sans-serif'; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin;">Request body:</span>**

{  
 "checklist\_id": "40000100",  
 "store\_id": 280,  
 "status": "delivered",  
 "reason": "",  
 "username": "MMALINAO"  
}

[![image.png](https://miswiki.mcjimleather.com/uploads/images/gallery/2026-06/scaled-1680-/xkGimage.png)](https://miswiki.mcjimleather.com/uploads/images/gallery/2026-06/xkGimage.png)