MM POS Desk ဆိုတာ ဘာလဲ? ကိုယ်တိုင် ဆောက်ထားတဲ့ POS & Inventory System
လွယ်လွယ်ပြောရရင် MM POS Desk Inventory Management ဆိုတာ ဆိုင်တစ်ဆိုင်ရဲ့ နေ့စဉ်အရောင်း၊ ကုန်ပစ္စည်းလက်ကျန်၊ အဝယ်နဲ့ customer/supplier မှတ်တမ်းတွေကို တစ်နေရာတည်းမှာ စီမံနိုင်တဲ့ web application တစ်ခုပါ။ ကျွန်တော် ကိုယ်တိုင် Python နဲ့ Django သုံးပြီး ဆောက်ထားတာဖြစ်ပြီး GitHub မှာ MIT License နဲ့ အခမဲ့ တင်ထားပါတယ်။
ဒီ project ကို ဘာလို့ စဆောက်ဖြစ်လဲဆိုတော့ ဆိုင်အသေးလေးတွေမှာ အရောင်းကို စာအုပ်ထဲမှာ မှတ်လိုက်၊ stock ကို ခေါင်းထဲမှာ မှတ်လိုက်၊ ပြေစာကို စာရွက်နဲ့ ထုတ်လိုက် လုပ်နေရတာကို တွေ့ခဲ့ရလို့ပါ။ လတိုင်း ပေးရတဲ့ POS စနစ်တွေကလည်း စျေးကြီးသလို မြန်မာပြည်က ငွေပေးချေမှုနည်းလမ်းတွေနဲ့လည်း အဆင်မပြေတာများပါတယ်။ ကိုယ့်ကွန်ပျူတာပေါ်မှာပဲ run လို့ရပြီး ကိုယ့် data ကို ကိုယ်တိုင်ပိုင်တဲ့ စနစ်တစ်ခုရှိရင် အများကြီး အဆင်ပြေမယ်ဆိုတဲ့ စိတ်နဲ့ စခဲ့တာပါ။
ဘာတွေ လုပ်ပေးနိုင်လဲ
Dashboard — ဆိုင်ရဲ့ အခြေအနေကို တစ်ချက်ကြည့်
ဖွင့်လိုက်တာနဲ့ နေ့စဉ်အရောင်း၊ ဒီနေ့လုပ်ထားတဲ့ transaction အရေအတွက်၊ stock လက်ကျန်နဲ့ low-stock သတိပေးချက်တွေကို တစ်နေရာတည်းမှာ မြင်ရပါတယ်။ ဥပမာ ဘယ်ပစ္စည်း ဘယ်နှစ်ခု ကျန်လဲ၊ ဘယ်ပစ္စည်းက reorder level အောက်ရောက်နေပြီလဲဆိုတာ တန်းသိနိုင်ပါတယ်။

POS — အရောင်းကောင်တာမှာ သုံးဖို့
Point of Sale စာမျက်နှာမှာ ပစ္စည်းကို ရှာဖွေနိုင်ပြီး barcode scanner input လည်း သုံးနိုင်ပါတယ်။ Discount (သတ်မှတ်ငွေ လျှော့တာ)၊ tax ရာခိုင်နှုန်း၊ ပေးတဲ့ငွေနဲ့ ပြန်အမ်းငွေကိုလည်း စနစ်က တွက်ပေးပါတယ်။ စျေးနှုန်းတွေကို server ဘက်က တွက်တာဖြစ်လို့ browser ထဲမှာ စျေးပြင်လို့ မရပါဘူး။ Stock မလောက်ရင်လည်း အရောင်းကို တားပေးပါတယ်။
Products နဲ့ Inventory — ပစ္စည်းနဲ့ stock စီမံခန့်ခွဲမှု
- ပစ္စည်းတိုင်းမှာ အမည်၊ SKU၊ barcode၊ category၊ ရောင်းစျေးနဲ့ reference cost ပါပါတယ်။
- Warehouse အလိုက် stock ခွဲထားနိုင်ပြီး warehouse ကြားမှာ stock လွှဲပြောင်းနိုင်ပါတယ်။
- Stock အတိုးအလျော့တိုင်းမှာ အကြောင်းပြချက်နဲ့ ပြုလုပ်သူပါ မှတ်တမ်းကျန်ပါတယ်။ မှားသွားရင် မှတ်တမ်းကို ဖျက်တာမဟုတ်ဘဲ ပြောင်းပြန်ပြင်တဲ့ adjustment နဲ့ ပြင်ပါတယ်။
- Stock ကို အရေအတွက်ပြည့်ယူနစ်နဲ့သာ မှတ်တမ်းတင်နိုင်ပါတယ်။
Purchases — အဝယ်မှတ်တမ်း
Supplier ထံမှ ဝယ်ယူရရှိတဲ့ ပစ္စည်းကို မှတ်တမ်းတင်လိုက်တာနဲ့ stock က အလိုအလျောက် တိုးပါတယ်။ ဝယ်စျေး၊ supplier နဲ့ reference ပါ ထည့်နိုင်ပါတယ်။
Contacts၊ Receipts၊ Returns၊ Reports
- Contacts — Customer နဲ့ supplier အချက်အလက်တွေကို စီမံနိုင်ပါတယ်။
- Receipts — အရောင်းမှတ်တမ်းကို ပြန်ကြည့်နိုင်ပြီး receipt print ထုတ်နိုင်သလို browser ကနေပဲ PDF အဖြစ် သိမ်းနိုင်ပါတယ်။ Receipt မှာ ပစ္စည်း၊ စျေးနှုန်းနဲ့ ဆိုင်အချက်အလက် အသေးစိတ်ပါ ပါဝင်ပါတယ်။
- Returns — အရောင်းတစ်ခုလုံးကို ပြန်အပ်တဲ့ မှတ်တမ်းတင်နိုင်ပြီး stock ကို ပြန်တိုးပေးပါတယ်။
- Reports — ရက်အလိုက် အရောင်း၊ payment method အလိုက် စုစုပေါင်း၊ ခန့်မှန်း gross margin နဲ့ CSV export တို့ ပါဝင်ပါတယ်။
ဆိုင်နဲ့ ဝန်ထမ်းစီမံခြင်း
Account တစ်ခုနဲ့ business workspace အများအပြား ဖန်တီးနိုင်ပြီး ဆိုင်တစ်ဆိုင်ချင်းစီရဲ့ ပစ္စည်း၊ stock နဲ့ အရောင်း data ကို သီးခြားစီ ခွဲထားပါတယ်။ ဝန်ထမ်းအခန်းကဏ္ဍကလည်း ရှင်းပါတယ်။
- Owner — ပစ္စည်း၊ stock၊ ဝန်ထမ်း၊ settings၊ reports နဲ့ returns အားလုံးကို စီမံနိုင်ပါတယ်။
- Cashier — POS သုံးနိုင်ပြီး inventory၊ customer နဲ့ receipt တွေကို ကြည့်နိုင်ပါတယ်။

ငွေပေးချေမှု — မှတ်တမ်းတင်တဲ့ စနစ်
ဒီအပိုင်းကို သေသေချာချာ နားလည်ထားဖို့ လိုပါတယ်။ MM POS Desk က Cash၊ external card terminal၊ KPay၊ WavePay၊ bank transfer နဲ့ MMQR တို့နဲ့ လက်ခံပြီးသားငွေကို မှတ်တမ်းတင်နိုင်တဲ့ စနစ်ပါ။ Card/wallet မှ ငွေအလိုအလျောက် ဖြတ်ခြင်း၊ bank settlement စစ်ခြင်းနဲ့ dynamic MMQR ကတော့ မပါသေးပါဘူး။ ဆိုလိုတာက ငွေပေးချေမှုကို ဒီစနစ်ထဲက တိုက်ရိုက် ကောက်ခံတာမဟုတ်ဘဲ ပေးချေပြီးကြောင်း မှတ်တမ်းအဖြစ် သိမ်းပေးတာပါ။
Business တစ်ခုစီမှာ MMK၊ THB သို့မဟုတ် USD တစ်မျိုးတည်း သုံးနိုင်ပြီး currency conversion မပါပါဘူး။ ဒါကြောင့် ဆိုင်ဖွင့်ခါစက ငွေကြေးကို သေချာ ရွေးဖို့ လိုပါတယ်။
ဘာနည်းပညာတွေနဲ့ ဆောက်ထားလဲ
MM Learning Management လိုပဲ Backend ကို Python နဲ့ Django၊ database က SQLite၊ Frontend က HTML/CSS/JavaScript ရိုးရိုးရှင်းရှင်းပါ။ ကိုယ့်ကွန်ပျူတာပေါ်မှာပဲ run လို့ရပြီး port 8001 ကို သုံးတာဖြစ်လို့ LMS က port 8000 နဲ့ တစ်ပြိုင်တည်း run လို့လည်း ရပါတယ်။ Port 8001 ပြည့်နေရင် POS_PORT=8002 လို့ ပြောင်းပြီး run နိုင်ပါတယ်။
Mac မှာ စမ်းသုံးကြည့်ဖို့
Terminal မှာ ဒီလိုရိုက်ရုံပါပဲ။
cd ~/Downloads/mm-pos-desk python3 start.py
ပြီးရင် http://127.0.0.1:8001/ ကို ဖွင့်ပြီး Create business ကနေ account ဖန်တီးပါ။ Terminal ကနေ account ဖန်တီးခိုင်းတာ မဟုတ်ဘဲ browser ထဲကနေပဲ ဖန်တီးရတာဖြစ်ပြီး default password လည်း မရှိပါဘူး။ စမ်းသုံးချင်ရင် Settings & team → Load sample inventory ကို နှိပ်လိုက်ရင် sample ပစ္စည်း ၆ မျိုး ပါလာပါမယ် (ဆိုင်အလွတ်အတွက်သာ ရပါတယ်)။ အသုံးပြုနေချိန် Terminal ကို ဖွင့်ထားရပါမယ်။ Windows မှာဆိုရင် Start-MM-POS.bat ကို double-click လုပ်ရုံပါပဲ။ Python 3.11 ဒါမှမဟုတ် အထက် လိုအပ်ပါတယ်။



လက်ရှိအဆင့်နဲ့ ရိုးရိုးသားသား ပြောရရင်
Automated tests ၂၀ ခုနဲ့ clean-package setup စစ်ဆေးမှု အောင်မြင်ထားပြီးသားပါ။ ဒါပေမဲ့ browser visual၊ scanner/printer hardware နဲ့ Mac/Windows ပေါ် တိုက်ရိုက်စမ်းသပ်မှုတွေတော့ မပြီးသေးဘူးဆိုတာ ဝန်ခံရပါမယ်။
မပါသေးတာတွေလည်း ရှိပါတယ် — Online storefront၊ subscription billing၊ accounting ledger၊ payroll၊ partial returns နဲ့ မြန်မာဘာသာ UI အပြည့်အစုံတို့ပါ။ Returns ကလည်း အရောင်းတစ်ခုလုံးကို ပြန်အပ်တာပဲ ရပြီး တစ်စိတ်တစ်ပိုင်း ပြန်အပ်တာတော့ မရသေးပါဘူး။ ဒါတွေအားလုံးက roadmap ထဲမှာ စီစဉ်ထားပြီးသားပါ။
ဘယ်သူ့အတွက် အဆင်ပြေလဲ
- နေ့စဉ်အရောင်းနဲ့ stock ကို စနစ်တကျ မှတ်ချင်တဲ့ ဆိုင်အသေးလေးတွေ။
- Mini-mart၊ စာရေးကိရိယာဆိုင်၊ အထွေထွေကုန်စုံဆိုင်တွေ။
- ဆိုင်ခွဲများစွာကို account တစ်ခုတည်းနဲ့ ခွဲပြီး စီမံချင်တဲ့သူတွေ။
- Django project တစ်ခုကို လေ့လာချင်တဲ့ developer တွေ။
နိဂုံး
MM POS Desk က ဆိုင်တစ်ဆိုင်ရဲ့ နေ့စဉ်အလုပ်တွေကို — အရောင်း၊ stock၊ အဝယ်၊ ပြေစာ၊ အစီရင်ခံ — တစ်နေရာတည်းမှာ စုပေးဖို့ ရည်ရွယ်ထားတဲ့ project ပါ။ အကြီးကြီး မဟုတ်သေးပေမဲ့ ဆိုင်တစ်ဆိုင်ရဲ့ အဓိက လမ်းကြောင်းကို အစကနေ အဆုံးအထိ ဖြတ်သန်းနိုင်ပြီ ဆိုတာက စသုံးဖို့ လုံလောက်တယ်လို့ ယုံကြည်ပါတယ်။
Source code အပြည့်အစုံကို GitHub မှာ MIT License နဲ့ ကြည့်နိုင်ပါတယ် — github.com/itsmeminsithu/MM-POS-Desk-Inventory-Management။ စမ်းသုံးကြည့်ပြီး အကြံပြုချက် ရှိရင် ပြောပြပေးပါ။ နောက်ထပ် feature တွေ တိုးလာတဲ့အခါလည်း My Project Overview tag အောက်မှာပဲ ဆက်ရေးသွားပါမယ်။ 🙂