The school fee reminders that Ugandan parents act on are short, specific and payable on the spot: they name the learner, state the balance in UGX and the deadline, and include the school's payment code so the parent can pay by MTN MoMo or Airtel Money from the same phone. Send them from a registered school sender ID, at a sensible hour, to numbers the parent gave you at admission, and you will spend less time on calls and gate conversations at the start of term.

Last reviewed: 27 October 2026

Why SMS still works for Ugandan school fees

Most Ugandan parents pay fees in instalments across the term, and many pay from a mobile money wallet rather than at a bank counter. A text message lands on the same handset that holds the wallet, works on a basic feature phone, and does not depend on data bundles or a smartphone app. For a bursar that matters: a reminder the parent can read at the market and act on within a minute is worth more than a newsletter that waits for Wi-Fi.

The payment rails are already in place. Schools that collect through SchoolPay give every learner a 10-digit payment code, and SchoolPay lists payment through more than ten banks and microfinance institutions and through MTN MoMo (*165#) and Airtel Money (*185#). Your SMS does not need to explain mobile money; it needs to put the right code and amount in front of the right parent at the right time.

What a reminder that gets paid looks like

Parents ignore vague messages ("Dear parent, kindly clear fees"). They respond to messages that remove every question they would otherwise ring the school to ask. A good fee reminder answers five things:

  1. Who is writing: the school's name, on a sender ID parents recognise.
  2. Which child: first name and class, so a parent with three children in different schools knows which one this is.
  3. How much: the outstanding balance in UGX, not the full term fee.
  4. By when: a date, not "as soon as possible".
  5. How to pay: the payment code or account, and the channel (MoMo, Airtel Money or bank).

Fitting all of that into one 160-character segment takes discipline. Drop greetings, use the learner's first name only and abbreviate the class (S.3, P.6). If a message runs to two segments it is still fine; just know that each segment is billed.

Sample messages

MomentExample SMS
Two weeks before deadlineSt Kizito SS: Fees balance for Brian (S.3) is UGX 450,000, due 14 Feb. Pay via SchoolPay code 1002345678 on MoMo *165# or Airtel *185#.
Payment confirmedSt Kizito SS: Received UGX 200,000 for Brian (S.3) on 10 Feb. New balance UGX 250,000. Thank you.
Deadline passedSt Kizito SS: Brian (S.3) still has UGX 250,000 outstanding. Please pay or call the bursar on 0700 000000 to agree a plan before Monday.
Visiting daySt Kizito SS: Visiting day is Sat 8 Mar, 9am to 4pm. Parents with cleared fees collect report cards at the bursar's office.

The names, codes and numbers above are placeholders. Notice that the deadline-passed message offers a route to a payment plan. The tone of the chase matters as much as its timing: a message that sounds like a public warning invites silence, while an offer to agree a plan gives the parent a reason to call.

Timing across the Ugandan school year

Fee pressure in Uganda follows the three-term calendar. Plan your sends around it rather than firing one blast on reporting day:

  • Holiday, two to three weeks before reporting: term fees and requirements list, with the total and the payment code. This is the message that lets parents plan.
  • Reporting week: a short "school opens on" reminder with the balance for anyone who has not paid in full.
  • Mid-term: balances only, sent to parents with something outstanding. Do not message parents who have paid; it erodes trust in every later message.
  • Before exams and before report cards: a final balance notice, if your school policy links fees to report collection.
  • Immediately after each payment: a confirmation with the new balance. This single message cuts the number of "did you receive my money?" calls more than anything else.

Exam season brings its own SMS traffic. UNEB lets candidates check results by sending their index number to 6600, and the government SMS gateway run by NITA-U lists the examinations board among the agencies that use SMS to notify students and schools. Parents are used to receiving important school information by text, so your messages sit in a familiar channel. Keep them clearly branded so they are not confused with official results messages.

Sending at sensible hours: the UCC rule

Uganda's Text and Multimedia Messaging Regulations, 2019 say commercial communications may not be timed for delivery between 19:00 and 06:00 unless the recipient explicitly agreed, or unless delivery in that window is part of the upfront description of the service (regulation 19). Health, fire and security emergencies are exempt.

A fee balance for an enrolled learner is closer to an account notice than an advert, but there is no reason to test the line. Parents read messages in the morning and at lunch, and that is when they pay. Schedule fee reminders for daytime, and keep evening sends for genuine emergencies such as a school closure or a security incident, which the regulation exempts.

Consent, children's data and opt-out

Phone numbers collected on the admission form are personal data. A few rules keep a school on the right side of both the UCC regulations and the Data Protection and Privacy Act, 2019:

  • Say why you collect the number. Add a line to the admission form: the school will send fee, term-date and emergency messages by SMS. Regulation 11 allows messages to people whose details you obtained in a prior transaction if you made the purpose clear at collection and gave them a right to object.
  • Children's data needs a parent. Under the Data Protection and Privacy Act, collecting or processing a child's personal data generally requires prior consent from a parent or guardian. Message the parent, not the learner, and keep learner details in messages to the minimum (first name and class).
  • Identify the school in every message. Regulation 10 requires an identifier that lets the recipient recognise the sender and, for organisations, the organisation's name plus a way to contact it.
  • Separate promotions from account messages. Adverts for a new boarding wing or a holiday camp are commercial messages. Send them only to parents who agreed, and give an opt-out. Regulation 12 sets STOP as the opt-out word (END, CANCEL, UNSUBSCRIBE and QUIT must also work) and requires opt-outs to be honoured within 24 hours. Parents who opt out of promotions should still receive fee and safety notices about their own child.

Schools are also data controllers, so check whether you need to register with the Personal Data Protection Office.

How to set it up with eSMS Africa

  1. Register a sender ID such as KIZITOSS (up to 11 characters) with MTN and Airtel. We handle the paperwork; fees and steps are on the Uganda sender ID page. You can test on the eSMS default sender while it is processed.
  2. Import your parent list from the bursar's spreadsheet as CSV or Excel, with columns for parent name, phone, learner first name, class, balance and payment code.
  3. Build a template with merge fields, for example {{name}} and {{amount}}, and preview it before sending.
  4. Schedule the send for a weekday morning and use campaign approvals so the head teacher or bursar signs off before anything goes out.
  5. Check delivery reports after each send and clean up numbers that consistently fail.

If your school management system already knows when a payment lands, it can send the confirmation automatically through the API. A minimal bulk request looks like this:

curl -X POST https://sms.esmsafrica.io/api/messages/send-bulk \
  -H "Authorization: Bearer esms_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "sender_id": "KIZITOSS",
    "text": "St Kizito SS: Fees balance for {{name}} is UGX {{amount}}, due 14 Feb. Pay via SchoolPay on MoMo *165# or Airtel *185#.",
    "recipients": [
      {"to": "+256772000001", "name": "Brian (S.3)", "vars": {"amount": "450,000"}},
      {"to": "+256752000002", "name": "Aisha (S.1)", "vars": {"amount": "120,000"}}
    ]
  }'

Use an esms_test_... key while you build: test sends are simulated and not charged. Full details are in the HTTP API docs, and the Uganda SMS API page covers delivery reports.

What it costs

You pay per SMS segment, as you go, with no monthly minimum. Today a basic-tier SMS to a Ugandan number costs UGX 35 ($0.0083). Top up from USD 20 with MTN MoMo, Airtel Money or card. Multiply your number of families by the reminders you plan per term to estimate the cost; see pricing for volume tiers.

Frequently asked questions

Can a school send fee reminders in Luganda or Runyankore?

Yes. Messages in Luganda, Runyankore or Acholi use the standard Latin alphabet, so they fit 160 characters per segment like English. Keep the amount, deadline and payment code identical in every language, and have a staff member who speaks the language check the template before the first send. Many schools send English with a short local-language line where parents prefer it.

Do I need consent to send fee balances to parents?

Fee balances for an enrolled learner are account information, not marketing, but the parent should know at admission that the school will text them. Put that statement on the admission form and keep it on file. Promotional messages, such as adverts for holiday programmes, need consent and a STOP opt-out under the UCC regulations, honoured within 24 hours.

What time should we send fee reminders?

Weekday mornings work well because parents can pay the same day. Avoid 19:00 to 06:00: the UCC regulations bar commercial messages timed for that window unless the recipient agreed, with exemptions only for health, fire and security emergencies. Use scheduling so a late upload does not send at night.

Can parents reply to our SMS?

Not on a one-way sender ID. If you want parents to reply, for example to confirm attendance at a meeting, use a two-way short code; inbound messages arrive by webhook and STOP replies are recorded as opt-outs. Otherwise give a phone number for the bursar in the message.

Sources

See message flows, compliance notes and live UGX pricing for schools on our school SMS in Uganda page, or create a free eSMS Africa account and send your first fee reminder today.