Skip to content

Pymble — Solution Design

ARM Configuration

Billing Instruction Mode

Pymble uses Excel import via Family Billing Profile. Billing instructions are built in Excel using data exported from Pymble's data warehouse, then imported into the Family Billing Profile custom record in NetSuite.

Process: 1. Export student and billing data from Pymble's data warehouse 2. Build billing instructions in Excel (items, amounts, discounts per student — including scholarship, year level, indigenous status) 3. Import into the Family Billing Profile custom record in NetSuite 4. Review via the review suitelet before execution

Review Suitelet

A custom review suitelet provides the school with a filtered view before executing billing. Filters include: - Billing status - Student type (indigenous, scholarship, etc.) - Item type (tuition fees, levies, etc.)

The school can review totals per filter combination and drill down to debtor-level detail to see the actual invoice value per family. Once satisfied, the school clicks Submit to generate billing orders.

Transaction Type

Billing Order (Sales Order) — not a standard invoice. All billing is against a billing order. Invoices are generated from the billing order incrementally (e.g., one per term) by clicking "Next Bill" on the billing order.

Key billing order behaviours: - Contains the full year's billing for a family - Term invoices are generated from it on demand - If accidentally closed, it can be reopened by exposing the "Closed" checkbox on the record - Changing invoice units adjusts term/annual amounts automatically

Billing Frequency

Term or Annual — parent's choice: - Term: Fixed term dates, invoiced per term - Annual: Full year billed at once; parents can split across multiple dates (e.g., for bank transaction limits — e.g., $20K on Jan 20 + $20K on Jan 21)

Items

  • Service Items: Tuition fees (by year level), campus levies, building levy (optional), extracurricular fees
  • Discount Items: Scholarship discounts (2.5% annual billing discount available), indigenous student provisions, staff discounts

Parent Payment Suitelet

Parents access the payment suitelet via the My Pymble portal (clicking "Pay Now"). The suitelet displays:

  1. Billing information: Billing title, family code, number of students, all applicable fees and discounts
  2. Credit/debit balance: Any outstanding or credit balance shown upfront
  3. Building levy option: Parent chooses to contribute or not (opt-in/out)
  4. Payment method selection: Bank, Credit card, Direct debit, Edstart, or B Pay
  5. Term or Annual selection: Parent chooses billing frequency
  6. If Annual: parent selects dates and amounts per installment (to accommodate bank limits)
  7. Summary screen: Full review of all choices before confirmation
  8. Confirm & submit → RPS (and invoice if term) created in NetSuite

Once a parent submits, the "Paid from Portal" checkbox is set. If another parent from the same family accesses the suitelet, they see a read-only summary — they cannot submit a different payment setup, preventing duplicates.

Payment Methods

Method Provider Notes
Bank Direct debit / ABA ABA file generated by script, uploaded to bank portal
Credit card eway Fully automated via RPS daily script
Direct debit ABA file Same as bank
Edstart Edstart platform Third-party education fee payment provider
B Pay Australian B Pay system Parent-initiated via B Pay reference

Authentication

SSO via JWT token — parents authenticate through My Pymble's SSO. The portal passes a JWT token to the Feoda payment suitelet. No separate OTP required. The unique URL is generated from the debtor code + sales order (billing order) internal ID.

RPS Amount vs Invoice Amount

The RPS amount may differ from the invoice amount. It can include: - Term invoice amount - Opening/outstanding balance - Building levy contribution

All three may be collected in a single RPS payment and applied across multiple invoices.

Annual Discount

A 2.5% discount is available for parents who choose annual billing. This is configured as a discount item on the billing order.

Process Mapping

Client Process Feoda Standard Process Variation
Excel import via data warehouse ARM Billing Configurator (manual/Excel mode) No automated SIS integration; data warehouse as source
Review suitelet Pre-transaction verification Custom suitelet with filters (billing status, student type, item type)
Billing order generation ARM Transaction Generation Billing orders (sales orders) instead of standard invoices
Term invoicing ARM Transaction Generation Invoices generated incrementally from billing order ("Next Bill")
Parent portal pay button ARM Payment Processing Portal (My Pymble) → SSO JWT → Feoda payment suitelet
Annual billing with date splitting ARM RPS Setup Parents can split annual payment across multiple dates/amounts

Design Decisions

# Decision Rationale
D-001 Billing orders instead of invoices Supports incremental term invoicing from a single annual billing container
D-002 SSO via JWT instead of OTP My Pymble portal manages parent authentication; JWT passed to Feoda suitelet
D-003 Building levy as opt-in School allows parents to choose whether to contribute to the building levy
D-004 Annual payment date splitting Some parents have bank transaction limits; splitting across dates accommodates this
D-005 2.5% annual billing discount School incentivises annual upfront payment