โจ Release highlights
The most recent updates, at a glance. Tap any card to jump to the full how-to.
Login & roles
Open pms.saskey.in (the old hms.saskey.in address still redirects) and sign in with the email + password your admin provided. If the same email belongs to more than one property, a property picker appears after your password โ choose the one you want to work in. Your access to screens depends on your role:
Navigation overview
The sidebar groups screens by function:
- Dashboard โ daily snapshot of occupancy, arrivals, departures, today's revenue. Every tile is clickable and opens the matching report with the date already filtered.
- Rooms โ live grid of every room with status colour (Clean / Dirty / Occupied / Out-of-order).
- Bookings โ list + calendar view + filters, with a Payments and Balance column on the list.
- Night Audit โ preview tonight's auto-postings; run manually if needed.
- Front Desk โ quick screen for today's arrivals & departures.
- Inventory โ Item Master, Consumables (Store), Assets and Linen.
- Accounts โ Purchases, Purchase Returns, Vendor Payments, Vendor Statement, Expenses, Cash/Bank Ledger, Card Settlement, Journal/Contra, Bank Reconciliation, Corporates, GST Filing, Financials.
- Banquet โ hall bookings with their own list + calendar + ledger.
- Reports โ one hub with a grouped, two-level menu. The Accounts Daybook lives under Financial.
- Settings โ property config, theme, users, charge categories, GST, SMS, ledger routing.
First-time setup checklist
Before the first guest, an admin should walk through:
Create a booking
- Bookings โ + New Booking.
- Pick the guest (search by phone first; auto-fills if the guest exists). If new, fill name + phone + ID type/number.
- Pick check-in and check-out dates.
- Set adults + children. The rate auto-recalculates: 1A โ single, 2A โ double, 3+ โ double + extra-person ร N.
- Choose the room category and (optionally) a specific room โ you can leave it unassigned and pick at check-in.
- Optionally set a meal plan (EP/CP/MAP/AP) โ informational, shown on the GRC and invoice.
- Save. Booking status starts as
confirmed.
Walk-in (guest at the desk now)
- Rooms screen โ click a vacant_clean room โ Walk-in.
- Fill guest details, ID type + number, address.
- Capture the ID document + guest photo (Camera or Upload) โ both are required. NEW
- Confirm adults (rate updates live).
- Optionally collect an advance + payment method now โ posted to the folio immediately.
- Check In & Print Reg Card โ booking is created
checked_inand the room flips tooccupied.
Multi-room booking (one guest, several rooms)
From a booking's detail page, click + Link Another Room. Each linked room has its own rate but shares one folio + one invoice. Checkout generates the invoice only when the last room vacates.
Edit a confirmed booking NEW
Before a guest checks in, Admin, Manager, Front Office Manager and Receptionist can edit a confirmed booking from Booking Detail โ change the guest, occupancy and room category per room. The tariff recalculates automatically. Editing is blocked once the guest is checked out.
Change occupancy mid-stay
On Booking Detail โ ๐ฅ Occupancy. Pick new adults / children. The system updates the saved per-room occupancy, re-computes the rate, and โ if past nights were already charged โ asks whether to re-post past nights at the new rate (offsetting JV entries) or keep them future-only.
The extra-person charge
Above two adults, each further guest is billed at the category's Extra Person Rate. This now happens on every route a booking can take โ check-in (single room or per room), walk-in, an occupancy change, and the nightly audit โ so a late arrival who departs before the next audit is no longer missed.
The surcharge follows the room's GST slab, not its own size: a โน1,500 extra person on a โน6,000 room is 5%, and on a โน9,000 room it is 18%. That is the correct treatment for an ancillary supply, and it is why the tax on the line may not look like 5% of the line itself.
Check-in
- Booking Detail โ Check-in.
- Confirm the room (dirty rooms are blocked โ Mark Clean first).
- ID document + guest photo are mandatory โ capture them in the check-in step (Camera/Upload) if web check-in didn't already. The Confirm button stays disabled until both are present.
- System sets
actual_check_in=NOW(), room โoccupied, status โchecked_in.
Check-out & round-off
- Booking Detail โ Check Out.
- Late checkout? A suggested fee appears from Settings โ Late Checkout Policy (overridable).
- Settle the folio โ Record Payment, mark Corporate Bill-To, or use Guest Credit.
- The invoice generates automatically and the grand total is rounded to the nearest rupee โ the paise post as a Round Off line so the payable is a whole number. Tax is never changed.
- Folio closes, room flips to
vacant_dirty, a housekeeping task is auto-created.
Guest credit at checkout NEW
When a walk-in or individual guest leaves without settling in full, tick Bill to guest credit at checkout and enter a reason. A tax invoice is issued and the outstanding parks as a guest receivable โ the booking shows as invoiced-but-unpaid in Outstanding. Collect later via Record Payment on the same booking; no separate screen needed.
Undo checkout
Checked a guest out by mistake? Booking Detail โ Undo Checkout reopens the folio and returns the room to occupied.
- Because checkout issues the tax invoice, Undo Checkout voids that invoice and its revenue posting.
- Requires an Admin or Manager, and only works while the invoice's GST period is not yet filed. If GSTR-1 is filed, issue a credit note instead.
- Re-checking out generates a fresh invoice with a new number; the voided one stays as a record.
Room shift
Booking Detail โ Room Shifting โ pick the new (vacant_clean) room. The folio history stays; future charges go to the new room.
Extend / shorten stay
Booking Detail โ Amend Stay. Extending posts extra night charges; shortening reverses room + GST rows for dropped dates (F&B and misc charges stay).
Web check-in NEW
Save desk time by letting guests fill their own details before arrival:
Folio & charges
Every booking has one folio. The Folio tab shows all transactions grouped by date, with taxes indented under their parent charge. To add a non-room charge (Food, Laundry, Mini Barโฆ), click + Add Charges, pick a category and amount; the category's default GST and SAC auto-fill.
Meal plans NEW
Tag a booking with a meal plan โ EP (room only), CP (with breakfast), MAP (breakfast + one meal) or AP (all meals). Set it on the create/detail screen. It's informational (a label, not a billing driver) and appears on the booking list, detail, GRC and invoice. Manage the list under Settings/Masters.
Apply discount
- Folio โ % Apply Discount.
- Enter the percentage and a reason.
- The system reverses every room + extra-person row and re-posts them with GST on the discounted base. F&B / Laundry are not discounted.
Record payments
Folio โ + Record Payment. Pick the method (Cash / Card / UPI / Bank Transfer / Cheque). The deposit account auto-fills from Settings โ Cash/Bank routing, overridable at payment time. Each payment writes a receipt, posts a balanced JV (Dr Bank / Cr AR) tagged to that bank account, and updates the folio balance.
Generate invoice
Checkout finalises the invoice automatically. Reprint any time from Booking Detail โ Invoice tab โ Print Invoice. The document number and line items lock once issued โ further changes need a credit note. For a Pro-forma at any time: Folio โ Pro Forma.
Share invoice on WhatsApp
Invoice modal โ ๐ฌ Send via WhatsApp. The system mints a 30-day public link hms.saskey.in/i/<token> and opens WhatsApp with a pre-filled message. No PDF needed โ the guest just taps the link.
GST handling
- Room slabs โ Settings โ GST: exempt-below / low rate / threshold / high rate.
- Charge categories โ each has its own default GST (F&B 5%, Banquet 18%โฆ).
- Place of supply โ from the guest's GSTIN (first 2 digits = state). Same state โ CGST + SGST; different state โ IGST. This applies to banquet bills too.
Inventory & Assets โ Item Master NEW
Inventory โ Item Master is the unified hub over consumables (Store) and fixed assets. One item master, one category master, and a live valuation that ties to the general ledger. The key idea: an item's GL classification is its accounting nature.
| Category GL code | Treatment |
|---|---|
Fixed asset (12xx) | Capitalised + added to the asset register. Depreciation is a manual JV. |
Inventory asset (114x) | Perpetual โ asset on purchase, cost released on consumption / sale / damage. |
Expense (5xxx) | Expensed at purchase; quantity-only tracking. |
The module also gives you three explorers โ by room, by category and by item โ plus Room View, low-stock, movement history and a GL reconciliation tab.
1220) โ set them explicitly so consumables don't get capitalised by mistake.Purchase & stock-in
A purchase bill (Accounts โ Purchases) posts by classification automatically: inventory to 114x, fixed assets to 12xx, expenses to 5xxx โ plus GST input and Accounts Payable. Asset lines auto-register one record per unit, so the register value ties to the GL. Store lines raise stock at the receiving location.
Move stock to rooms & floors
How stock moves depends on its nature:
- Consumables โ Reports โ Store Issuance: pick the item and source store, choose a room / floor / department, enter the quantity (in issue units). Review anytime under Store Issue History.
- Assets โ open the asset โ Assign / Move โ pick the room. Every move is logged (who, from, to, when) in the asset history.
- Linen โ use the Linen module's Issue Linen (to rooms) and Transfer Stock (between internal locations) โ see below.
Charge a damaged item to a guest
On Booking Detail โ ๐งพ Charge Damaged Item. Pick the item โ store consumables and linen are both searchable, with a location picker โ set the quantity. This posts a folio charge with output GST (a sale), reduces stock at the chosen location, and records a stock-issue movement. Blocked once the folio is invoiced. The same sellable items are also available at Counter Sale for walk-in cash/invoice sales.
Sell or write off an asset NEW
Open an asset โ Write-off / Sell (Dispose). Choose Sell (enter sale price + buyer) or Write-off (enter reason). The asset leaves the register and the gain/loss is booked automatically: a sale posts proceeds and any gain (4920) or loss (5510) versus book value; a write-off books the remaining book value as a loss (5510). Both appear in the Sold & Written-off report.
Depreciation JV
Depreciation is a manual journal entry โ no auto-engine. On Accounting โ Journal Entry, use the Depreciation template (Dr 5500 Depreciation / Cr 1290 Accumulated Depreciation) and pick the real chart-of-accounts codes from the picker. The asset register supplies each unit's cost and purchase date.
Linen management NEW
Inventory โ Linen tracks every towel and sheet through its full life โ godown โ rooms โ laundry โ back โ write-off. Four tabs: Stock Overview (live count across all locations, low-stock flags, write-off totals), Room Stock, Movement History and Vendor Settlement.
Total Owned = Main Godown + Hotel in-store + In Rooms + In Floors + Drivers + Laundry + Rewash. Write-off is shown separately and is not part of Total Owned. Rows below their Safety Stock flag as low.
| Action | Moves linenโฆ |
|---|---|
| ๐ค Issue Linen | Store โ a room |
| ๐ Transfer Stock | Between internal locations (godown โ floor โ in-house store) |
| Send to Laundry / Receive Clean | Room โ vendor, then vendor โ in-house store (billed on receive) |
| Send / Receive Rewash | Items returned still dirty (not re-billed) |
| ๐ Write-off | Damaged / lost / discarded โ removed from stock |
Laundry billing: set per-category wash rates under Manage Laundry Rates, log the vendor's bill with Record Vendor Bill, and the Vendor Settlement tab shows Total owed = rate ร received. Laundry bills settle through Accounts โ Vendor Payments. Use Reconcile (๐งฎ) after a physical count; export the overview to CSV/PDF.
Inventory reports NEW
Reports โ Inventory group:
- ๐ Inventory Stock & Value โ live holdings & worth in three tables (Assets, Consumables, Linen) with totals. Linen is valued at its average purchase rate.
- ๐ Inventory by Location โ pick a room / floor / store and see all its assets, consumables and linen with per-section and overall totals.
- ๐ Purchases (Consumables & Assets) โ what you bought in a period, split by type with totals.
- ๐๏ธ Sold & Written-off โ four views: Assets Sold, Assets Written-off, Consumables Out, Linen Out.
- ๐ฆ Store Issuance / Issue History / Store Inventory โ issue consumables and see openingโclosing per item.
Date-range reports default to the current month; movement reports page 100 rows at a time with full-period totals, and CSV export pulls every row for the range.
Purchases & purchase returns
Accounts โ Purchases records supplier bills for store items, linen, assets and consumables. Vendor and item fields use a type-to-search box (contains match), so long lists are quick. Editing or cancelling a bill reverses its accounting and inventory; cancelling an asset bill removes the asset it created. Purchase Returns send goods back and adjust the payable.
Vendor payments
Accounts โ Vendor Payments pays a vendor's outstanding bills โ both laundry and purchase bills โ in one cheque or transfer, posting one clean entry to the account the money left.
Vendor advances
- Add advance โ prepay a vendor money not tied to any bill. Posts Dr Advances to Vendors ยท Cr Bank and builds up the vendor's advance balance.
- Apply advance โ when a vendor shows "(โนX avail)", draw from it to settle bills; the bank pays only the difference.
Vendor statement NEW
Accounts โ Vendor Statement is a per-vendor payable ledger in one chronological view โ purchase bills, laundry bills, payments, purchase returns and advances, with a running payable balance. Pick the vendor and a date range; export to CSV.
- Credit = bills raised on you ยท Debit = payments and returns. Balance = bills โ payments โ returns.
- It reads every real payment โ single-bill payments and batch vendor payments alike โ so a bill marked Paid always shows its payment and the balance tallies.
- Advances sit in a separate wallet and only reduce the balance when applied to a bill.
- Direct expense vouchers paid to a vendor appear as memo rows (shown in both columns) and don't move the payable โ they aren't payments against a bill.
Cash / Bank ledger
Accounts โ Cash/Bank Ledger is a running-balance passbook for any drawer or bank account. Pick the account and a date range to see every inflow and outflow with the closing balance โ guest payments in, expenses and vendor payments out, plus manual journal/contra entries tagged to that account. Each expense appears once (as its voucher), never double-counted with its posting entry.
Bank reconciliation
- Accounts โ Bank Reconciliation โ pick the bank account and upload the SBI statement PDF / e-statement (handles current and OD accounts).
- Confirm the auto-suggested matches between statement lines and ledger entries.
- For bank-only lines (charges, interest) post a quick adjustment so both sides tally.
Corporates & credit
Accounts โ Corporates tracks companies you bill on credit. A corporate booking can be marked Bill-To at checkout โ a tax invoice is raised but the balance stays receivable until the company pays. Each corporate page shows its bookings, discount per booking, outstanding, aging and a statement.
OTA reconciliation NEW
For bookings where the OTA collects from the guest (MMT, Goibibo, etc.), the PMS tracks the flow end-to-end: the OTA-collect receivable when the guest pays the OTA, the commission + tax you owe, and the remittance when the OTA settles the net to your bank.
The screen opens on everything still outstanding, with no date window โ so a voucher uploaded two months ago and never paid is in front of you, not hidden behind a filter. Narrow it by date if you want to review a batch; you can filter on bill upload date or stay date, whichever matches how you are working. Whenever a filter is narrowing the view, a banner still shows the true all-time outstanding so a filtered page can never imply that is all you are owed.
Recording a remittance
๐ฐ Record Remittance → pick the OTA channel first, then tick the bookings that payment covers and enter the amount against each. Choosing the channel scopes the list to that OTA's bills, so an MMT payment cannot accidentally be allocated to a Goibibo booking โ they settle separately, and a mixed allocation would make both statements impossible to tie.
Remittance history
Its own tab, with its own date filter. Click any remittance to open it and see every bill it settled โ booking, guest, OTA reference, stay dates, gross, commission, payable, allocated and anything still pending. If the allocations do not add up to the payment itself, the row says so rather than leaving you to add up the column.
GST filing
Accounts โ GST Filing is the month-wise compliance hub: GSTR-1, GSTR-3B and GSTR-2B views, the filing JSON, a 2B reconcile, and a filing lock. Once a month is marked filed, the system blocks edits that would change that period's figures so your books can't drift from what you submitted.
Zoho Payments โ setup NEW
Connect Zoho Payments and the PMS can send a guest a payment link from any booking. When the guest pays, the receipt lands on that folio by itself โ no one re-keys it, and the money is in the ledger before anyone opens the bank statement.
Part 1 · In Zoho Payments
Open payments.zoho.in → the gear icon → Settings.
23137556. You will paste it into the PMS.https://pms-api.saskey.in/api/v1/zoho-links/webhookSubscribe to the payment link events โ paid, expired and cancelled. Save.
Part 2 · In the Zoho API Console
A separate site from Zoho Payments. It issues the credentials the PMS uses to talk to your account.
https:// and any trailing path. One character out and the connect step fails with invalid redirect uri โ which is Zoho refusing, not the PMS.Part 3 · In the PMS
What each key is for
Where the money lands
A Zoho payment is treated exactly like a card or UPI receipt: it posts to the folio as a payment, and in the ledger it parks in 1145 Card/UPI Clearing until the money actually reaches your bank. When Zoho settles, you clear it the same way you clear card settlements. The guest's folio is right immediately, and your bank balance stays honest until the funds land.
If something goes wrong
The URI in the API Console does not match the one the PMS shows. Copy it again from Integrations → Payment Gateway and paste it without editing.
The webhook is missing, or its signing key is wrong. Check Zoho Payments → Developer Space → Webhooks: is the URL there, and are deliveries reported as successful? Re-copy the signing key into the PMS and have Zoho retry. The payment is safe either way โ it is on Zoho's side, and it posts as soon as the notice is accepted.
The Enable tick is off. Credentials can be saved and connected while disabled; nothing will bill until it is ticked.
Credentials are saved but the Connect step was never completed, or access was revoked at Zoho. Click Connect again.
A link was being created when something interrupted it. The PMS shows a warning rather than silently making a second link, so you are never left with two live links for one booking. Cancel it and create a fresh one.
KOT โ menu & tables setup
Everything the restaurant sells comes from the menu master. Prices are always re-read from here when an order is placed, so a typed price can never reach a bill.
- KOT / Restaurant โ Menu tab โ + Menu Item.
- Name, category (Food, Beverage, Dessert, Snacks), price before GST, GST % (5% for restaurant service) and veg / non-veg.
- Packaged goods only (water bottle, soft drink, chips): link the store item and the quantity per serving โ e.g. "Water bottle ร 2" = 2. Each order then takes that many off the shelf. Leave it blank for cooked food.
- Retire an item instead of deleting it if it has ever been ordered โ old orders keep their name and price.
- Tables: same Menu tab โ + Add table โ T1, T2, Garden 1โฆ so waiters pick a table instead of typing it.
KOT โ take an order
- KOT / Restaurant โ + New Order / KOT.
- Order type: Room service (pick the in-house room), Restaurant (pick the table), Takeaway, or Banquet (pick today's function).
- Tap dishes to add them, set quantities, add a note for the kitchen if needed.
- Place Order & Print KOT โ the 80 mm kitchen ticket prints.
- Move it along from the Active tab: โ Start Preparing โ โ Mark Ready โ โ Mark Served. Served orders move to ๐ณ To Bill.
Guest wants more? Use โ Add round on the order. Only the new items print, marked ROUND 2 โ ADDITIONAL ITEMS ONLY, so the kitchen doesn't cook the first round again. A served order goes back to "preparing" while the round is cooked.
Cancel an order (with a reason) before it is billed. Any packaged goods or recipe ingredients it took are put back in stock.
KOT โ settle the bill
Open ๐ณ To Bill โ the order โ Settle, and choose how it becomes money:
| Option | What happens | Use when |
|---|---|---|
| ๐๏ธ Charge to room | Posted to the guest's folio with CGST/SGST; invoiced with the stay at checkout. No payment taken now. | Room service, or a resident eating in the restaurant |
| ๐งพ Counter sale | Its own CS/ tax invoice; payment recorded (cash, UPI, card or bank transfer); goes to GSTR-1 straight away. | Walk-in diners, takeaway |
| ๐ช Add to banquet | Added to the function's item list and invoiced with the banquet. | Extra food ordered during an event |
- Discount (manager): percent or amount, with a reason. It reduces the taxable value before GST, as the law requires.
- ๐ Comp (manager): complimentary order with a reason โ no charge, no invoice. Un-comp puts it back in To Bill if it was a mistake.
- Bill prints the guest's copy with GST split out. Before settlement it says "Provisional bill ยท not a tax invoice".
KOT โ re-print a bill or ticket
KOT / Restaurant โ History โ Re-print column:
- ๐งพ Bill โ the guest copy, stamped *** DUPLICATE โ RE-PRINT *** and showing what the order became: CHARGED TO ROOM 105 โ DO NOT COLLECT (with the stay's tax invoice number once issued, or "to be paid with the room bill at checkout"), PAID โ CS/โฆ, or CHARGED TO BANQUET. Staff can't collect the money twice from a re-print.
- ๐จ๏ธ KOT โ the kitchen ticket, marked DUPLICATE โ RE-PRINT ยท DO NOT COOK.
The History Invoice # column shows the counter invoice, or for room orders the stay's tax invoice number once it has been issued.
Breakfast list
Reports โ Breakfast List (pick a date) or Front Desk โ Tomorrow's Breakfast tile. Rules:
- Only in-house guests: rooms actually checked in the night before. A booked guest who hasn't arrived isn't counted; a guest who left early drops off.
- # Guests = adults + children registered to the room, so it always matches the Adults / Children column. Extra named occupants can raise it, never lower it.
- Guests who check out on the morning of the date are included โ they have breakfast before leaving.
- The Front Desk tile always shows tomorrow, whatever date the Breakfast tab is set to. Breakfast Count (period) gives the same numbers day by day for a month.
Food costing โ switch on & set up
Food costing tracks recipes, kitchen stock and the cost of every plate. It is switched on per hotel; when it is off, KOT works exactly as before.
Recipes & cost per plate
- Food Costing โ Dishes & Recipes โ the dish โ + Recipe / Edit recipe.
- Add each ingredient with its quantity for one plate in the recipe unit (g, ml, pcs).
- Prep loss % covers peeling, trimming and bones: 150 g of onion at 10% loss draws 167 g from stock.
- The editor shows cost per plate, margin and food cost % as you type. Save recipe.
Dishes are flagged Healthy (โค30%), Watch (30โ38%) or High (above 38%). Cost uses each ingredient's weighted-average purchase price over the last 90 days. A dish whose ingredient has no purchase price yet is marked "no price yet" rather than looking cheap.
When a KOT is placed, each dish's recipe and today's cost are saved on the order. Last month's food cost doesn't change when onion prices do, and a cancelled order puts back exactly what it took.
Daily purchase (market run)
- Food Costing โ ๐ Daily Purchase.
- Vendor (create one called Local Market (Cash) for cash buying), date and bill / slip number.
- Type quantity and rate against each item you bought. Items below par are marked LOW; the rate box suggests the current average price.
- Tick Paid now from and pick the cash or bank account if you paid on the spot.
- ๐พ Save purchase.
It is saved as a normal purchase bill with F&B lines, so it appears in Purchases, updates the vendor balance and the ledger, and stocks the kitchen. Supplier bills with GST can also be entered from Purchases โ New using the ๐ฅฌ F&B Item line type.
Kitchen stock, wastage & counts
- Kitchen Stock lists every ingredient with its kitchen quantity, par level, average cost and value. Rows below par are highlighted LOW; tick "Only below par" for a shopping list.
- ๐๏ธ Record wastage โ item, quantity (kitchen unit) and reason: spoiled, expired, burnt, spilled, returned by guest, over-production. It comes out of stock and is costed in the reports.
- ๐ Stock count โ type what is physically on the shelf (in buying units). Stock is set to your count and the difference is recorded as variance. Do it weekly.
- โก๏ธ Issue from main store โ only for items bought into the main store (e.g. as Store Items) that the kitchen now uses.
Food cost reports
Food Costing โ ๐ Overview โ pick dates โ Show:
| Figure | Meaning |
|---|---|
| Food sales | Ex-GST value of KOT lines for dishes with recipes (comped orders count as โน0). Sales of dishes without a recipe are shown separately. |
| Recipe food cost | What the recipes say the food sold should have cost. |
| Actual food cost | Recipe cost + wastage + stock missing at counts. The gap between the two is your leakage. |
| Dish performance | Quantity sold, sales, cost, margin and food cost % per dish. |
| Daily chart | Sales and food cost per day; hover a bar for the figures. |
Complimentary & house-use stays
Mark a stay as complimentary (admin / manager): booking โ ๐ Comp / House Use โ choose Complimentary (goodwill, no charge to the guest) or House Use (hotel / staff use) โ reason. Room charges already posted are removed; food, minibar and other charges stay billable. Allowed while the booking is confirmed or checked in and no tax invoice is issued.
Make it chargeable again: booking โ โฉ๏ธ Charge Room Rates. The room nights are posted back with GST.
- Works after checkout too, as long as no tax invoice is issued. If the checkout already raised one, void that invoice first; then use Charge Room Rates and Generate Final Invoice. You don't need Undo Checkout or its 4-hour window.
- Nights are billed from the actual arrival to the actual departure โ an early departure isn't charged for nights not stayed, and an overstay is charged in full.
- A guest who has already left is charged the room rate on their booking, not today's tariff.
Invoice register & split-invoice payments
Accounts โ Invoice Register lists every tax invoice with its payment status. When a stay is split into several invoices (e.g. two rooms billed separately), the register shows each invoice's own balance:
- Paid, Unpaid or Credit per invoice, with the amount still due.
- Unallocated โ money was received on the folio but not yet assigned to an invoice. Click Allocate and split the payment across the invoices it covers.
- If the whole folio is settled, every invoice on it shows Paid.
TDS receivable register
Accounts โ TDS Receivable tracks tax deducted by corporates and OTAs that you can claim back.
- Filter by date and by party (corporate or OTA). OTA TDS (194-O) is included automatically when an OTA bill is confirmed, with an OTA badge and its ledger account.
- Reconcile in bulk: tick the rows covered by one Form 16A / 26AS certificate โ Reconcile โ enter the certificate number and date once. Reconciled rows show the certificate beside them.
OTA collect โ receivable account
When an OTA collects the money (MakeMyTrip, Goibiboโฆ), the guest's checkout posts to an OTA Receivable account โ not to your bank โ until the OTA actually pays you. Recording the OTA remittance then moves it into the bank.
- Settings โ ๐ฅ Receipt Routing โ OTA Collect โ choose 1133 OTA Receivable (an asset account under Accounts Receivable).
- Record each payout in OTA Reconciliation โ Record remittance; the PMS refuses a remittance if OTA Collect isn't set, or is set to the same account as the bank.
Purchase line types
| Line type | Effect |
|---|---|
| ๐ง Asset | Creates an asset record; capitalised to the category's asset account. |
| ๐ Linen | Adds to linen stock. |
| ๐ฆ Store Item | Adds to main-store stock (toiletries, minibar, cleaning); pick from Item Master. |
| ๐ฅฌ F&B Item | Adds to kitchen stock for food costing; posts to 5110 F&B Cost. Shown only when food costing is on. |
| ๐งพ Expense | Billed to an Expense Category โ bank charges, courier, printing, hosting โ so it lands on its own ledger head instead of Miscellaneous. Category is required. |
| โก Utility ยท ๐จ Maintenance ยท ๐ ๏ธ Repairs ยท ๐ Transport ยท ๐ฉ Fitting ยท ๐ Other | Fixed expense heads; no stock effect. |
| โ Round Off | Bill round-off; no GST, may be negative. |
Banquet โ new booking
- Banquet โ + New Booking.
- Fill event name, date, hall, pax, food rate/pax, hall charges, contact.
- Optionally enter an initial advance + payment method.
- Save. Status starts as
confirmed.
Advance payments + receipts
Open the booking โ Payment Ledger โ + Add Payment. Multiple advances are allowed any time before the event; each gets a receipt RCPT-BNQ/FY/00001 you can print.
Complete event โ generate invoice
After the event, click Mark Completed. Generate Invoice enables only now (locks the amount; pre-event changes are allowed). Inter-state banquet bills correctly use IGST based on place of supply.
Cancel & refund
Open detail โ Cancel Booking โ confirm reason. The system reverses the revenue + GST JV (if invoiced), leaves payment rows untouched (money is still in your bank), and surfaces a โฉ๏ธ Refund button with the eligible amount. Refund โ pick mode + account โ submit.
Housekeeping tasks
The Housekeeping page shows rooms grouped by floor with their cleaning tasks. Tap a room โ Start begins a timer; Stop closes the task and records duration. Assign floors under Settings โ Users โ the staff member โ Floors.
Maintenance tickets
The Maintenance page lists open / in-progress / closed tickets. Receptionists raise tickets from Booking Detail โ ๐ง Ticket (category, priority, description). Maintenance staff get a push notification and a row on their mobile dashboard.
Install the mobile app
Android: Play Store โ "PMS by Saskey" โ Install (or the internal-testing link from your admin). iOS: TestFlight invitation. Sign in with the same email + password as the web. Updates arrive over-the-air โ if a screen looks old, fully close the app twice to pull the latest.
Role-specific screens
Cash-in-Hand tile NEW
The mobile dashboard shows a live Cash-in-Hand tile โ the balance of the cash ledger (GL 1101) โ for admin, manager, accountant and receptionist. It's the cash drawer only (bank and clearing accounts are excluded), so front-desk staff can reconcile at a glance. The month filter also drives MTD, revenue and room-nights on the same dashboard.
Push notifications
Tasks and tickets are pushed to the assigned device within seconds. Not receiving them? App permissions โ enable Notifications, then sign out + back in to re-register your push token.
Night audit
Runs automatically at 00:05 IST daily. Posts room charges for every in-house booking that night using each room's live occupancy and category rate. Open Night Audit to preview what's about to post, or run it manually if you missed a day.
Dashboard drill-downs
Every Dashboard tile is a shortcut into the matching report with the date filter already applied. Occupancy % is room-nights based (rooms occupied รท sellable rooms) and shows in-house pax beneath it. The same figures appear in the mobile app.
Reports & menu
Reports is one hub with a grouped two-level menu โ pick a group (Today, Financial, GST & Compliance, Front Office, Inventory), then the report. Police Report and Invoice Register live here too.
- Day Sales / Cash / Cashier / Day Book โ collections by date, method and cashier.
- Revenue & Tax โ GST-segregated revenue (CGST/SGST/IGST), with guests + nights.
- Occupancy โ per-day occupancy with a pax column.
- P&L / Balance Sheet / Trial Balance โ GL-derived, date-filtered, always tally, with charts.
- Outstanding (O/S) / Payables โ receivables and payables as-on-date.
- Invoice Register / Police Report โ every issued invoice ยท the daily guest register.
- Inventory โ stock & value, by-location, purchases, sold & written-off, store issuance/inventory. See Inventory reports.
Every dated report has quick presets (Today ยท Yesterday ยท This/Prev month ยท Custom) and exports to CSV or Print/PDF.
Accounts Daybook NEW
Reports โ Financial โ Accounts Daybook is a single-date accounting view built for the back office:
- Cash / Bank / Card cards with opening, inflow, outflow and closing for the day.
- Payments Received โ the day's receipts, split Advance (open folio) vs Actual (settled) by method.
- Invoices Issued โ the actual tax invoices raised that day (room / banquet / counter) with taxable, GST and total โ distinct from raw folio charges.
- Expenses (Outflows) โ each expense voucher for the day with category, vendor and paid-from account.
- Discount Details โ discounts on the folios invoiced that day.
Print gives a clean paper-form daybook; the whole view is date-driven with a Today button.
Report access by role
| Role | Sees |
|---|---|
| Admin ยท Accountant ยท Back office ยท Front Office Manager | All reports. |
| Receptionist ยท Cashier | Cash, Day Book, Cashier, Breakfast, Police Report, Invoice Register. |
| Housekeeping | Occupancy, Housekeeping. |
| Maintenance | Maintenance. |
GSTR-1 export
Accounts โ GST Filing โ pick month. Groups invoices by HSN/SAC, computes per-bucket taxable + tax, and produces the format your CA can file. Voided invoices are excluded; counter sales are included. Taxable value is derived from each invoice's stored totals.
Settings โ Theme colours
Settings โ Theme โ set the Primary and Accent hex codes. Used everywhere: sidebar gradient, headings, accent strip, primary buttons. Leave blank to fall back to navy / blue defaults.
Settings โ SMS templates
Provider: pay4sms.in (or SmartPing). Paste the token + sender ID + DLT template IDs. A ๐งช Test SMS form lets you pick an event, type a phone and send โ the result and the rendered message show inline.
Settings โ Charge categories
Add each non-room service you'll bill (F&B, Laundry, Mini Bar, Banquet, Spaโฆ). Each stores a SAC code, a default GST rate, a standard rate and the GL account the revenue posts to. Pick the category when adding a charge and all of it auto-fills.
The rate is a default, not a cage โ tick Staff may change the price on items that genuinely vary (damage recovery, say) and leave it clear on the ones that should not. Blank means "varies", and the charge starts at zero for someone to type.
Settings โ Cash / Bank routing
Pick which Chart-of-Accounts account each payment method posts to. Example: Cash โ 1101, Card โ 1145, UPI โ 1145, Bank Transfer โ 1120, Cheque โ 1101. These pre-fill the account on every payment.
Settings โ Users & roles
Invite a user with email + role; change role inline anytime. For housekeeping / maintenance, assign the floors they should see. Managers can add non-admin users but cannot create or edit admins.
License & access
Each property runs on a Saskey license with an end date. While current, everyone works normally. If it lapses, the PMS pauses sign-in and every screen (web and mobile) with a "license expired" message โ no data is lost.
Troubleshooting
What does an error message on a save mean? โบ
When the system refuses a save, the message now says what to fix โ e.g. "Category is required on the purchase bill line โ it is missing", "A required selection is missing (a dropdown was left empty)" or "'12,50' is not a valid number". Nothing is saved until it is corrected. If a message still looks technical, send a screenshot to support.
"Guest can't be checked out โ unbilled KOT" โบ
One of the guest's restaurant orders is still being cooked, served or waiting in ๐ณ To Bill. Settle it (usually Charge to room) or cancel it, then check out. See Settle the bill.
I can't see Food Costing in the menu โบ
It appears only when an admin switches on Restaurant food costing in Settings โ Property, and only for admin, manager, accounts and restaurant roles.
A complimentary stay was checked out by mistake โบ
Void the auto-generated invoice if there is one, then booking โ โฉ๏ธ Charge Room Rates โ Generate Final Invoice โ take payment. No Undo Checkout needed. See Complimentary stays.
"Your Saskey PMS license has expired" โบ
Your property's license end date has passed. Nothing is lost โ message Saskey to renew and access is restored the moment we update the date.
A vendor payment isn't showing in the Cash/Bank Ledger โบ
Make sure the payment was recorded with the correct Paid From account on the Vendor Payments screen. The ledger lists a payment only when it's tagged to that bank/cash account.
A vendor statement doesn't tally with what I've paid โบ
The Vendor Statement now reads every payment type โ single-bill payments and batch vendor payments โ so a bill marked Paid shows its payment. If a number still looks off, check the bill's amount paid on the purchase, and remember direct expense vouchers are memo rows that don't reduce the payable.
The theme isn't applying on some pages โบ
Hard refresh (Cmd/Ctrl+Shift+R). Confirm Settings โ Theme shows your colours saved. In DevTools, inspect <html> and look for --theme-primary in computed styles.
An SMS test failed โบ
Read the inline error. Common causes: DLT template ID empty, body still uses {#var#} instead of {#alphanumeric#} (both are supported), or the pay4sms balance ran out.
F&B GST showing 18% instead of 5% โบ
Settings โ Charge Categories โ "Food & Beverage / Restaurant" โ set Default GST to 5% and save. New F&B charges post at 5%; existing wrong ones need void + re-add.
An asset shows the wrong value in the register โบ
Multi-unit asset purchases now create one register record per unit, so the register ties to the GL. If a historical item looks off, check its category's GL code in Item Master โ Categories, and that consumables aren't sitting under a fixed-asset code.
Mobile app doesn't show new tasks / screens look old โบ
Pull to refresh. If push isn't arriving: enable Notifications, then sign out + back in to re-register the token. For an out-of-date screen, fully close the app twice so it pulls the latest over-the-air update.
Get support
WhatsApp: +91 84892 56789
Email: info@saskey.in
Web: saskey.in
Mention your property name and the booking number you're stuck on โ that gives us instant context.