PProcufy
  • Features
  • Solutions
  • How it works
  • Security
Sign in
PProcufyProcurement

From the moment someone asks for an item to the moment the supplier is paid and the paperwork is filed — one system, one trail, no spreadsheets.

procurement.dept@atilimited.net

Product

  • Features
  • How it works
  • Security

Solutions

  • For Administration
  • For Clients
  • For Vendors

Help

  • User manual
  • ব্যবহারবিধি (বাংলা)
  • Troubleshooting

Access

  • Sign in

Serving 17 organisations across the Drug International group

  • Drug International Limited
  • Drug International Limited (Herbal Division)
  • Drug International Unani Limited
  • Khawaja Yunus Ali Medical College
  • Khawaja Yunus Ali Hospital
  • Khawaja Yunus Ali Nursing Institute
  • Khawaja Yunus Ali Laboratory School and College
  • Khawaja Yunus Ali University
  • Khawaja Yunus Ali Foundation
  • ATI Limited
  • ATI Ceramics Limited
  • M. M. Tea Estates Ltd
  • M. M. Multimeter Ltd.
  • M. M. Consortium
  • Harnest (Label Industries Limited)
  • Taj Printers
  • GN Plastic Factory

© 2026 ATI Limited. All rights reserved.

Procufy — procurement management system.

Security & control

Who can see what is a decision, and it is recorded.

Access is data rather than code, duties are separated by design, and nothing is deleted. Here is how each of those actually works.

Access control

Permissions are data, not code.

There is no hardcoded list anywhere of which role sees which page. A page is a database row, a grant is another row, and administrators edit them in the Control Unit.

Granting access takes two steps

  1. 1

    Assign

    The page is assigned to a department or team. This is the real boundary — it is checked on read and on write, and saving it prunes grants that fall outside it.

  2. 2

    Grant

    The role is granted the page, as four separate flags: read, write, delete and export. Write, delete and export each imply read.

Grant without assignment and nothing appears. Add a page, assign it, grant it — and it shows up in the sidebar with no release.

No god mode

The superuser bypasses ordinary page checks, but four things stay off-limits even to it:

  • Open a client-only or vendor-only page
  • Open the Inventory module
  • Edit its own permission matrix
  • Rename, disable or delete a system role or department

System roles and departments return an error on update, and there is no endpoint that deletes them at all.

Separation of duties

The person who authorises a payment never executes it.

Four different people touch a bill before it closes, and each step verifies the state the one before it left behind.

Finance pages reserved to a single role
Reserved pageHeld by, and only by
Bill authorisationSenior Account Manager
Billing processingAssistant Account Manager
VAT & tax recordAssistant Account Manager

These three are not merely un-granted to everyone else — they are actively revoked from every other non-superuser role each time the permission seed runs, so the separation cannot drift.

Data separation

Clients and suppliers never see each other.

Enforced in three independent places, so no single missed check exposes a counterparty.

The data the API returns

Every email template

Every generated PDF

The vendor never sees

  • Which client or client unit an order is for
  • The client's name, address or contact details
  • Other vendors' quoted prices

The client never sees

  • Which vendors were invited to quote
  • Vendor identities during the comparison round
  • Vendor contact details
Audit

Nothing is deleted; everything is recorded.

Records move through statuses rather than disappearing, and every stage leaves a trail behind it.

Pipeline history

Four history tables — requisition, requisition item, purchase order and bill — each recording the previous status, the new status, who changed it and when.

Master-data change logs

Every edit to a client, vendor or user is logged and surfaced in the interface as that record's own history.

Tax audit

Every VAT or AIT rate change writes an audit row, retrievable per configuration.

System audit log

A superuser-only feed across eight categories — user, tax, mail, authentication, vendor, client, system and other — filterable by category, status, date and free text.

Movement ledger

Every physical transfer between vendor, warehouse, client and unit is a recorded movement, giving goods the same audit trail money has.

Lifecycle timelines

Requisitions, items, orders and bills each expose a full timeline, so "who touched this and when" is a page, not a database query.

Deactivated, never destroyed

Records move to inactive, suspended or archived. Users are never deleted — a deactivated account is simply refused at sign-in, leaving its history intact.

And the rest

The controls that sit underneath.

Permissions are data, not code

There is no hardcoded list of which role sees which page. Every page is a row, every grant is a row, and administrators edit them in the Control Unit. Add a page, grant it, and it appears in the sidebar — no release required.

Separation of duties

Three finance pages belong to exactly one role each and are revoked from everyone else on every seed run. The person who authorises a payment is never the person who executes it.

Nothing is deleted

Records move through statuses rather than disappearing. Four history tables, change logs on master data, a tax audit trail and a system-wide audit log across eight categories.

No god mode

Even the superuser is denied client-only and vendor-only pages, cannot open Inventory, and cannot edit its own permission matrix. System roles and departments cannot be renamed or deleted.

Atomic transitions

Status changes run inside serializable transactions, so a partial pipeline move is impossible. Selecting a winning quote sets the winner, rejects the others and prices the item in one write.

Verified onboarding

No self-service sign-up. Every organisation and user is created by an administrator and must pass a six-digit email code — hashed, constant-time compared, valid four minutes, five attempts.

Non-production environments cannot reach your counterparties

  • Outside production, every outgoing email is tagged with its environment and its real intended recipients, and sending can be redirected or switched off entirely.
  • There is no seed command for production — seeding is destructive, so it is not one word away.
  • Upload verification is read-only, and backups write only into the backup directory.
See the pipelineSign in