DEV Community

SEO - NT Tech Innovation
SEO - NT Tech Innovation

Posted on

Sending GCash-Style Payment Reminders for a Small PH Reseller Shop (Node.js, No Database)

Small social media resellers in the Philippines often run everything from Messenger and a spreadsheet. The thing that slips most? Following up on unpaid orders. Here's a tiny Node.js script that reads a CSV of pending orders and drafts polite reminder messages you can paste into chat. No database, no server.

The CSV

order_id,customer,service,amount_php,created_at,paid
1042,Ana,TikTok views 5k,250,2026-11-09,no
1043,Mark,FB page likes 1k,180,2026-11-10,yes
1044,Joy,IG followers 1k,320,2026-11-08,no
Enter fullscreen mode Exit fullscreen mode

The script

import { readFileSync } from "node:fs";

const rows = readFileSync("orders.csv", "utf8").trim().split("\n").slice(1)
  .map(l => l.split(","))
  .map(([order_id, customer, service, amount_php, created_at, paid]) =>
    ({ order_id, customer, service, amount: Number(amount_php), created_at, paid }));

const daysAgo = d => Math.floor((Date.now() - new Date(d + "T00:00:00+08:00")) / 864e5);
const peso = n => "₱" + n.toLocaleString("en-PH");

for (const o of rows.filter(r => r.paid === "no")) {
  const age = daysAgo(o.created_at);
  const tone = age >= 3 ? "Just a gentle follow-up po" : "Hi po";
  console.log(`${o.customer}: ${tone}! Your order #${o.order_id} (${o.service}) is ${peso(o.amount)}. ` +
              `Let me know once sent so I can start it right away. Salamat!`);
}
Enter fullscreen mode Exit fullscreen mode

Note the +08:00 offset. Philippine time is UTC+8, and getting this wrong makes "3 days ago" off by a day around midnight.

Why not auto-send?

Because platform messaging rules change and bulk automated DMs can get a page restricted. Drafting messages and sending them by hand keeps you safe and still saves 90% of the time.

Keep money in integers

If you start doing math on totals, store centavos as integers rather than floats. 250.00 becomes 25000. Fewer rounding surprises.

For the business side of running social media services for Filipino customers, this overview of SMM in the Philippines is a useful primer. BoostingPH is one PH panel with peso pricing if you need a supplier to plug into this workflow.

Top comments (0)