# A UPI QR code for rent collection

> Give each tenant a code with a fixed amount and a reference that names the property — tn=RENT-FLAT-4B — and change tr monthly, for example FLAT4B-2026-08, so every statement line matches a month and a flat. For automatic collection, UPI Autopay mandates are a different rail set up in the payer's app.

Source: https://useqr.app/docs/payments/upi-qr-for-rent-collection · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## Why rent is the reference-discipline case

Rent is the same amount, from the same person, every month — which sounds easy until you
manage four flats and the statement shows four identical ₹18,000 credits with no labels.
The QR code fixes this not by moving the money differently but by **labelling it**:

```
upi://pay?pa=landlord@okhdfcbank&pn=R%20Sharma&am=18000.00&tn=RENT-FLAT-4B&tr=FLAT4B-2026-08&cu=INR
```

Three decisions are doing the work:

1. **Fixed amount.** Rent does not vary, so lock `am` — the tenant cannot underpay by typo
   or on purpose. Why locking works is covered in
   [fixed-amount UPI codes](/docs/payments/upi-qr-with-fixed-amount).
2. **`tn` names the property.** `RENT-FLAT-4B` appears on the tenant's screen and labels the
   credit. It stays constant for the tenancy.
3. **`tr` names the month.** `FLAT4B-2026-08` makes each month's payment a distinct,
   searchable statement line. The charset allows letters, digits, dots and dashes up to
   **35 characters**, so a flat-plus-month scheme fits comfortably — the full rules are on
   the [tr and tn page](/docs/payments/upi-transaction-reference-tr-and-tn).

## The monthly workflow

A changing `tr` means a fresh code each month. That is less work than it sounds:

- **Per-month codes, sent digitally.** Generate twelve codes in one sitting from a CSV —
  one row per month, `tr` column pre-filled — with the [bulk tool](/bulk), and message the
  right one each month. Codes are static links; they [do not expire](/docs/basics/do-qr-codes-expire).
- **Or one static code per flat.** Keep `tn=RENT-FLAT-4B`, drop `tr`, and accept that months
  are distinguished by date alone. Fine for one property; increasingly painful past three.

Whichever you choose, [decode-verify](/validate) the codes before sending — a wrong `am` in
a rent code repeats its error twelve times.

## Deposits, maintenance and everything that is not rent

The failure mode in landlord accounting is the unlabelled credit that might be rent, might
be the deposit, might be the plumber being repaid. Give every stream its own reference:

| Payment | tn | tr example |
|---|---|---|
| Monthly rent | RENT-FLAT-4B | FLAT4B-2026-08 |
| Security deposit | DEPOSIT-FLAT-4B | DEP-4B-2026 |
| Maintenance share | MAINT-FLAT-4B | MAINT-4B-2026-Q3 |

Deposits deserve the discipline most: they are refundable, disputable and often disputed
years later. A statement line reading `DEP-4B-2026` is evidence; an anonymous ₹50,000 credit
is a conversation.

## What about automatic collection

A QR code is still a **manual** payment — the tenant scans, checks, confirms with a PIN,
every month. UPI also has a mandate rail, **UPI Autopay**, where the payer authorises a
recurring debit once in their own app and the money moves on schedule. It is set up in the
payer's UPI app and governed by mandate rules, not by anything you can print — a QR code
cannot create a mandate on its own. For most small landlords the scan-and-pay pattern with
good references is simpler and keeps the tenant in control; ask your bank about Autopay if
you want true pull-based collection.

Note the ceiling: personal-VPA rent collection rides the P2P rail, typically capped around
**₹1 lakh per day** — relevant if several tenants pay on the 1st. The layering is explained
in [UPI limits and charges](/docs/payments/upi-qr-code-limits-and-charges).

## FAQ

### How do I collect rent by UPI QR code?
Generate a code with the rent as a fixed amount, a note naming the property, and a reference naming the month. Send it to the tenant each month; the statement then reconciles itself.

### Can tenants pay the wrong amount?
Not through the code. A fixed am locks the amount field in the tenant's app — they confirm the full rent or pay nothing. Partial payments then require an explicit conversation, which is the correct default.

### Can a QR code set up automatic rent payments?
No. A scanned code is a one-off payment the tenant confirms each time. Recurring collection uses UPI Autopay mandates, which the tenant authorises separately inside their own UPI app.

### How do I tell the deposit apart from rent in my statement?
Use different references — tn=DEPOSIT-FLAT-4B on the deposit code, tn=RENT-FLAT-4B on rent. Each credit then arrives pre-labelled, which matters most for deposits that must be refunded or argued about later.

## Try it

- https://useqr.app/upi
- https://useqr.app/bulk
- https://useqr.app/validate
