Subscription Billing & Payment Guide
This guide explains how your school's 4SCH subscription is billed, how invoices are generated, how to pay them, and what happens automatically after payment.
Audience: School administrators responsible for the school's 4SCH subscription.
- A new dismissible "Renew / Pay in advance" card now appears at the top of your dashboard whenever you have an active prepaid plan โ pay early even if your renewal is still weeks away. Click the ร to hide it for this billing cycle if you don't want the reminder; it returns automatically for the next cycle.
- The dashboard's expiry-warning "Click here to pay" button now works for Paystack, Flutterwave, and Stripe (previously it only worked for Stripe โ Paystack and Flutterwave users saw a button that did nothing).
- Prepaid renewals now correctly add days to your end date instead of resetting it. If you paid your last cycle and your plan was good through 27 June, the next payment extends to 2 July (not "today + 5 days").
- Subscriptions โ History now shows all your bills correctly, with the right due date for each cycle.
How Billing Worksโ
Two Billing Modelsโ
Your school can be on either of two billing models, set when you signed up:
1. Pay-Per-Period (Prepaid)โ
You pay for a fixed period (e.g., a term) upfront. Bills are generated as soon as a period ends, with a new bill for the next period.
2. Pay-Per-Usage (Postpaid)โ
You're billed at the end of each billing cycle based on actual usage (active students ร charge per student + active staff ร charge per staff).
Your Subscription Detailsโ
To see your current subscription:
- Login as School Administrator
- Click Subscriptions in the main menu
- The overview page shows:
- Package name (e.g., Starter, Pro, Max, or Custom)
- Start date โ when this subscription period began
- End date โ when it expires (and a new bill will be generated)
- Billing cycle โ number of days per cycle
- Student charge โ per active student
- Staff charge โ per active staff member
The billing cycle is stored as a number of days for flexibility. A monthly
plan would be billing_cycle = 30, a termly plan might be 60 or 90,
and annual is 365. The system simply adds these days to your end date.
How Invoices Are Generatedโ
Auto-Generated Dailyโ
4SCH runs a daily job that:
- Looks for any subscription whose end date was yesterday
- Generates a new invoice for the next billing cycle
- Calculates the amount based on your current student and staff counts
- Sends a notification to your registered school admin email/phone
Manual Generation (Rare)โ
In some cases, support staff may manually generate an invoice (e.g., for an addon purchase). These appear in the same list as auto-generated invoices.
Finding Your Invoicesโ
- Login as School Administrator
- Click Subscriptions โ History
- You'll see all invoices for your school
Each invoice shows:
| Field | Meaning |
|---|---|
| Bill Reference | Unique invoice number |
| Amount | Total to pay (in your school's currency) |
| Due Date | When payment is expected |
| Status | Paid, Pending, or Overdue |
| Transaction ID | Set once payment is made |
How to Pay an Invoiceโ
Step 1: Click Pay Nowโ
Next to any unpaid invoice, click Pay Now.
Step 2: Choose Payment Methodโ
You'll see the payment gateways your school's super admin has configured:
- Paystack โ Recommended for Nigerian schools (bank transfer, card, USSD, mobile money)
- Stripe โ Recommended for international schools (card)
- Flutterwave โ Pan-African option (card, bank transfer, mobile money)
A super admin needs to configure at least one payment gateway in Settings โ Payment Configuration before invoices can be paid online.
Step 3: Complete Payment on Gatewayโ
You're redirected to the chosen gateway's secure checkout page:
Paystackโ
- Bank Transfer: Receive a dedicated account number to transfer to
- Card: Enter card details
- USSD: Use bank USSD code shown on screen
- Mobile Money: For supported countries
Stripeโ
- Card: Enter card details
- Other payment methods depending on country
Flutterwaveโ
- Multiple methods including card, bank transfer, mobile money
Complete the payment as instructed.
Step 4: Automatic Redirect Backโ
After payment, the gateway redirects you back to 4SCH. You'll see:
- โ A success message
- โ The invoice updates to Paid status
- โ The transaction ID is recorded
What Happens Automatically After Paymentโ
Behind the scenes, several things happen within seconds:
- Payment verification โ 4SCH verifies the transaction with the gateway
- Bill marked as paid โ Linked to your transaction record
- Subscription extended โ Your end date moves forward by the billing cycle
- Features unlocked โ Any previously restricted features become accessible
- Transaction logged โ Record created in payment history
- If you pay before your subscription expires, the extension is added to your existing end date (rewards early payment).
- If you pay after expiry, the extension is added from today (so you always get the full cycle you paid for).
For example, if your billing cycle is 30 days:
- Paid 5 days before expiry: extension goes to old end + 30 days = 35 days from today
- Paid 5 days after expiry: extension goes to today + 30 days
Verifying Paymentโ
To confirm a payment went through:
- Go to Subscriptions โ History
- Find the invoice
- Confirm:
- โ Status shows Paid
- โ Transaction ID is populated
- โ Payment Gateway is shown (e.g., Paystack)
Click the transaction ID to see full details for accounting/reconciliation.
Understanding Bill Amountsโ
For Pay-Per-Period Plansโ
Bill amount = Package fixed price for the cycle.
For Pay-Per-Usage Plansโ
Bill amount is calculated as:
(active students ร student charge) + (active staff ร staff charge)
For example, with 50 active students at โฆ100 each and 5 staff at โฆ200 each:
50 ร 100 + 5 ร 200 = โฆ5,000 + โฆ1,000 = โฆ6,000
The exact charges per student/staff are in your subscription details under Subscriptions main page.
"Active" means student/staff records flagged as active in your school records. Deactivated users aren't billed.
Receiptsโ
After payment, a Receipt is available for download:
- Go to Subscriptions โ History
- Click the paid invoice's row
- Click View Receipt or Download PDF
The receipt includes:
- Your school name and details
- Invoice number and date
- Payment gateway and transaction ID
- Itemised charges (student/staff usage)
- Total paid
- Currency
Troubleshootingโ
"Invalid payment amount" errorโ
Cause: The invoice amount couldn't be determined. This is rare.
Solution:
- Refresh the page
- Click Pay Now again
- If it persists, contact support with the invoice number
Payment succeeded but invoice still shows "Pending"โ
Cause: The confirmation from your payment provider can take a moment to come back (usually 1โ2 seconds, sometimes up to a minute).
Solution:
- Wait 1-2 minutes
- Refresh the Subscriptions History page
- Status should update to Paid
- If not, contact support with the gateway's transaction reference
Features still locked after successful paymentโ
Cause: Browser cache or session may need refreshing.
Solution:
- Log out completely
- Log back in
- Features should now be accessible
- If still locked, contact support
Didn't receive payment notificationโ
Cause: Email/notification settings may not be configured.
Solution:
- Check Settings โ Notifications
- Ensure school admin email is correct
- Check spam folder for invoice notifications
- For mobile push notifications, ensure the school admin has the mobile app installed
Receipt download fails or shows errorโ
Cause: Cache issue with the receipt template.
Solution:
- Try again after a few seconds
- Try a different browser
- Contact support if the problem persists
Renewal Remindersโ
You'll receive notifications:
- 7 days before expiry โ Reminder to pay upcoming bill
- On expiry day โ Final reminder
- After expiry โ Notification that features are restricted
Configure these in Settings โ Notifications under the Subscription category.
What If I Don't Pay?โ
If your subscription expires without payment:
- Grace period โ Some plans include a few days' grace before features lock
- Restrictions kick in โ Premium features become inaccessible
- Data preserved โ Your school's data remains safe (NOT deleted)
- Resume on payment โ Pay any time to restore full access immediately
For detailed data retention rules, see the Subscription Expiry & Retention Policy.
FAQsโ
Q: Can I pay multiple invoices at once? A: Currently, invoices are paid one at a time. We're exploring bulk payment in a future release.
Q: Can I change my payment method? A: Yes โ when clicking Pay Now, you'll see all configured gateways and can choose any of them.
Q: What if I'm overcharged? A: Contact support immediately with the invoice number. Refunds are handled case-by-case via the original payment gateway.
Q: How do I get a tax invoice or receipt with VAT? A: The default receipt includes basic transaction details. For VAT or tax invoices, contact our billing team.
Q: Can I switch packages mid-subscription? A: Yes โ contact support to upgrade or downgrade. Prorated charges apply.
Q: What if I accidentally paid the same invoice twice? A: Contact support with both transaction IDs. We'll process a refund for the duplicate via the gateway.
Related Documentationโ
- Subscription Expiry & Retention Policy
- School Administrator Guide
- Notification Settings Management
- Payment Gateway Setup (for super admins)
Need Help?โ
For billing questions or issues:
- ๐ง Email: billing@yourschoolsupport.com
- ๐ Phone: Check your subscription contract for billing support contact
- ๐ฌ In-app: Use the support chat from the main menu