(301) 947-7380
99.987% uptime·0 security breaches·35+ years in education·Built and supported in the U.S.

What we shipped, what we learned, what schools are doing.

Every update from the PCR Educator team.

Posted September 23, 2026
The Sign up Summary CMS widget lists the fees and discounts corresponding to course registrations.  The Sign up Summary widget is found under the Registration option.  Note: These registrations commonly correspond to summer camp sign ups, but may involve any sign ups where the student is registered directly into a course.

Columns 
    - Schedule lists the dates and times the course meets.
    - Amount / Deposit / Total:  Amount is the price less the deposit.  Amount + Deposit = Total. Note: If there is no deposit amount, then the Deposit and Total columns are automatically hidden.

Course Description Page - Optional. This is a link to the page with the course description (Content - Course Page Presenter).  Note: If specified and Show Course Details specifies "Show New Page", a new column will appear in the summary grid for "More Details" which opens this page.

Deposit Product And Type - Optional.  Specify a deposit product and type. The product applies once per year per record type, and is added on top of other charges. To apply a deposit against the total balance instead, refer to the CMS Widget - Deposit article.  Note: A new year is based around the school year closing date.  If they haven’t received this fee since the last closing date, then the fee will be applied.  Note:  This is often used as a one time registration fee.

No Payment Label - Optional.  The text to be shown when there are no records for the summary widget to present,

Show Course Details - Only Show New Page has an effect on this widget.  The other options are only applicable to the CMS Widget  - Course Sign Up (Tree).

Show Waiver Codes - Optional.  This shows a textbox entering waiver codes.  Waiver codes are applicable for discount products that “Requires Waiver Code”.

Use Credit Balance - This allows applying existing credit balances towards sign ups.  Note: Eligible credit balances must be associated with the customer household signing up for the courses.  Note: All eligible credit balances are in the form of unallocated Receipts or Credits. Portions of the credit balance specific to a student can only be applied to that students’ invoices.  Portions of the credit balance without a student specified may be applied to any invoices for the customer.  Note: Only invoices created during the submission will have credits applied.  Ensure that any unallocated receipts and credits have been applied to other unpaid invoices before turning on this setting.  Note: If the user still must pay a balance, the unearned account associated with the payment method is used when applying credits to the invoices.  If no balance is due upon submission, then the unearned account is determined in the following order:  The unearned account associated with the credit card payment configuration if available, otherwise the unearned account associated with the ECheck configuration if available, otherwise no unearned account is specified.  Note: The ledger for the credit balance is based on the ledger associated with the products for the courses.

Note: The CMS Widget - Payment Schedule on the same page lists the installments of the invoice created from this summary.

Posted September 23, 2026
The Deposit CMS Widget allows users to either pay their balance in full, pay a deposit, or pay a custom amount. The deposit collected through this widget is applied toward the total balance due. Note: For fees that should be charged separately and added on top of the total (such as registration fees), use the Deposit Product and Type setting covered in CMS Widget - Sign up Summary.

Enable Deposit Only controls whether the deposit-only payment option is available.

Min Payment Amount allows the user to enter a custom payment amount, as long as it meets the configured minimum. This allows flexibility for partial payments beyond just the standard deposit option.

Pay In Full Text customizes the label for the pay-in-full option.

Deposit Only Text customizes the label for the deposit-only option.

Use the Pay Deposit Only Product to specify a deposit amount. Note: This setting defines a deposit that is independent of the products in the user’s cart. If the deposit amount should vary based on the selected products, you can configure the deposit directly on each product instead.

When the Pay In Full Checked setting is enabled, the Pay in Full option is selected by default.

Note: To show families the installments behind the deposit-only choice, add the CMS Widget - Payment Schedule to the same page. It switches between one payment today and the payment plan as the family changes the selection.

Posted September 23, 2026

PCR Educator now shows families their full payment schedule on course registration checkout pages, before they enter a card. The Payment Schedule widget that lists installments on Application Forms works on registration pages as well, so a family choosing a quarterly or monthly plan sees the amount due today and every date and amount that follows.

What's new

Schedule at checkout. Add the Payment Schedule widget to any registration payment page that carries the Sign up Summary and Summer Submit widgets. It reads the cart total and the Payment Term configured on Summer Submit and lists each installment with its due date.

Same numbers as the invoice. The widget expands the payment term through the same schedule calculation the invoice uses, dated with the same Invoice For Date. Installments that are already due appear as Today. What the page shows and what PCR Educator bills are the same figures.

Follows the family's choice. When the Deposit widget offers Pay in Full and Pay Later, the schedule switches with the family's selection: one payment today, or the installment plan, with no page reload.

Installments as percentages. Turn on Show Percent to add a column with each installment's share of the total, on registration pages and on Application Forms alike.

One widget, both places. Application Form pages keep the schedule they have today, sectioned by ledger and printed on the contract PDF. Registration pages get the same table with the same settings.

Why it matters

A family committing a card to a payment plan expects to see what will be charged and when. Schools that collect the first installment overnight, rather than at submit, can now state the plan on the page instead of in a paragraph of text, and the schedule the family reads is the schedule the invoice carries. Fewer "what will I be charged" questions reach the office, and the parent portal statement matches what the family saw at checkout.

A few ways to talk about it

  • The payment plan is on the checkout page, with dates and amounts, before the card goes in.
  • The schedule comes from the invoice's own payment term, so the page and the bill agree.
  • One Payment Schedule widget serves contracts and registrations.

Available now to all PCR Educator schools. Your account team can walk you through adding the widget to your registration pages whenever you're ready.

Posted September 23, 2026

The Payment Schedule CMS widget lists every payment a family will make, with the due date and amount of each installment. The Payment Schedule widget is found under the Payments option. It is read-only and never changes what is collected at submit.

The widget works in two places.

On an Application Form page, the schedule comes from the contract: the deposit due at signing plus the balance spread across the payment term of each invoice template, sectioned by ledger when a contract bills through more than one book. The same table prints on the contract PDF.

On a registration payment page, the schedule is the invoice that the CMS Widget - Summer Submit widget will post: the total from the CMS Widget - Sign up Summary widget, expanded through the Payment Term configured on Summer Submit and dated with its Invoice For Date. Installments that are already due appear as Today. When a CMS Widget - Deposit widget is on the page, the schedule follows the family's choice: Pay in Full shows one payment today, and Pay Later shows the installment plan.

Show Percent adds a column with each installment's share of the total.

Visibility Source and Visibility Value show the widget only when the referenced drop down or checkbox holds the given value.

Note: On a registration page the widget requires the Sign up Summary and Summer Submit widgets on the same page and a Payment Term on Summer Submit. It hides itself when the cart is empty, when Summer Submit is used for the Online Store, or when the Deposit widget specifies a Pay Deposit Only Product or Deposit Only Fee Product. Support for those configurations will follow.

Note: The schedule is calculated by the same payment term function the invoice uses, so the table matches the invoice that appears in the parent portal after submission.

Posted September 23, 2026

The Summer Submit CMS widget completes a course registration. At submission it enrolls each selected student in the courses chosen, creates the invoices for the registration, collects the payment, and sends the confirmation. The Summer Submit widget is found under the Registration option.

The widget is used together with CMS Widget - Sign up Summary, which lists the courses and fees being registered, and normally with CMS Widget - Deposit and a payment widget such as CMS Widget - Credit Card Payment. One Summer Submit widget is placed on a page.

Autopost Invoice posts the invoices created at submission. Note: A convenience fee invoice is posted on its own when the payment configuration used specifies that convenience fees are posted automatically, whether or not this setting is enabled.

Customer Memo is the memo recorded on the invoices created at submission. It is visible to the family.

Default AR Account is the accounts receivable account used for the invoices. Note: The account is matched to the ledger of the invoice line items.

Default Classification is the classification recorded on the invoice items. Note: When the payment configuration used for the payment specifies a classification, that classification is recorded instead.

Deposit Payment Term is the payment term applied to the separate deposit invoice. Note: When it is not specified, the deposit invoice uses Payment Term.

Internal Memo is the memo recorded on the invoices for staff. It is not shown to the family.

Inventory Error Message is the message shown when the inventory of a selected product cannot be reserved at submission. Note: When it is empty, a general message is shown. In both cases the registration is not submitted.

Invoice Attribute specifies an attribute and comment recorded on each invoice created at submission.

Invoice For Date is the date of the invoices and their items. Note: The date is used only while it is in the future. On or after that date, the invoices are dated the day of submission.

Invoice Thank You Email is the notification template sent for each invoice created at submission.

Navigation Menu specifies the navigation menu of the registration pages. When it is specified, submission produces a PDF of the registration and the family is taken to it before the thank you page.

Payment Configuration Credit Card and Payment Configuration Echeck specify the automatic payment configurations used to process a credit card or eCheck payment. Note: The ledger of the receipt comes from the configuration used.

Payment Term is the payment term applied to the invoices created at submission. It determines the due date and the amount of each installment the school bills. Note: CMS Widget - Payment Schedule lists those installments for the family before the payment is entered.

Pdf File Prefix is the title of the archived registration PDF. When it is empty the title is Summer.

Process In Test Mode sends the payment to the gateway in test mode so that no funds are captured. Note: Turn this setting off before the page is opened to families.

Receipt Invoice Number is the text recorded as the invoice number on the receipt. When it is empty the purchase type is recorded.

Require Payment determines whether a payment is collected at submission. When it is No, the registration is submitted and invoiced with no payment taken.

Save Profile determines when the payment information is saved for future automatic payments. Always saves it at every submission. Deposit Only saves it when the family pays a deposit rather than the full amount. Invoice With Outstanding Balance Only saves it when a balance remains after submission. Note: The payment information is saved only when the payment configuration used specifies a vault.

Submit Action Type is the action recorded on each student registered. Note: The action is recorded for the student's selected academic year.

Thank You Email is the notification template sent when a payment is taken. It is based on the receipt.

Thank You Email No Payment is the notification template sent when no payment is taken. It is based on the household.

Thank You Page Location is the page the family is taken to after submission.

Posted September 18, 2026

PCR Educator now lets schools group discounts and tell the system that only one discount in the group may apply to a purchase. Tiered pricing such as one-week, two-week, three-week, and four-week rates can be entered at face value, in one place, and the highest tier a family qualifies for is the one they receive. Percentage scholarships and sibling discounts outside the group continue to stack on top.

What's new

Product Groups. A new setup page under Finance > Products holds named groups of products. Each group has a behavior. The first behavior, Exclusive, applies only the first qualifying discount in the group and skips the rest.

Order decides the winner. Discounts in a group are ranked by an order you set on the group's Products tab. Put the four-week rate first, the three-week rate second, and so on. A family registering for three weeks receives the three-week discount and nothing lower.

Groups compose with everything else. A discount outside the group, such as a percentage scholarship tied to a student attribute or a per-family sibling discount, stacks on the group's winner exactly as it does today.

Membership from the Products list. Select products, choose the Multi Action "Add Products to Product Group," and pick the group. Each discount's Discount tab shows which groups it belongs to.

Built for more than tiers. Early-bird and regular pricing with different expiration dates can share a group ordered early-bird first, so the better rate wins while it is open and the standard rate takes over afterward.

Why it matters

Summer programs, intensives, and camps price by the week, and families often qualify for several rates at once. With Product Groups the business office enters each rate as a true amount, keeps scholarships stackable, and lets the system choose the single correct tier for every cart. Setup reads the way the price sheet reads.

A few ways to talk about it

  • Enter tier prices at face value. One group, one winner, no arithmetic on the back of an envelope.
  • Scholarships and sibling discounts still stack on top. Only the tiers compete.
  • Order the group the way the price sheet reads, and registration follows it.

Available now to all PCR Educator schools. Your account team can walk you through setting up a tiered discount group whenever you're ready.

Posted September 10, 2026
The CMS Widget - Inquiry Submit is used to submit the inquiry form. It creates a new inquiry record, assigns actions, and sends notifications. The widget can be found within the Admissions group. Please review Adding CMS Widget for more information.

Actions on Submit determines which actions are added to the inquiry record upon the inquiry form submission from a non-admin user such as a parent or an applicant. Note: You can use the Inquiry action and any other actions that your school assigns new inquiry records upon submission.

Admissions Actions On Submit determines which actions are added to the inquiry record upon the inquiry form submission from an admin user. Note: You can use the Inquiry action and any other actions that your school assigns new inquiry records upon submission by an admin.

Auto Log Out User logs out the user upon inquiry form submission. Note: This setting is applicable when a third-party entity, such as an agent, inquires for multiple applicants.

Copy Household Email To Inquiry copies the household email to the inquiry record.

Add Email To Inquiry email template is used to notify the admissions team when a new inquiry is submitted.

Add Email to New User email template is designed to communicate the password link to new users. Note: This template must include the ResetPasswordLink merge field and the Reset Password Page setting must be specified.

Users are sent to the Reset Password Page when they click on the reset password link in the New User Email. Note: The Reset Password Page must be set to a public CMS Page that has a CMS Widget - Reset Password.

Add Email to User email template is designed to confirm the submission when the password link is not applicable. Note: This template must not include the ResetPasswordLink merge field.

Error Duplicate Student Call School field allows you to specify a custom error message if the user already has an applicant or student record in the system.

Error Email Call School field allows you to specify a custom error message if the user email is already associated with an existing household or user. Note: To resolve this error, you can provide the username to the applicant (if applicable) or associate their household record with a new user.

Error Email Format field allows you to specify a custom error message if the user email format is invalid.

Error Email In Use field allows you to specify a custom error message if the email matches an existing username. Note: To resolve this error, you can include a link in the error message to reset the password.

Hide If Not Admissions Office hides the inquiry submit widget if the form is being completed by a non-admin user. Note: This setting is applicable if you want to use a separate submit button for the admissions team to add an inquiry record.

Redirect To Return Url returns the user to the page they started on after the inquiry form is submitted, instead of sending them to the Thank You Page Location. Note: This setting applies only when the inquiry form is opened with a return address attached to its link, which happens when a user is sent to a login page from a page that requires login and then follows a link to the inquiry form. When the form is opened directly there is no return address, and the user is sent to the Thank You Page Location as usual. Review CMS Widget - Button for the Forward Return Url setting that passes the return address from a login page to the inquiry form.

Skip Demographic Duplicate Check prevents Inquiry Duplication Check.

Skip User Creation And Duplicate Check prevents Admissions Duplicate Check - User Not Logged In.

Start With New Line adds a line break before the Inquiry Submit control.

Thank You Page Location is the CMS Page the user is sent to after the inquiry form is submitted successfully. Note: When this setting is left empty, the inquiry form reloads and clears itself so that another applicant can be entered.
Posted September 10, 2026

The CMS Widget - Actions records a student action from a portal page and, when configured, collects typed attribute values alongside it. The widget can be found within the Student Details group. Please review Adding CMS Widget for more information. To limit the visibility of this widget, review CMS - Conditional Logic.

Action Types determines which student actions the page may record. When a single action type is selected, the type selector is hidden and every entry is recorded as that action.

Attributes determines which student action attributes are collected with the action. Each selected attribute renders the input that its data type calls for, so an Integer attribute is entered as a number, a Date attribute through a calendar, a Boolean attribute as a checkbox, and an attribute driven by a lookup list as a drop-down. Attributes are defined in Campus under Administrator, Maintenance, Student Action Attributes, and they appear in the order set on that page. Note: the list below the entry form carries an Attributes column that stays hidden until it is enabled through Columns.

Add Confirmation Email sends an email when an action is recorded. The emails are configured in Admin, Students, Email screen.

Delete Access Type controls who may remove a recorded action. Access Restricted To Modifier allows a user to remove only the entries that the same user recorded. Full Access allows any entry to be removed. No Access hides the delete option.

Hide Comment removes the comment box from the entry form.

Hide Date removes the date field. The action is then dated with the current date.

Hide File removes the file upload from the entry form.

Is Edit Disabled renders the widget as a read only list, with no entry form.

Is File Upload Required requires a file before the action may be saved.

School Division limits the widget to a single division.

Year determines which academic year the recorded action belongs to.

Example: a school that collects community service hours defines Activity, Hours and Description as student action attributes, then places this widget on a portal page with Action Types set to the service action and those three attributes selected. A student records each activity through the year, and the hours report in the Data Analytics Tool as their own value rather than as text inside a comment.

Posted September 10, 2026

The CMS Widget - Button is a button that saves the CMS Page it is placed on and then sends the user to another page. It can also be configured to send the user to another page without saving. The widget can be found within the Content group. Please review Adding CMS Widget for more information.

Note: The button hides itself on a CMS Page that already holds a submit widget, such as CMS Widget - Inquiry Submit, so that only one control on a page saves the page and moves the user forward.

Label is the text shown on the button.

Behavior determines what the button does when the user clicks it.

- Save With Redirect Link saves the page and sends the user to the Save Redirect Page.
- Save And Next saves the page and sends the user to the next page in the Navigation Source menu.
- Save And Next Incomplete saves the page and sends the user to the next page in the Navigation Source menu that the user has not completed yet.
- Save And Previous saves the page and sends the user to the previous page in the Navigation Source menu.
- Redirect does not save the page. The widget renders as a link to the Save Redirect Page. Note: This option opens the page in a new browser tab.

Navigation Source is the CMS Widget - Menu whose pages the button moves through. It is required for the Save And Next, Save And Next Incomplete, and Save And Previous behaviors. Note: When the menu tracks completion and there is no further page to move to, the button hides itself.

Save Redirect Page is the CMS Page the user is sent to by the Save With Redirect Link and Redirect behaviors.

Forward Return Url carries the return address held by the current page over to the Save Redirect Page, so that the page being opened can send the user back to where they originally started. Note: A page holds a return address when the user was sent to it from a page that requires login. Use this setting on a button that offers account creation from a login page, together with Redirect To Return Url on the CMS Widget - Inquiry Submit, so that a user who creates an account lands back on the page they were trying to reach.

Skip Saving sends the user to the next page without saving any of the widgets on the current page.

Allow Saving With Missing Requirements saves the page even when required fields have been left empty.

Enabled determines whether the user can click the button.

Start With New Line places the button on its own line instead of alongside the control before it.

Posted September 10, 2026

The CMS Widget - Shopping Cart Summary lists the products a user has placed in their cart, totals the order, and gives the user a way to keep shopping or to check out. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

Ledger determines which ledger the cart belongs to. Only products that belong to this ledger appear in the summary.

Columns determines which columns appear in the cart, the heading shown for each one, and the screen size below which each one is hidden.

Product Detail Page is the CMS Page the user is sent to when they click a product in the cart.

Check Out Page is the CMS Page the user is sent to when they click Check Out. Note: The Check Out button is hidden while this setting is empty.

Continue Shopping Page is the CMS Page the user is sent to when they click Continue Shopping. Note: The Continue Shopping button is hidden while this setting is empty.

Preserve Selection sends a user who is not signed in to the login page of the Check Out Page when they click Check Out, and returns them to the page they were viewing once they sign in or create an account. Note: The login page is taken from the Unauthenticated Url of the Check Out Page, so that page must have one. Review CMS Page Details for the Unauthenticated Url setting. Without this setting the user is sent to the check out page first, is asked to sign in there, and arrives back at check out with an empty cart. To let a user create an account and still return to the product they were viewing, also set Forward Return Url on the CMS Widget - Button that offers account creation, and Redirect To Return Url on the CMS Widget - Inquiry Submit that creates it.

Max Quantity is the highest quantity a user can select for a product in the cart.

Empty Cart Text is the message shown when there is nothing in the cart.

Enhanced Description shows the product name as a heading that links to the Product Detail Page, instead of as plain text.

Ignore Inventory lets a user keep products in the cart that are no longer in stock. Note: When this setting is No, the cart warns the user and blocks check out for a product whose stock has run out since it was added to the cart.

Show Available Balance applies the balance the family already carries to the order total. Choose Household to use the household balance, or Student to use the student balance. Note: A credit reduces the order total and is shown as Available Balance. An amount the family still owes is added to the order total and is shown as Additional Balance Due.

Show Coupon Code shows a field where the user can enter a promotion code.

Add Promotion Code Text is the label shown above the promotion code field.

Shipping Fee Product is the product used to charge shipping on the order. The price of that product is charged once per order. Note: Shipping is not charged when the user selects Pickup as the delivery method.

Sale Tax Product is the product whose price is used as the sales tax rate for the order. Note: The price is the rate itself, so a product priced at 0.06 charges six percent.

Tax On Shipping Enabled includes the shipping fee in the amount that sales tax is calculated on.

Convenience Fee Label is the label shown for the convenience fee on the order total. Note: When this setting is empty, the label reads Convenience Fee.

Posted September 10, 2026

The CMS Widget - Added to Cart confirms the product a user has just placed in their cart and gives the user a way to check out. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

Note: The widget stays hidden until the user adds a product to the cart, so a page built around it shows nothing on a first visit.

Ledger determines which ledger the cart belongs to. Only products that belong to this ledger are counted.

Product Detail Page is the CMS Page the user is sent to when they click the product.

Check Out Page is the CMS Page the user is sent to when they click Check Out. Note: The Check Out button is hidden while this setting is empty.

Preserve Selection sends a user who is not signed in to the login page of the Check Out Page when they click Check Out, and returns them to the page they were viewing once they sign in or create an account. Note: The login page is taken from the Unauthenticated Url of the Check Out Page, so that page must have one. Review CMS Page Details for the Unauthenticated Url setting. Without this setting the user is sent to the check out page first, is asked to sign in there, and arrives back at check out with an empty cart.

Posted September 10, 2026

The CMS Widget - Product Inventory lists the products a school offers for sale as a grid of tiles. Each tile represents a product category and shows its image, its name, and the price or price range of the products inside it. Selecting a tile opens the product. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

The widget is normally used together with CMS Widget - Product Inventory Filter, which narrows the list, and the page it opens carries CMS Widget - Product Selector. One Product Inventory widget is placed on a page.

Ledger determines which ledger the products are drawn from. Only products that belong to this ledger are listed.

Product Category Attributes limits the list to the product categories carrying the attributes selected here. Note: When nothing is selected, every product category in the ledger is listed. Review Product Category for setting up categories and their attributes.

Product Detail Page is the CMS Page a tile opens. The product is carried across to that page, so the page opens on the tile the user selected. Note: When this setting is empty the tiles are not clickable.

No Results Text is the message shown when no product matches the current filter. Note: When this setting is empty the message reads No data was returned.

Posted September 10, 2026

The CMS Widget - Product Inventory Filter shows the product attributes as filter options so that a user can narrow the list of products. The options are grouped by attribute category, and selecting one reloads the page showing only the products that carry it. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

The widget is placed on the same CMS Page as CMS Widget - Product Inventory, which is the list it filters. One Product Inventory Filter widget is placed on a page.

Ledger determines which ledger the products are drawn from. The filter offers only the attributes carried by products in this ledger.

Product Attributes limits the filter to the attributes selected here. Note: When nothing is selected, every attribute carried by the products in the ledger is offered.

Filter By Text is the heading shown above the filter options.

Min Number Of Options For Dropdown is the number of options at which an attribute category is shown as a dropdown instead of a list of checkboxes. A category offering fewer options than this stays a list of checkboxes. Note: When this setting is zero or empty, every category is shown as checkboxes. The dropdown carries an Any entry at the top so that the user can clear that category.

Posted September 10, 2026

The CMS Widget - Product Selector is the buying panel on a product page. It shows the price, offers the attributes the buyer chooses between, such as size or age group, offers the date when the product is sold by date, and adds the product to the cart. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

The widget is placed on the CMS Page opened by CMS Widget - Product Inventory, normally alongside CMS Widget - Product Preview and CMS Widget - Product Description. One Product Selector widget is placed on a page.

Note: When the product is set up with a student or applicant filter, the widget first asks which child the purchase is for, and the Add to Cart button stays hidden until one is chosen. When the product is sold by date, the widget shows the available dates with the number of seats left on each.

Ledger determines which ledger the product is drawn from.

Add To Cart Redirect Page is the CMS Page the user is sent to after adding the product to the cart. Note: When this setting is empty the user stays on the product page, which lets the buyer keep adding without leaving the page.

Max Quantity is the highest quantity the user can add at once. Note: The quantity offered is also limited by the stock on hand, so the user is never offered more than is available.

Out Of Stock Text is the message shown in place of the Add to Cart button when the product has no stock left.

Auto Select Single Option Attributes hides an attribute category that offers only one option across the whole product family and selects that option automatically, so that the buyer is shown only the attributes that actually vary. Note: Turn this setting off to show every attribute category, including those with a single option. A category whose single option is missing from some of the products is always shown, because it remains a real choice.

Posted September 10, 2026

The CMS Widget - Product Description shows the description of the product the user is viewing, as it was entered on the product record. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

The widget is placed on the CMS Page opened by CMS Widget - Product Inventory, alongside CMS Widget - Product Selector. One Product Description widget is placed on a page. It has no settings of its own beyond the standard widget properties. Review Product for entering the description that this widget shows.

Note: The widget shows nothing when the attributes the user has chosen do not resolve to a single product, so that a description is never shown against the wrong product.

Posted September 10, 2026

The CMS Widget - Product Preview shows the images of the product the user is viewing. The first image is shown at full size and the rest are shown as thumbnails beneath it. Selecting a thumbnail replaces the full size image. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

The widget is placed on the CMS Page opened by CMS Widget - Product Inventory, alongside CMS Widget - Product Selector. One Product Preview widget is placed on a page. It has no settings of its own beyond the standard widget properties. Review Product for uploading the images that this widget shows.

Note: A placeholder image is shown when the product has no images uploaded.

Posted September 10, 2026

The CMS Widget - Delivery lets the buyer say whether the order is collected or shipped, and collects the shipping address when it is shipped. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

The widget is placed on the check out page alongside CMS Widget - Shopping Cart Summary, which it tells whether to charge the shipping fee. One Delivery widget is placed on a page.

Show Delivery Method Selector shows the Pickup and Shipping choice to the buyer. Note: When this setting is off the buyer is not asked, and the order uses Default Delivery Method. The choice is also hidden when the cart holds nothing for the ledger of the cart summary.

Default Delivery Method is the method selected when the page opens, and the method used for the order when the choice is not shown. Note: The address fields appear only for Shipping. Choosing Pickup removes the shipping fee from the order total.

Posted September 10, 2026

The CMS Widget - Online Store Submit completes an online store purchase. At submission it creates the invoice for the order, collects the payment, and sends the receipt. The widget can be found within the Online Store group. Please review Adding CMS Widget for more information.

The widget is placed on the check out page together with CMS Widget - Shopping Cart Summary, which lists the order, normally with CMS Widget - Delivery and a payment widget such as CMS Widget - Credit Card Payment. One Online Store Submit widget is placed on a page.

Autopost Invoice posts the invoice created at submission. Note: A convenience fee invoice is posted on its own when the payment configuration used specifies that convenience fees are posted automatically, whether or not this setting is enabled.

Convenience Fee determines how the convenience fee is recorded. Invoice records it as an invoice of its own. Line Item adds it to the order invoice as another line. Note: The fee itself is set up on the payment configuration, not here. Review Auto-Pay Configuration (Finance) for configuring it.

Customer Memo is the memo recorded on the invoice created at submission. It is visible to the family.

Default AR Account is the accounts receivable account used for the invoice. Note: The account is matched to the ledger of the invoice line items.

Internal Memo is the memo recorded on the invoice for staff. It is not shown to the family.

Invoice Attribute specifies an attribute and comment recorded on the invoice created at submission.

Invoice Thank You Email is the notification template sent for the invoice created at submission.

Payment Configuration Credit Card and Payment Configuration Echeck specify the automatic payment configurations used to process a credit card or eCheck payment. Note: The ledger of the receipt comes from the configuration used.

Payment Term is the payment term applied to the invoice created at submission. It determines the due date and the amount of each installment the school bills.

Process In Test Mode sends the payment to the gateway in test mode so that no funds are captured. Note: Turn this setting off before the page is opened to families.

Receipt Invoice Number is the text recorded as the invoice number on the receipt. When it is empty the purchase type is recorded.

Thank You Page Location is the page the family is taken to after submission.

Posted September 08, 2026

Student actions now carry structured fields. A student action can hold a number, a date, a checkbox, a link, or a value picked from a list, and each of those fields reports as its own column.

Student Action Attribute is a named field attached to a student action rather than to the student record. The attribute is defined once for the school and then recorded on individual actions, in the same way attributes already work for students, households, inquiries and staff.

Defining attributes

Requires the Admin Full role.

  • Navigate to Administrator > Maintenance > Student Action Attributes.
  • Enter a name under Category and click Add Category. A category groups related fields, for example Service Hours or Athletics.
  • Select the category, enter a name under Attribute, and click Add Attribute.
  • Set the Data Type. The choices are Text, Integer, Date, Boolean and Hyperlink.
  • For a Text attribute, set a Lookup Type when the value should come from a list rather than free typing.
  • Click Reorder Attribtues to drag the fields into the order staff and students should see them.

Note: attributes are defined for the school as a whole and are available on any student action. Limit which fields appear on a portal page through the widget settings described below.

Recording attributes in Campus

Requires the Actions Read role to view and the Actions Full role to edit.

  • Open the student and go to Actions.
  • Click Attributes on the action row.
  • Choose the category and the attribute, enter the value, and click Add New.

Collecting attributes in the portal

  • Add the Actions widget to a page from the Student Details group.
  • Set Action Types to the action the page collects.
  • Set Attributes to the fields the page should collect. The widget renders each one with the input its data type calls for, so an Integer attribute gets a number box and a Date attribute gets a calendar.
  • To show recorded values in the list underneath, enable the Attributes column under Columns.

Values entered by a student save with the action in a single step.

Reporting

Student action attributes are available in the Data Analytics Tool as Student Action Attributes, joined to Actions and to the attribute definitions. Each attribute reports as its own value, and the comment field is free to hold narrative again.

Examples

Example: a school that requires community service defines a Service Hours category with Activity as Text, Hours as Integer and Description as Text. Students record each activity through the portal across the year. The registrar reports total hours by student, by grade level and by year, and produces a transfer letter listing every activity with its hours.

Example: an athletics department defines Sport and Season as Text attributes driven by lookup lists, and Varsity as Boolean. Participation reports then group cleanly by sport and season.

Example: a counselor defines Follow Up Date as Date and Referral Made as Boolean on a counseling action, and pulls a list of students whose follow-up date has passed.

Posted September 01, 2026

Attribute Module is the type of record that an attribute can be attached to. An attribute is one mechanism reused across the system rather than a feature of any single record, so the same category and attribute definitions, the same data types, and the same way of recording a value apply whether the attribute sits on a student, a household, a donation or an action.

Every module works the same way. An administrator defines a Category and then the Attributes inside it, each with a Data Type of Text, Integer, Date, Boolean or Hyperlink, and optionally a Lookup Type so the value is chosen from a list. A user then records a value on an individual record. Please review Attribute, Attribute Category, Creating Attribute and Recording Attribute - Individual for the shared steps.

The order fields appear in follows the category order first and the attribute order inside it, both set with the Reorder buttons on the setup page.

Where attributes are defined

ModuleSetup pageRole
StudentsAdministrator > Maintenance > Student AttributesAdmin Full
Student ActionsAdministrator > Maintenance > Student Action AttributesAdmin Full
HouseholdsAdministrator > Maintenance > Household AttributesAdmin Full
StaffAdministrator > Maintenance > Staff AttributesAdmin Full
Dorm RoomsAdministrator > Maintenance > Dorm Room AttributesDBA Full
ContactsDevelopment > Maintenance > Contact AttributesDevelopment Full
DonationsDevelopment > Maintenance > Donation AttributesDevelopment Full
AsksDevelopment > Maintenance > Ask AttributesDevelopment Full
ProductsFinance > Maintenance > Product AttributesFinance Full
Product CategoriesFinance > Maintenance > Product Category AttributesFinance Full
Fixed AssetsFinance > Maintenance > Fixed Asset AttributesFinance Full
Vendor InvoicesFinance > Maintenance > Vendor Invoice AttributesFinance Full

Note: attributes for inquiries, inquiry actions and event categories are defined from Admissions, Administrative Settings.

Where attributes are recorded

ModuleRecorded on
StudentsStudents > Details > Attributes
Student ActionsStudents > Details > Actions, then Attributes on the action row
HouseholdsHouseholds > Details > Attributes
StaffStaff > Details > Attributes
Dorm RoomsDorm Rooms > Attributes
ContactsDevelopment > Donor Details > Attributes
DonationsDevelopment > Giving > Attributes
AsksDevelopment > Ask Details > Attributes
Fixed AssetsFinance > Fixed Asset Details > Attributes
Event CategoriesAdmissions > Administrative Settings > Event Category > Attributes

Attributes on an action

An action is a record in its own right, so it carries attributes the same way a student does. The difference is what the value describes: an attribute on a student describes the student and holds one value at a time, while an attribute on an action describes that one event, so a student may hold as many values as there are actions. A school recording community service enters the activity, the hours and a description on each action rather than on the student. Please review Student Action for the fields an action carries, and CMS Widget - Actions for collecting the values through a portal page.

Note: attributes are defined for the school as a whole and are offered on every action. A portal page limits which of them a student sees through the widget settings.

Posted August 25, 2026
Follow the steps for Importing Data for Existing Records.

Staff records hold employment information. This import updates employment fields on existing staff records. Identify each row by one of the following: Teacher_Id, Lookup_Teacher_Id, the combination of Lookup_Teacher_First_Name and Lookup_Teacher_Last_Name, or Lookup_Alternate_Teacher_Id. Each row must match exactly one staff record. Only the columns included in the file are updated.

Field Required Type Sample Values Notes
Teacher_Id Yes if no lookup field is specified Identifier "1234" Staff ID of the record to update.
Lookup_Teacher_Id Yes if Teacher_Id and the other lookup fields are not specified Lookup "1234" Staff ID.
Lookup_Teacher_First_Name Yes together with Lookup_Teacher_Last_Name when names identify the record Lookup "Tina" The first and last name together must match exactly one staff record.
Lookup_Teacher_Last_Name Yes together with Lookup_Teacher_First_Name when names identify the record Lookup "Smith"  
Lookup_Alternate_Teacher_Id Yes if Teacher_Id and the other lookup fields are not specified Lookup "A1b3"  
Teacher_Office Yes, if this field needs to be updated Text "US01"  
Teacher_Active Yes, if this field needs to be updated Boolean "1"  
Alternate_Teacher_Id Yes, if this field needs to be updated Text "A1b3"  
Employment_Status Yes, if this field needs to be updated Datasource Data "Full Time" Admin > Staff > Details - Employment Status
Lunch_Table Yes, if this field needs to be updated Datasource Data "Table A" Admin > Staff > Details - Lunch Table
Hired_Date Yes, if this field needs to be updated Date "2021/12/31"  
Phone_Number Yes, if this field needs to be updated Text "(123)-456-7890"  
Teacher_Url Yes, if this field needs to be updated Text "https://school.org/staff/jsmith"  

A staff member's name, preferred name, sex, and ethnicity live on the household contact record and are updated with Importing Data for Existing Records - Households.
Posted August 20, 2026

Schools can now pause a family's stored payment so PCR Educator stops charging it automatically, and resume it when the family is ready. The nightly automatic payment run, account top-ups and recurring pledge payments all skip a paused stored payment, whichever payment processor the school uses.

Key capabilities

Pause and resume from Campus. A Pause action sits on each stored payment in the customer's Auto-Pay information. The status and the reason appear alongside it, so anyone looking at the account can see why automatic payments stopped and who stopped them.

Optional self-service for families. Schools that want families to manage this themselves can turn on a Pause option in the parent portal. It stays off until the school enables it, because many schools prefer that conversation to go through the office.

Automatic pause after a returned payment. For schools processing through Authorize.net, a returned eCheck pauses the family's stored payment on its own, so an account that has already failed is not charged again.

A pause never blocks a family who wants to pay. Automatic charging stops, while the family can still choose that stored payment and pay whenever they like.

A hold stays until it is lifted. A pause set by a person remains in place even if the family updates their card or bank details, and only an explicit resume restores automatic payments. A pause that followed a returned payment still clears when the family saves new payment information, because that is the fix for it.

Why it matters

A family between jobs, a disputed charge, a payment plan under review: each is a reason to stop charging one account for a while. Pausing holds the arrangement in place, keeps the reason on the record, and leaves the family's enrollment and stored payment intact for when they are ready to resume. The automatic payment run also reports who was skipped and why, so a paused family is explained rather than a quiet gap in the run.

A few ways to talk about it

  • Pause one family's automatic payments without deleting their stored payment or their enrollment.
  • Honored wherever PCR Educator charges automatically, whatever the payment processor.
  • Families can manage it themselves when the school turns that option on.

Available now to all PCR Educator schools. Your account team can walk you through the settings whenever you're ready.

Posted August 19, 2026
In order to configure Stored Payment Info in CMS Portal, please follow these steps:

- Navigate to the page where you would like parents to sign up for Stored Payment Info or create a new page
- Add “Household Auto Billing” widget to the page.  It is found within the “Payments” category.
- Specify settings such as “Allow Banking”, “Allow Credit Card”, “Allow Update”, etc.
- If you want families to pause and resume their own automatic payments, check “Allow Family Pause”.  This setting is off by default.  When it is on, families see a Pause Automatic Payments button alongside their stored payment.  Pausing stops automatic charging only, and the family can still pay whenever they choose.  See Paused Stored Payment.
- Ensure that the “Is Live” setting is checked.
- Specify Payment Configuration (see Auto-Pay Configuration (Finance)) and Vault Type (Stored Payment Type)
- Click Save.

Users should then be able to sign up for auto-pay.

Note: You may consider creating different Stored Payment Info pages for various kinds of invoices such as for tuition invoices as opposed to summer/activity invoices. 
Posted August 19, 2026
1. Navigate to Finance > AR > Customer Receipts and find the original customer receipt.
2. Go to Details.
3. Select Void NSF.  
4. If you want to charge additional fees: 
    - Enter Bank Fee if applicable.  This section can be populated if your payment processor or bank charges a fee for the returned payments.  This process will result in a Journal Entry that credits xxx and debits … .
    - Click Next to enter a finance charge that you want the customer to pay the school for the returned payment.
5.  Click Next to void the customer receipt.

This process will:

1. Generate a journal entry for the fee the school needs to pay the payment processor. 
2. Generate a customer invoice for the fee the school charges the customer.
3. Void the receipt.  
 
Processing returned payments automatically
If your school uses Authorize.net, PCR Educator can run this entire process for you when it detects a returned eCheck. Set NSF Automation on the auto-pay configuration. See Configuring Settlement and Return Handling.
 
When a return is detected, PCR Educator voids the original receipt as of the date the bank returned it, marks the receipt as NSF, associates the void with a deposit dated the same day, and creates the fee invoice from your invoice template using your fee product. In Create and Post mode it also posts the fee invoice. Every step is recorded on the Gateway page of the receipt, so you can see exactly what was done and when. See Gateway Status.
 
The original invoice and the original receipt amount are never changed. All corrections are added as new records, which is the same principle the manual process follows.
 
The bank fee journal entry is not automated. If your bank or processor charges you a fee for the return, record it using the Bank Fee step above, or as a journal entry.
 
When the automation stops and leaves the item for you
The automation is deliberately cautious. It processes only returns for insufficient funds and uncollected funds, which are return codes R01 and R09. Every other return code is left for a person, including returns where the account holder states the debit was not authorized. Those returns often need a conversation with the family rather than another fee.
 
It also stops, and leaves the receipt on your list to handle by hand, when the receipt is not posted, when the receipt has already been voided, when the invoice template or fee product is incomplete, or when the void cannot be validated, for example because the period is closed. The reason is recorded on the Gateway page of the receipt.
 
To find returned payments waiting for attention, search the receipts list on Gateway Status equals Returned, and check include all so voided receipts are included.
 
Posted August 19, 2026
1. Make sure that the settlement time matches the selected settlement time for deposits in your Payment Processor.  Settlement time can be specified in your payment configuration.  See Configuring Payment Configuration for more information.
2.. Update your Auto-Pay Configuration (Finance) to manage undeposited eCheck receipts.  See Configuring Payment Configuration for eCheck Receipts for more information. 
3. Navigate to AR > Receipts and search for receipts that are associated with the undeposited eCheck deposit.  Select the receipts that have been settled by your payment Processor and go to the multi-action > Update Deposits screen.  Select a “New Deposit” from the dropdown.  Enter a deposit description and date (of when these receipts are settled) and click save.
4. Check the deposited checkbox on the deposit details. The deposited indicator identifies that the receipts were deposited. Note: if you do not check the deposited indicator, the system will automatically check it for you when you post your deposit.
5. Post your deposit.  
 
Reconciling automatically
If your school uses Authorize.net, PCR Educator can perform step 3 for you. Set Deposit Reconciliation to Auto on the auto-pay configuration used for eCheck payments. See Configuring Settlement and Return Handling.
 
Each night, PCR Educator reads the settled batches from your payment processor and identifies the receipts in each batch. For every batch that contains settled eCheck receipts, it creates a deposit described with the processor and the settlement batch, dated the settlement date, moves those receipts onto it, and marks it as deposited. Receipts that have not settled stay where they are and move on a later night, when their own batch settles.
 
You still review and post the deposit. The automation does not post anything to your general ledger.
 
Note: Only receipts that are not yet posted, are not already on a deposit for that batch, and are not financial aid receipts are moved. Anything the automation does not move stays visible on the receipts list, where you can filter on Gateway Status and Gateway Batch to see what settled and when. See Gateway Status.
 
Canadian pre-authorized debits (Stripe):  PAD debits are accepted immediately and settle in roughly 3 to 5 business days. A debit can still fail after acceptance, for example for insufficient funds or a closed account. PCR Educator is notified automatically when this happens and coordinates the receipt reversal with your business office, following the same procedure used for returned eChecks. Failed payments are also visible in your Stripe dashboard.
 
Posted August 19, 2026
After a receipt is voided, if it was created by auto-pay (for payments created after 6/18/24), you can associate it with a deposit on the date of the void for the same payment processor.

Features:
  1. Void Count and Net Deposit Columns: The deposit list now includes two new columns:
    • Void Count: Displays the number of voided receipts associated with the deposit.
    • Net Deposit: Shows the net amount of the deposit after accounting for voided receipts.
  2. Associated Voids Dashboard Element: You can include an Associated Voids dashboard element to view voided receipts linked to the deposit. This element provides a clear and organized view of all voided receipts, enhancing transparency and ease of tracking.
Steps to Handle Voided Receipts
  1. Void a Receipt:
    • If a receipt needs to be voided, follow the standard procedure to void the receipt.
    • Note: This functionality applies to auto-pay receipts created since the 6/18 release.
  2. Associate with a Deposit:
    • Once a receipt is voided, it can be associated with a deposit on the date of the void, provided it is for the same payment processor.
    • This ensures that the voided receipt is accurately reflected in the deposit records.
  3. Review Deposits:
    • Navigate to the deposit list to review the updated columns:
      • Void Count: Verify the number of voided receipts for each deposit.
      • Net Deposit: Check the net deposit amount after void adjustments.
    • Add the Associated Voids dashboard element to your view. This will display all voided receipts connected to the deposit, making it easier to manage and reconcile your records.

When NSF Automation is turned on for an auto-pay configuration, PCR Educator creates this void deposit association for you as soon as it detects a returned payment, so the steps above are already done. See Configuring Settlement and Return Handling.

Posted August 19, 2026

Roles required: FinanceAR Full or FinanceAR Read. This is the same access already needed to view customer receipts, so no additional role is needed for the gateway information described here.

Gateway Status is the record of what your payment processor did with a customer payment after the payment was accepted. A card or eCheck payment that succeeds at the moment of charge has not yet reached your bank. It settles in a batch later, and an eCheck can still be returned by the account holder's bank days after that. Gateway Status follows each payment through those stages and records the result on the receipt.

PCR Educator records Gateway Status for payments processed through Authorize.net and Stripe. For Authorize.net, a nightly process reads settlement results back from the processor. For Stripe, the processor notifies PCR Educator when a payment fails after acceptance.

Statuses

Pending. The payment was accepted by the processor and has not settled yet. Card payments normally settle the same night. eCheck payments normally settle in one to four banking days.

Settled. The payment settled in a processor batch. The settlement date and batch reference are recorded on the receipt.

Returned. The bank returned the payment after it settled, for example for insufficient funds or a closed account. The return code and the date of the return are recorded.

Failed. The processor rejected the payment.

Held for Review. The processor is holding the payment for fraud review.

Voided and Refunded. The payment was voided or refunded at the processor.

Unknown. The processor reported a status PCR Educator does not recognize. Treat these as items to review by hand.

Seeing gateway information on the receipts list

Navigate to Finance > AR > Receipts. Four columns are available and hidden by default: Gateway Status, Gateway Settlement Date, Gateway Batch and Gateway Return Code. Click the settings icon above the grid, check the columns you want, and click Apply. Your selection is remembered for your user.

The same four fields are available in the search bar, so you can filter the list on them and save the search.

Note: A receipt that has been voided does not appear in the list unless you check include all. When you search for returned payments that have already been processed, check that box, or the list will look empty.

Seeing the full history for one receipt

Open a receipt from the list, then choose Gateway from the receipt menu. The page shows the current gateway values for the receipt, including the transaction id, batch reference, settlement date, return code and description, and when the status was last checked.

Below that, Gateway Events lists everything that happened to the payment in order, with the date, the source of the event, and a description. A returned eCheck that was processed automatically shows the return itself, the stored payment being paused, and the automated returned payment routine, each as its own entry.

The Gateway page does not appear for receipts that were not processed through a payment gateway, and it shows a short message for receipts recorded before this feature was released.

Using gateway information in notifications

Because the four gateway fields are standard search fields on customer receipts, they can be used in notification triggers. A common setup is to alert the business office when a payment has not settled after a set number of days, or when any payment is returned. See Creating Notification Trigger for how to build the trigger.

Posted August 19, 2026

Roles required: FinanceAR Full or Contract Full. This is the same access already needed to edit auto-pay configurations, so no additional role is needed for these settings.

Settlement and return handling is configured on each auto-pay configuration, so a school can treat tuition differently from donations. Navigate to Finance > Maintenance > Auto-Pay Configurations and edit a configuration. The settings appear only for configurations that use Authorize.net, because they depend on settlement results that only Authorize.net reports back.

All settings are off when the feature is released. Nothing changes for your school until you turn them on.

Before you begin

Use a separate auto-pay configuration for eCheck payments. The receipt method recorded on a receipt comes from the auto-pay configuration, not from the card or bank account actually used. The deposit automation looks for eCheck receipts, so a configuration labeled for credit cards that is used to take eChecks will not reconcile. See Configuring Payment Configuration.

Prepare an invoice template for the returned payment fee, with an accounts receivable account and a payment term.

Prepare a fee product for the returned payment fee, with a revenue account and a sale price greater than zero.

Prepare an email template for the message to the family, using the Customer Receipt entity and the email method.

Settings

Deposit Reconciliation. Off or Auto. When set to Auto, settled eCheck receipts are moved onto a deposit that matches the processor's settlement batch, and the deposit is marked as deposited. See Reconciling eCheck Deposits with Payment Processor.

NSF Automation. Off, Create Unposted, or Create and Post. When turned on, a returned payment is processed automatically the same way the Void NSF screen processes it by hand. Create Unposted leaves the fee invoice unposted so somebody reviews it first. Create and Post posts the fee invoice as well. Start with Create Unposted. See Voiding Returned Customer Payment.

NSF Invoice Template. The invoice template used for the fee invoice. The template supplies the accounts receivable account, the payment term, the classification and the memos.

NSF Fee Product. The product charged to the family for the returned payment. The product's sale price is the fee amount, so there is no separate amount to enter here. Changing the product's sale price changes the fee charged on future returns.

Family Return Email Template. The message sent to the family when a payment is returned, asking them to update their payment information. Leave this empty if you do not want the family notified automatically.

Pause Autopay on NSF. When checked, a returned payment pauses that family's stored payment so the next automatic run does not charge an account that has already failed. See Paused Stored Payment.

Note: If you set NSF Automation to a value other than Off without choosing both an invoice template and a fee product, the save is refused with a message and these settings are left unchanged. The rest of the auto-pay configuration still saves normally.

Recommended rollout

Turn on nothing at first and watch the gateway statuses appear on the receipts list for a week. Add Deposit Reconciliation next, because it is additive and easy to check against your bank. Add NSF Automation in Create Unposted mode last, and review the first several fee invoices before switching to Create and Post.

Posted August 19, 2026

Roles required: Stored Payment. This is the same access already needed to add or delete stored payment information, so no additional role is needed to pause or resume.

A paused stored payment is a saved payment method that PCR Educator will not charge automatically. Pausing holds the family's auto-pay arrangement in place without deleting their stored payment or their enrollment, so automatic charging can be resumed later without asking the family to enter their details again.

Pausing works with every payment processor. Wherever PCR Educator charges automatically, a paused stored payment is skipped.

How a stored payment becomes paused

A member of staff pauses it in Campus. Use this for a family between jobs, a disputed charge, or a payment plan under review.

The family pauses it in the portal, if the school has enabled that option. It is off until the school turns it on.

A payment is returned by the bank. For schools processing through Authorize.net, a returned payment pauses the stored payment automatically when Pause Autopay on NSF is turned on for the auto-pay configuration. Returns where the account holder states the debit was not authorized always pause, because banking rules do not permit the school to present that debit again. See Configuring Settlement and Return Handling.

What a pause stops

A pause stops unattended charging. The nightly automatic payment run, automatic account top-ups and recurring pledge payments all skip a paused stored payment.

A pause never prevents the family from paying when they choose to. A pause set by staff or by the family stops automatic charging only, and the family can still select that stored payment and pay in the portal.

Where the pause followed a returned payment, whether the family can still use the payment method depends on why the payment came back.

Returned for insufficient or uncollected funds. Automatic payments stop, and the family can still choose that stored payment and pay in the portal. The balance may well cover the payment now, and the family is trying to settle the account.

Returned because the account holder revoked or never gave authorization. The payment method cannot be used again at all, including by the family. New payment information is required.

Returned because the account is closed, does not exist, or the number is invalid. The payment method cannot be used again, for the same practical reason. New payment information is required.

How a stored payment becomes active again

This depends on why it was paused, because the two situations call for different answers.

Paused after a returned payment. The family enters payment information again in the portal. Saving it reactivates the stored payment automatically and automatic payments resume on the next run, with no action required from the school. The new payment information is the fix, so nothing further is needed.

Paused by staff or by the family. Somebody resumes it deliberately, using the Resume action. A hold of this kind is not lifted by the family updating their card or bank details, because new payment information does not answer the reason the pause was put in place.

Pausing and resuming in Campus

Navigate to Finance > AR > Customers and open the customer. Go to Stored Payment Info. Click Pause on the stored payment and confirm when prompted.

The Status column then shows the stored payment as paused, with the reason and who set it. To start automatic payments again, click Resume on the same row.

Letting families pause automatic payments themselves

This is off unless the school turns it on. In the CMS Portal, open the page that carries the Household Auto Billing widget, or add the widget from the Payments category. See CMS Portal: Stored Payment Info Management Widget. Check the Allow Family Pause setting and click Save.

Families then see a Pause Automatic Payments button alongside their stored payment, and a matching button to resume.

Families cannot resume a stored payment that was paused because a payment was returned. That one clears when they save payment information again, which is what the portal asks them to do.

Note: Consider whether these requests should reach the business office first. Many schools prefer to handle a pause as a conversation and leave this option off.

Where you see it in Campus

The Status column on Stored Payment Info shows the stored payment as paused together with the reason and who set it, reading Paused by school, Paused by family, or simply Paused for one that followed a returned payment. A pause that followed a return also names the return code and the receipt involved. The same status appears on the Customer Auto-Pay dashboard widget and on the Stored Payment Info page of the household editor.

When you run automatic payments, families whose stored payment is paused are listed on the Review Invoices and Process Payments tabs under a note that says they were skipped because the stored payment is paused, with a count. Their invoices are not selected for payment.

What the family sees

On the Auto-Pay page of the portal, a notice under the stored payment explains why it is paused, and the wording follows the reason. A pause the family set themselves says automatic payments are paused at their request and can be resumed there. A pause the school set says automatic payments are paused by the school and invites them to contact the office. A pause that followed a returned payment explains that a payment was returned and invites them to replace the payment information.

On the Pay Now page, if the payment method may still be used, a notice explains that they can still pay with it now and that automatic payments resume once they re-enter their payment information.

Families see plain language only. Return codes, receipt numbers and internal detail are shown to staff, not to families.

Posted August 18, 2026

PCR Educator now follows every gateway payment through to settlement and back. A nightly process reads settlement results from Authorize.net, records what settled and in which batch, and identifies any payment the bank has returned. Business offices see the whole life of an eCheck payment across the banking days it takes to complete.

Key capabilities

Gateway status on every receipt. Gateway Status, Gateway Settlement Date, Gateway Batch and Gateway Return Code are available as columns and as search fields on the Customer Receipts list. They also drive notification triggers, so the business office can be alerted when a payment has not settled after a set number of days.

Automatic deposit reconciliation. Settled eCheck receipts move onto a deposit that matches the processor's own settlement batch, dated the day the money settled.

Automated returned payment handling. A returned payment can void the original receipt, mark it NSF, associate the void deposit, and raise the fee invoice from your own invoice template and fee product, unposted for review or posted outright.

Family notification and autopay pause. The family receives your message asking them to update payment information, and their stored payment pauses so an account that has already failed is not charged again. Saving new payment information reactivates it automatically.

A complete record. Every receipt carries a Gateway page showing what happened and when, from settlement through return to fee invoice.

Why it matters

Reconciliation work that took a careful hour of matching and re-entry now happens overnight, and a returned payment is caught the night the bank sends it back. Every setting is off until a school turns it on, and lives on the auto-pay configuration, so tuition and donations can be handled differently. The automation never alters the original invoice or receipt; corrections are added as new records. Returns that call for judgment, such as a family stating a debit was not authorized, stay with a person.

A few ways to talk about it

  • Every gateway payment is now tracked from charge to settlement to return, on the receipt itself.
  • Settled eCheck receipts reconcile to the processor's own deposit batch overnight.
  • Returned payments can void, re-invoice the fee, notify the family, and pause autopay automatically.

Available now to PCR Educator schools processing through Authorize.net. Your account team can walk you through the setup whenever you're ready.

Posted August 03, 2026

Picture a dance school running a national audition tour: thirty cities, hundreds of dancers, a faculty panel that changes from stop to stop, and a line of walk-ins at every studio door. Registration lists drift out of date by morning, numbers get pinned at the check-in table, and score sheets pile up next to the sound system. PCR Educator runs that entire season in one system, from the family's first registration to the final placement report, and the same workflow covers interview days and entrance testing for schools that do not hold a single plié.

Before the tour: set up auditions once

Every audition belongs to an audition category: the summer intensive tour, company placement, year-round program auditions. The category carries the operating rules: capacity, how many attendees a family may bring, when online registration closes, and what lands on the dancer's record at sign-up. The individual stops on the tour, each with its own date, studio, and capacity, sit underneath.

The category also carries the panel. Assign your adjudicators to the category once, and every dancer who registers for any stop on the tour is routed to them automatically. When faculty rotate mid-tour, update the category and the assignments follow. Hand-picking a panel for one dancer still works, and the two approaches run side by side.

Dancers register themselves

Families register through the school's portal. They see open sessions, remaining spots, and your instructions; the system enforces registration windows and family limits. The moment a family registers, the dancer's record gets the audition on it, the admissions checklist advances, and the panel can already see the name on their list. Nobody at the front desk re-types a registration.

Audition day: check in, pin the number

Walk-ins are a fact of audition day, so check-in treats them like everyone else: staff attach the dancer to the audition, and the panel routing happens on the spot. At the same table, staff issue each dancer an audition number, the one pinned to the leotard. The number lives in its own field on the audition record, deliberately separate from the panel's notes, so registrars can sort and export by it without untangling comments. When the dancer returns for another audition, a new number takes its place. Each audition keeps its own history.

In the studio: score the whole room on one screen

Adjudicators open their screen, filter to the tour and the stop, and see exactly the dancers in the room, each with the number pinned to them. The scoring grid lays the room out side by side: one column per criterion (technique, artistry, musicality, whatever your rubric defines), a comment box, and the audition number. Rubrics are fully configurable per audition type, numeric ranges or custom scales, and each adjudicator sees only the dancers assigned to them. Finished evaluations lock, and every score is attributed to the panelist who entered it.

After the tour: results are already where they belong

Nothing waits for transcription. Scores, comments, and numbers are on the dancer's record the moment the panel saves. The admissions office pulls acceptance and placement reports sorted by audition number, aggregates results across panelists, and reaches every field through the Data Analytics Tool. Callbacks, re-auditions, and multi-city tours accumulate as clean per-audition history instead of overwritten spreadsheets.

The operating principle

Audition season is a throughput problem. The schools that run it well remove every manual handoff between the family, the check-in table, and the panel. That is what this workflow does: registration feeds the panel, check-in feeds the grid, and the grid feeds placement, with no re-keying anywhere in the chain.

Posted July 28, 2026
An Evaluation is a specialized action for students and inquiries (Action Entity Type = Evaluation). In addition to capturing standard action data such as date, type, and comment, evaluations also capture scores. Typically evaluations are used to capture standardized test results, interview results, application review results, admissions committee decisions.

Evaluators record results on the Admissions > Evaluations > 9 Evaluations screen.  The screen may be filtered by admissions event category and event, so evaluators responsible for many events see only the applicants signed up for the selected event.  Multiple applicants may be scored side by side using the “Score Evaluations” multi-action (see Scoring Evaluations - Bulk).
Posted July 28, 2026
There are multiple ways to record inquiry actions. 
    - Recording Inquiry Action - Individual

    - Recording Inquiry Action - Bulk

    - Recording Inquiry Action - by Evaluator

    - Importing Inquiry Action

Note: Many types of inquiry actions may be recorded indirectly.  For instance, when a parent inquires on the CMS Parent Portal, an initial action is assigned to the inquiry when they press the submit button.  When the parent submits the Application Online, another action is applied when they press the submit button.  Actions may also be scheduled or applied automatically based on the Admissions Checklist an inquiry is associated with.

Note: For actions linked to an admissions event, the action edit popup includes an Alternate ID field.  Staff typically enter this identifier when the applicant checks in for the event.  The value is shown on the Evaluations screen and on the “Score Evaluations” grid (see Scoring Evaluations - Bulk), and it is replaced when the applicant receives a new identifier at a later event.
Posted July 28, 2026
Evaluators are the users assigned to selected applicants for the purpose of having a limited access to only these applicants, reviewing them and recording the results of Evaluations.  There are three ways to assign evaluators:
    - Managing Evaluators for individual inquiries

    - Assigning Evaluator - Bulk

    - Assigning evaluators to an admissions event category (see Admissions Event Category)

Note: When evaluators are assigned to an event category, every applicant who signs up for any event of that category is assigned to them automatically, including applicants signed up at check-in.  Removing an evaluator from the event category removes these automatic assignments.  Assignments made individually or in bulk are not affected.

Note: You may have multiple evaluators for an inquiry in a given academic year. 

Note: You may have different advisors for different academic years.
Posted July 28, 2026
You need the Admissions Full role to access the page and perform the multi-action. You can assign evaluators in bulk using a multi-action of “Assign Evaluator” on one of these pages:
    - Admissions > Inquiries/Applicants

    - Admissions > Evaluations > 7 Assign Evaluators

To complete the assignment:
1. Select the inquiries who will be assigned the evaluators.

2. Choose the multi-action “Assign Evaluators” to begin adding evaluators.

3. Choose the users who are to evaluate the selected inquiries.

4. Choose the academic year that they evaluate the selected inquiries.

5. Click “Save.”

Note: To assign evaluators automatically based on event sign-ups, assign them on the admissions event category instead (see Admissions Event Category).  Every applicant who signs up for any event of that category is then assigned to the category evaluators automatically.
Posted July 28, 2026
An Admissions Event Category organizes all events of a particular type and includes additional information regarding how those events operate.  To access the Admissions Event Category page navigate to Admissions > Maintenance > Event Categories.  You need the Admissions Full role to access this page.

Name is the name of the Event Category.

Close Sign Up # Days Before
closes the online signup the specified number of days before the event.  If this is not specified, then parents can sign up the same day.

Is Comment Visible determines whether the comment entry is available for parents during the signup process.

Max Attendees Per Family determines the maximum number attendees a parent may specify during signup.  Note:  There is a maximum capacity for Admissions Events. If the maximum capacity is 20 and you list 4 max attendees per family, the maximum could be reached once you have 5 families - each with 4 participants - signed up. You may wish to specify the max attendees per family as “one” so that the count matches your availability.  In the registration instruction, explain that only the inquiry is counted and that all other attendees should be listed by the family under the comment - Is Comment Visible would be checked in this case.

Action determines the action which is added to the inquiry record when a parent signs up for an event.

Evaluators are the users who evaluate applicants attending events of this category.  Assigned evaluators automatically receive every applicant who signs up for any event of the category, for the academic year of the sign-up, including applicants signed up at check-in.  When an evaluator is removed from the category, the automatic assignments are removed as well; evaluator assignments made individually or in bulk are not affected.  See Assigning Evaluator.

Instruction is any instructions to include with the Event.  Note: The best practice for emails for events is to use a generic email template with the Instruction as a merge field to customize the message for events in different event categories.
Posted July 28, 2026

The diagram describes the relationships between the main Admissions Evaluations tables.

Note: The inquiry_actions table also includes the audition_number column, which stores the per-event Alternate ID entered when the applicant checks in for an admissions event.  The adm_event_category_users table links evaluators to an admissions event category for automatic evaluator assignment; derived assignments are recorded in inquiry_reviewers with the auto_event_category_id column set.
Posted July 28, 2026

Applicant evaluations in PCR Educator Campus now connect directly to your admissions events. Assign evaluators to an event category once, and every applicant who signs up is theirs to score. At check-in, staff issue an Alternate ID that follows the applicant onto the scoring grid. On evaluation day, the whole flow runs from one screen: filter to the event, see the room, score everyone side by side.

What's new

Evaluator assignment by event category. Add evaluators to an event category (an audition tour, interview days, entrance testing) and they automatically receive every applicant who signs up for any event in that category. Walk-ins are covered the moment staff record the sign-up at check-in. Per-applicant assignment still works exactly as before.

Per-event Alternate ID at check-in. When an applicant arrives, staff enter an Alternate ID on the check-in record or directly on the scoring grid. It stays its own field, so evaluator notes never get tangled with it, it exports cleanly for reports, and it resets naturally when the applicant returns for a later event.

Event filter on the Evaluations screen. Evaluators responsible for dozens of events pick a category and an event and see only the applicants in front of them, with the matching evaluation ready to score.

Bulk scoring grid. Select the applicants in the room and score one evaluation type side by side: a column per scoring category, comments, Alternate ID, and customizable columns, all in a single grid.

Why it matters

Evaluation days are high volume and unforgiving. Applicants arrive in waves, some unannounced, and evaluators cannot stop to hunt through assignment lists. Now the front desk issues the number, the evaluator filters to the event, and every score lands on the right applicant. Nobody re-keys data afterward, and the reports your team pulls sort cleanly by the ID your staff issued at the door.

A few ways to talk about it

  • Assign evaluators to the event category once. Every sign-up, including walk-ins, reaches them automatically.
  • Check-in issues the number. The scoring grid already knows it.
  • Thirty events on the calendar, one filter to see today's room.

Available now to all PCR Educator schools. Your account team can walk you through event categories and the scoring grid whenever you're ready.

Posted July 28, 2026
You need the Admissions Evaluator or Admissions Full role to access the page and perform the multi-action.  Scoring Evaluations in bulk allows an evaluator to enter scores for multiple applicants of one evaluation type on a single grid.

To score evaluations in bulk:
    - Navigate to Admissions > Evaluations > 9 Evaluations.

    - Optionally filter the screen by admissions event category and event to see only the applicants signed up for the selected event.

    - Select the evaluations to score.  All selected evaluations must be of the same evaluation type, so all applicants on the grid share the same scoring categories.

    - Choose the multi-action “Score Evaluations”.

    - Enter a score for each scoring category, a comment, and the Alternate ID if it was not already entered at check-in.

    - Click “Save”.

Alternate ID is the per-event identifier issued to the applicant when they check in for an admissions event.  It is shown next to each applicant on the grid and on the Evaluations screen, and it is replaced when the applicant receives a new identifier at a later event.

Note: Use the settings icon in the grid header to choose which columns display.

Note: Completed evaluations are shown read-only on the grid.
Posted July 24, 2026

PCR Educator now suppresses duplicate emails within a single send. When one send would deliver identical content to the same address more than once, for example a household copy and a parent copy sharing one inbox, the system delivers exactly one copy and records the rest as suppressed duplicates.

What's new

One copy per address per message. Within a single send, each email address receives a given message once. If the same address appears as a household email, a parent email, and a named recipient, the first copy is delivered and the remaining copies are suppressed.

Personalized content still arrives. Suppression compares the merged content, not just the address. Two messages personalized for different students remain two messages, and both are delivered.

Every suppressed copy is recorded. The notification history shows each suppressed recipient with a reference to the copy that was delivered, so "did parent one receive it" always has a definite answer.

Read tracking follows the delivered copy. Opens and link clicks register on the copy that was sent, keeping read statistics meaningful.

Why it matters

Families who share an inbox, or who use one address for both the household and a parent record, stop receiving the same email two or three times. Front offices stop fielding "why did I get this twice" replies, and read rates stop being diluted by copies nobody opens twice. Nothing changes in how you configure sends: the suppression happens automatically, and different content to the same address continues to flow exactly as before.

A few ways to talk about it

  • Same message, same address, one email. Every extra copy is recorded, not silently dropped.
  • Personalized messages are never merged away: different content to one address still arrives separately.
  • Read statistics now reflect real inboxes instead of duplicate copies.

Available now to all PCR Educator schools. Your account team can walk you through the notification history whenever you're ready.

Posted July 22, 2026

PCR Educator now processes Canadian bank payments through Stripe pre-authorized debits (PAD) under Payments Canada rules. Canadian schools that could not use eCheck can now offer families the same save-once, pay-automatically experience that US schools have had for years, in Canadian dollars.

What's new

Pre-authorized debit support for Canadian schools. A Stripe payment configuration now accepts family bank accounts alongside credit cards. Families save an account once, and Auto-Pay drafts invoices on the school's schedule.

Bank account verification built into the portal. After a family saves a bank account, the portal shows a verification notice. Stripe sends two small deposits within 1 to 2 business days, and the family confirms the amounts through a linked Stripe page. Stripe also emails the family a confirmation of the debit agreement and a notification for each debit, as Payments Canada requires.

Charge currency follows the payment configuration. A Canadian school sets the Processor Culture to en-CA, and every Stripe payment processes in Canadian dollars.

Failed debit monitoring. Bank debits settle over several business days. If a debit fails after acceptance, PCR Educator is notified automatically and coordinates the receipt reversal with your business office.

Why it matters

Canadian schools have been exporting payment files and uploading them to their bank's EFT platform by hand. That workflow disappears. Families authorize once, invoices draft automatically, and bank debits cost a fraction of credit card processing. The business office keeps the same receipts, deposits, and reconciliation it uses today.

A few ways to talk about it

  • Canadian families can now pay tuition straight from their bank accounts, with no manual EFT files.
  • Save once, verify once, and Auto-Pay handles every invoice after that.
  • Bank debits cost schools a fraction of credit card processing fees.

Available now to all PCR Educator schools. Your account team can walk you through Stripe setup and pre-authorized debits whenever you're ready.

Posted July 21, 2026

One of the following roles is required to access this query: FinanceGL Full, FinanceGL Read.

This DAT Query returns fixed assets that are fully depreciated (Book Value equals Residual Value) as of a chosen date, excluding disposed assets. Book Value is calculated as Acquisition Price minus all depreciation scheduled through the chosen date.

The Depreciate Date is set as a DAT Parameterized Condition, allowing you to change the cutoff date on the Results screen (for example, 06/30/2026 for June 2026).

Note: To see every asset with its current book value rather than only fully depreciated assets, remove the Book Value = Residual Value condition on the Fixed Assets table.

Posted July 17, 2026
Closing the school year will replace the current year’s schedule with the next year's schedule.  If you do not have a schedule in the next year, then when the school year is closed you will have no schedule in the current year.

Note: The automatic scheduling functions that allow for using the Master Schedule Builder and the automated “Load Students” DO NOT EXIST in the Current Year. If anyone in the school still needs to use those features, you should not close the school year.

1. Copy the current year Block Codes and Period Codes into the Next Year.  This should be performed in each division that has a schedule.

2. Copy the current year Course Sections to Next Year. Each division may decide to copy the current course sections for next year (and modify them as necessary) OR the division may decide to build all the course sections from scratch. Copying the sections must be done prior to Closing the School Year or there will be no sections when the school year is closed.

If you copy the course sections without period codes and rooms, you can still bring those details forward for selected sections. Navigate to Scheduling > Courses > Sections in the current year, select the sections, and go to multi-action > Copy Scheduling Info To Next Year to copy the Period Code, Room, and/or Section Name onto the matching next year sections. See Copying Scheduling Info to Next Year - Bulk.

For more information about Copying/Moving Schedules, please see the section on Closing the School Year Schedule Next Year.
 
Posted July 17, 2026

    - Navigate to Scheduling > Courses > Sections in the current year schedule.

    - Select the sections to copy scheduling info for and go to multi-action > Copy Scheduling Info To Next Year.

    - Check the fields to copy (Period Code, Room, Section Name) and click the Copy To Next Year button.

Note: This feature is only available in the current year schedule and requires the Scheduling Full role. The selected sections must already exist in the next year (run Copy To Next Year first). Next year values for the checked fields are overwritten.

Posted July 17, 2026

PCR Educator now lets schools copy Period Code, Room, and Section Name to next year for exactly the course sections they choose. Until now, the Copy To Next Year tasks moved scheduling details for every section in a division or for none at all. The new Copy Scheduling Info To Next Year multi-action brings that choice down to the individual section.

What's new

Selective copy from the Sections list. Navigate to Scheduling > Courses > Sections in the current year schedule, select the sections you want, and go to multi-action > Copy Scheduling Info To Next Year. Requires the Scheduling Full role.

Field-level control. Check any combination of Period Code, Room, and Section Name. Only the checked fields are copied; everything else in next year stays as it is.

Runs after the standard copy. The action updates the matching sections that already exist in next year, so it fits cleanly after Copy To Next Year has created them. Next year values for the checked fields are overwritten.

Period codes stay aligned. When Period Code is copied, each section is linked to the matching next year class schedule automatically.

Why it matters

Many schools keep the same room, period, and section notes year after year for only part of their catalog. Before, the choice was to copy everything and then delete what did not apply, or to copy nothing and re-enter details by hand. Now the rollover matches how scheduling actually works: run the standard copy for the whole division, then pull the details forward for just the classes that repeat. The rest of next year stays blank, which keeps it easy to see what still needs to be scheduled.

A few ways to talk about it

  • Copy rooms, periods, and section names for exactly the sections you choose.
  • Filter the Sections list by department, select, copy. Done.
  • Everything you do not copy stays blank, so unfinished scheduling is still easy to spot.

Available now to all PCR Educator schools. Your account team can walk you through the new multi-action whenever you're ready.

Posted July 16, 2026

Canadian pre-authorized debit (PAD) is a bank-account payment method for Canadian schools, processed through Stripe under Payments Canada rules. You need Security Full or Security Read roles to access the Security portal and the DBA Full role to access the Payment Configuration page. Finance setup requires the FinanceAR Full role.

Prerequisites

  • A Stripe account for your school with pre-authorized debit payments enabled. Your Stripe dashboard shows the Publishable Key and Secret Key under Developers, API keys.

Setting up the payment configuration

  • Navigate to Security, Maintenance, Payment Configurations and add a Stripe payment configuration. See Configuring Payment Configuration.
  • Enter the Publishable Key, Secret Key, and Webhook Signing Secret from Stripe.
  • Set the Processor Culture to en-CA. This processes every Stripe payment, including PAD, in Canadian dollars.
  • In your Stripe dashboard, register a webhook endpoint pointing to https://{your school site}/Common/StripeWebhook.aspx?pcid={payment configuration id}&pid={any page id of your site}, subscribed to payment_intent.payment_failed, setup_intent.succeeded, and setup_intent.setup_failed. Enter the endpoint's signing secret on the payment configuration.

Setting up Auto-Pay configurations

  • Navigate to Finance, Maintenance, Auto-Pay Configurations. See Auto-Pay Configuration (Finance).
  • Point both the credit card and the eCheck Auto-Pay Configurations at the Stripe payment configuration when they share a Stored Payment Type.
  • Set the Receipt Method on the eCheck configuration to a bank value rather than Credit Card so receipts and deposits reconcile correctly.

The family experience

  • Families open the Auto-Pay page in the portal and enter their bank details. The routing number is the 9 digit electronic format: 0, followed by the 3 digit institution number and the 5 digit transit number.
  • After saving, the portal shows a verification notice. Stripe sends two small deposits within 1 to 2 business days, and the family confirms the amounts through the linked Stripe verification page. Payments cannot be drafted until verification completes.
  • Stripe emails the family a confirmation of the debit agreement and a notification for each debit, as Payments Canada requires.

Settlement and failures

PAD debits are accepted immediately and settle in roughly 3 to 5 business days. A debit can still fail after acceptance, for example for insufficient funds. PCR Educator is notified automatically and coordinates the receipt reversal with your business office, following the same procedure used for returned eChecks. See Reconciling eCheck Deposits with Payment Processor.

Posted July 16, 2026

The CMS Widget - Login authenticates a visitor against their PCR Educator account and, on success, sends them to the configured destination page. It also doubles as the account creation form for portals that allow self-registration, such as Online Store or Alumni. The widget can be found within the User group. Please review Adding CMS Widget for more information.

Destination Page Url determines where a visitor lands after a successful login. Note: if the page carries a returnUrl (for example, because the visitor was sent here from a page that requires login), the returnUrl takes priority over Destination Page Url.

Login Title customizes the heading shown above the username and password fields.

User Name Label customizes the label for the username field.

Password Label customizes the label for the password field.

Failure Text customizes the message shown when a login attempt fails. Note: if the account's password predates PCR Educator's stronger password requirements, the widget shows a password reset message instead, regardless of this setting.

Enable Google Authentication sends the visitor straight to a Google sign-in prompt instead of showing the username and password fields. Note: this only applies when the application has an Email Domain configured and the widget is not on an admin page. If Google returns an error, the widget falls back to the standard login form.

Redirect If Already Logged In sends a visitor who is already signed in straight to Destination Page Url (or returnUrl, if present) instead of showing the login form. Note: this setting requires Destination Page Url or an incoming returnUrl; without one, the widget has nothing to redirect to and behaves as if the setting were off. If the destination page does not allow the signed-in visitor in, for example due to a role restriction, the widget shows the login form instead of redirecting again, along with the message configured in Already Logged In Text.

Already Logged In Text customizes the message shown when Redirect If Already Logged In is on but the visitor's account is not allowed on the destination page.

Hide Login hides the username and password fields and the Log In button, leaving only the account creation panel visible when Enable Create New Account is also on. Note: use this to build a registration-only page.

Enable Create New Account shows an account creation panel below the login form, letting a visitor create their own username and password.

Create Account Title customizes the heading above the account creation panel.

Create Account Button Text customizes the text on the account creation button.

Create Account Email is the confirmation email sent to a visitor after they create an account.

Create Account Redirect Page is where the Continue button sends a visitor after account creation, when no returnUrl or Destination Page Url applies.

Continue Button Text customizes the text on the button shown after a new account is created.

Create Account Success Text customizes the message shown after a new account is created successfully.

Posted July 07, 2026
A Notification Trigger is a mechanism for sending automated emails when certain conditions are met. Notification triggers are used for billing reminders, birthday notifications, announcements, and other automated communications. A full list of notification trigger types is found below.

Note: Notification trigger emails go out between midnight and 7 AM local time. The exceptions are the Notification Trigger - Purchase Order Update and Notification Trigger - User Website Forums triggers, which send immediately.

Notification Trigger Types:

      - Notification Trigger - Action Reminder (Admissions)
      - Notification Trigger - Birthday (Household/Contact/Customer)
      - Notification Trigger - Customer Balance Low
      - Notification Trigger - Customer Billing Reminder
      - Notification Trigger - Donor Pledge Payment Reminder
      - Notification Trigger - Household
      - Notification Trigger - Inquiry Missing Actions
      - Notification Trigger - Purchase Order Update
      - Notification Trigger - Student
      - Notification Trigger - Student Drop Box Teacher Feedback
      - Notification Trigger - Student Gradebook Average
      - Notification Trigger - Student Gradebook Score
      - Notification Trigger - Student Missing Assessment
      - Notification Trigger - User Website Announcements
      - Notification Trigger - User Website Forums

Send Rate: Determines how often the email is sent (Daily or Weekly).

Minimum days between fires: Determines the minimum number of days that must pass between two fires of the same trigger for the same target record. Replaces the legacy Days to Prevent Followup field.

Estimated Sendings: Estimates the number of emails the trigger would generate if it ran right now. The estimate counts the users who pass the Eligible Recipients Filter (User) and have at least one matching Merge Filter record, after suppression is applied. A run that would generate more than 5,000 sendings is blocked, and a warning is displayed when the estimate exceeds this limit so that the filters can be narrowed before the trigger runs. Note: If the estimate cannot be computed within a few seconds, ?? is displayed instead. This does not affect saving or running the trigger.

Note: Additional period-quota suppression fields (Maximum fires per, Maximum number of fires, School division for period) cap how often a trigger fires within a marking period, semester, or academic year. See Notification Trigger Suppression for the full set of suppression controls.
Posted July 07, 2026
Creating a Notification Trigger requires the Security Full role.

- Navigate to Home > Notifications > Notification Triggers.
- Click New.
- In the Category dropdown, select the scope: Student for triggers that operate on individual students, or Household for triggers that operate on the household record. See Notification Trigger - Household for the household scope.
- Populate Notification Settings. For more information, see Notification Trigger.
- Review Estimated Sendings at the bottom of the Notification Settings section. The statistic shows the number of emails the trigger would generate if it ran right now. A warning is displayed when the estimate exceeds the 5,000 sending limit. For more information, see Notification Trigger.
- Optionally configure suppression fields to limit how often the trigger fires. See Notification Trigger Suppression.
- In the Visible for Roles setting, specify the security roles that users must have to view the email that is sent. Note: This setting allows users to access emails from the administrative end.
- Click Save.
Posted July 07, 2026

This Notification Trigger sends one email to parents and admins when a student reaches a specified absence threshold in the current semester. It uses the new period-aware quota controls so the email goes out exactly once per threshold per student per semester, not every day.

When to use

Schools often want to notify parents and admins when a student crosses an absence threshold: for example, 5 absences, 7 absences, 9 absences. Build one trigger per threshold, each pointing at the matching saved filter from FAQ: Configuring Absence Threshold Filter.

Steps

  • Navigate to Home > Notifications > Notification Triggers.
  • Click New to start a new trigger.
  • Fill the standard top-of-form fields:
    • Category: the schedulable attendance trigger type (the entry that exposes the Send Rate controls in Custom Settings).
    • Name: a clear name such as "Absence Alert 5 in Semester".
    • Is Active: checked.
    • Recipient / Data Relationship: Parent-Child (parents receive the alert; admins are added via the role list at the bottom of the form).
  • Set the filters:
    • Eligible Recipients Filter (User): the saved user filter for parents and admin recipients.
    • Merge Filter: the absence threshold filter from FAQ: Configuring Absence Threshold Filter, for example "Absences 5 or More, Current Semester".
  • After both filters are selected, check Estimated Sendings at the bottom of the Notification Settings section. The statistic shows the number of recipients who would receive the alert if the trigger ran right now, which confirms that the absence filter matches the students you expect before the trigger goes live.
  • Pick the absence alert Email Template.

Send Rate Settings

These controls (introduced in Update: Notification Triggers, Now on Your School's Calendar) cap the trigger so each student receives exactly one email per threshold per semester:

  • Send Rate: Daily. The job evaluates each day, and the caps below prevent daily sending.
  • Minimum days between fires: 30. This is a per-student frequency floor that prevents repeat sends if a student's count momentarily flickers.
  • Maximum fires per: Semester. Pick Academic Year instead if you would rather cap once per year across both semesters.
  • Maximum number of fires: 1.
  • School division for period: required when Maximum fires per is Semester or Marking Period. Pick the appropriate division. The dropdown is hidden for Academic Year and Don't limit.

Note: If you pick Semester or Marking Period without selecting a School division for period, the save is blocked with the message "Pick a school division - required when 'Maximum fires per' is Semester or Marking Period."

Visible for Roles

At the bottom of the form, check the admin role(s) that should also see the notification in their inbox.

Save and repeat

Click Save. To create the trigger for 7, 9, and higher thresholds, clone the trigger and change only:

  • The trigger Name (for example, "Absence Alert 7 in Semester").
  • The Merge Filter selection (point at the matching saved filter for that threshold).

Send Rate, Minimum days between fires, Maximum fires per, Maximum number of fires, and School division for period stay identical across thresholds.

How the period scoping works

The trigger's Maximum fires per: Semester cap counts fires within the boundaries of the selected School division for period's marking-period and semester calendar. When the semester turns over, the per-student counter resets and the trigger is eligible to fire again on the new semester.

This works in tandem with the Merge Filter from FAQ: Configuring Absence Threshold Filter, which uses Division Calendar to scope the absence count itself to the current semester.

Together: the filter answers "does this student have 5 or more absences in the current semester," and the trigger answers "should we send the email now, or have we already sent it this semester."

Notes

The trigger evaluates daily because Send Rate is set to Daily, but the Maximum fires per: Semester cap and the Minimum days between fires floor ensure that any given student receives at most one email per threshold per semester.

If a customer wants a less aggressive cadence (for example, two reminders per semester instead of one), increase Maximum number of fires accordingly and adjust Minimum days between fires so the reminders are spaced appropriately.

Posted June 22, 2026

Closing a fiscal year tells PCR Educator that a financial year is finished and should no longer accept new or changed transactions. It is a soft close, so you can re-open the year at any time if a correction is needed. Complete your year-end reconciliations and statements before you close, because closed-year transactions drop out of your day-to-day working lists.

Only users in the FinanceGL Full or Contract Full role can close or re-open a year.

How to close a year

  1. Go to Finance and open Fiscal Years.
  2. Select the year you want to close to open its Details page.
  3. Confirm the Begin Date, End Date, and Open Period Date are correct.
  4. Click Close Fiscal Year.

The Is Open box clears, and the button changes to Re-open Fiscal Year.

What closing affects

Closing removes the year from the open posting window, so new General Ledger, Accounts Receivable, and Accounts Payable activity must be dated in an open year. Transactions in the closed year stay in the system but leave the standard lists; use Include All to see them. Refunds cannot be dated in a closed period. Gift entry in Fundraising is not blocked, but General Ledger posting and reports still follow the open year. Nothing is deleted, and reports on closed years are unaffected.

How to re-open a year

Open the year's Details page and click Re-open Fiscal Year. The year returns to the open posting window and its transactions return to the standard lists. Make your correction, then close the year again.

Need help

Open a ticket through the PCR Educator customer portal or email support@pcreducator.com. Include your school name and the fiscal year you are working with.

Posted June 03, 2026

A PCR Educator DAT Query can now compute an aggregate across a wider group than the row it sits on, while the query stays grouped at its own level. A new Partition By option on any Aggregate field puts a row's own number and the total it belongs to side by side. Running totals, subtotals, and share-of-whole calculations fit in a single DAT Query.

What's new

Partition By on any Aggregate field. Set a field's role to Aggregate, choose the function (Sum, Count, Average, and the rest), then pick a Partition By column from a typeahead. The aggregate computes across that wider partition while each row stays grouped at the DAT Query's own level.

Optional on every Aggregate field. Partition By is there when you want a wider calculation. An Aggregate field with no partition set is a standard aggregate.

One DAT Query for the comparison. A row can show its own value and the value of the group it belongs to, together, in a single DAT Query.

Why it matters

A row can carry both its own number and the number it belongs to. Show each course's enrollment next to its department's total enrollment. Show a donor's giving next to the campaign total. Show a student's tardies this term next to their full-year count. The reader sees the part and the whole together, and the comparison is immediate.

A few ways to talk about it

  • Running totals, subtotals, and share-of-whole math live in a single DAT Query.
  • Partition By sets each row next to the total of the group it belongs to.
  • An Aggregate field with no partition set stays a standard aggregate.

Available now to all PCR Educator schools. Your account team can walk you through Partition By in a DAT Query whenever you're ready.

Posted June 02, 2026

Check In / Check Out is a PCR Educator CMS widget that lets a student, a staff member, or an authorized pick-up identify themselves at a screen and check in or out for the day. Schools commonly deploy it as a self-serve attendance kiosk on a laptop, a tablet, or a wall-mounted touch panel. The widget is configured entirely from the standard page editor, with no developer involvement, and it can optionally write period and daily attendance.

Setup happens in the CMS page editor, so configuring the widget requires an account with permission to edit CMS pages.

Schools deploy the widget for:

  • Morning carpool and after-school care check-in stations
  • Athletics, field trip, and extended-day program rosters
  • Late-arrival and early-dismissal desks at the front office
  • Optional automatic period attendance for late or early-departure students

Setup at a glance

From the page editor:

  • Open the CMS page where the kiosk will live, or create a new page.
  • Click Add Widget, then User, then Check In / Check Out.
  • Open the widget Properties dialog with the gear icon and configure Sign In Type, Operations Type, Program Type, the button text, and any of the optional customizations described below.
  • Save the widget. The kiosk is live immediately.
  • On the device itself, sign in once with a staff or operator account before leaving the kiosk unattended. The widget checks for a signed-in account when the page first loads. Once the device is signed in, any number of students sign themselves in and out against it. Note: the signed-in account is recorded as the operator in the Modified By column of the Check In/Check Out list in Campus. If that login expires later in the day, the kiosk keeps recording scans and the column shows [No User]. Reload the page and sign in again to restore the operator name.

To write Late, Absent, and Leaving Early stamps automatically, which is recommended for schools that want period attendance from the kiosk:

  • Add a second widget to the same page: Parent/Student Attendance Entry.
  • In its Properties, set Late Type, Absent Type, Leaving Early Type, and, optionally, Daily Attendance Type to the attendance discipline types your school uses.
  • If your school runs more than one division, set Excluded Divisions on that same widget to every division except the one this kiosk serves. A daily attendance row belongs to a single division, so a student enrolled in several divisions gets no daily row until exactly one division is left for them.
  • Save. The kiosk now writes period attendance automatically when students check in or out.

For full configuration of the partner widget, see CMS Widget - Parent/Student Attendance Entry.

Sign-in modes

Each kiosk supports one or more of the following sign-in methods. Enable as many as appropriate with the Sign In Type property. When two or more are enabled, a pill row appears at the top of the kiosk so the user can choose. With one enabled, the row is hidden.

Mode When to use it
Username Standard PCR Educator username and password, the same credentials students use to log in to the portal. Works on shared family devices.
Name + PIN The student types their first name, last name, and 5-digit PIN. Best for younger students with no portal login.
PIN PIN only, and the fastest option. Requires PINs to be unique across the school database. Recommended for high-throughput stations.
Student ID Numeric student ID, typed on the on-screen keypad or scanned from a printed barcode. The slot count and maximum length come from the school's configured ID width.
Staff ID Numeric staff ID, typed on the on-screen keypad or scanned from a printed barcode. It works like Student ID, but it searches the staff roster, and its slot count comes from the school's staff ID width. Enable it for a faculty or staff sign-in kiosk.
Alternate ID A second numeric ID stored on the student record, such as a badge number or an RFID short-code. It lets families reuse a badge that does not match the official student ID. The value is looked up against the alternate ID field on the student record, and ambiguous values are treated as not found, so a student never accidentally signs in as someone else.

One kiosk can offer student and staff sign-in together. The widget records each check-in as student or staff from the mode the person used: the Staff ID mode records a staff member, and every other mode records a student. Staff check-ins are recorded against the staff roster. They do not send notification emails, and the period attendance integration applies to student check-ins only. Staff sign in through the Staff ID mode, because the Username, Name + PIN, PIN, and Alternate ID modes resolve against student and household records.

Pick one default with the Default Active Mode property. That pill is highlighted on first load. The kiosk also remembers which pill the user last touched and restores it after any submission, so a barcode scanner station that opens to Student ID stays on Student ID after each scan.

Optional: period attendance integration

Placing a Parent/Student Attendance Entry widget on the same page changes the kiosk from a record of who is on campus into a full attendance writer. On every successful student check-in or check-out, the kiosk will:

  • Write Absent stamps for any scheduled periods that ended before the student checked in, which fills the gap.
  • Write a Late stamp for the period in session at check-in time.
  • Write a Leaving Early stamp for the period in session at check-out time.
  • Optionally stamp every period after the check-out as Absent, when the school enables it.
  • Optionally write a single daily attendance row. Three things have to be true for that row to appear: a Daily Attendance Type is set on the partner widget, the student resolves to exactly one division once Excluded Divisions has been applied, and the date is an attendance day for that division. If any of the three is not met the check-in still succeeds and no daily row is written.

All writes respect a same-user audit gate, so teacher-entered attendance is never overwritten, and prior kiosk stamps can be cleanly cleared when the student returns the same day. For the full setup of the partner widget, see CMS Widget - Parent/Student Attendance Entry.

Late and early departure thresholds

Many schools have rules such as "a student more than 20 minutes late is marked Absent" or "a student leaving in the first 30 minutes counts as Leaving Early, and beyond that it is a normal departure." The kiosk supports both with two integer properties.

Property What it does
Late Absent Threshold Minutes When set to a positive integer, on check-in: if the student arrives more than this many minutes after the current period started, the current period is stamped Absent instead of Late. Set to 0, the default, to disable.
Leave Early Threshold Minutes When set to a positive integer, on check-out: the current period is stamped Leaving Early only if the student is checking out within this many minutes of the period starting. Past that point, no Leaving Early stamp is written. Set to 0, the default, to disable.

Both thresholds measure minutes elapsed since the current period's nominal start time, using the school's schedule data. If the student has no scheduled period at that moment, such as during lunch, before school, or after dismissal, the thresholds do nothing and the kiosk falls back to its default behavior.

Customization options

Beyond the sign-in modes and thresholds, the widget includes a broad set of properties for tailoring messages, behavior, and presentation. The most commonly used:

Property Purpose
Operations Type FullCycle (Check In and Check Out), In only, Out only, or In and Out without cycle pairing.
Default Active Mode Which sign-in pill is highlighted on first load. Useful for single-purpose stations.
Automatic Check In Out Auto-toggles between In and Out based on the student's most recent state, which is useful for one-button carpool stations. It applies only when Operations Type is FullCycle.
Auto Reset Seconds How long the success card stays on screen before the form returns for the next student. The default is 6 seconds. Set it to 0 to leave the success card up until the next student signs in.
Start Over Text Adds a button to the success card that returns the kiosk to the entry form at once, so the next person does not wait out the reset timer. Type the label you want the button to carry, for example "Next person." Leave it blank and no button appears. A label combined with an Auto Reset Seconds value of 0 gives a kiosk that advances only when someone presses the button.
Check In / Check Out Success and Error Messages All visible text is school-customizable: the welcome message, the goodbye message, the not-found prompt, the already-checked-in warning, and more.
Show Student Photo When enabled, the success card displays the student's school photo so staff can visually confirm the right student checked in.
Auto Clear Future Absences On Return When a student who was checked out, and stamped Absent for later periods, returns the same day, this clears those Absent stamps automatically so teachers can mark fresh attendance.
Stamp Future As Absent On check-out, stamp every period after the check-out time as Absent. This is opt-in per school.
Program Type Restricts the kiosk to a single program, such as Morning Care, After School, or Athletics, so a multi-program campus can run distinct kiosks for each. The widget requires a Program Type unless the page also has a Parent/Student Attendance Entry widget.

What students see

On every kiosk the experience is the same: large touch targets, no scrolling, and no logins to remember unless the school chooses Username mode.

  • A row of sign-in pills at the top, hidden if only one mode is enabled.
  • The matching input panel below, which is a numeric keypad for ID or PIN, a username and password form for Username mode, or a name and PIN form for Name + PIN.
  • Large Check In and Check Out buttons.
  • A completed ID or PIN submits on its own where the kiosk offers a single action, so a student who fills every slot never reaches for a button. Where both Check In and Check Out are available the student still chooses, because the number alone does not say which one they meant. An ID shorter than the configured slot count leaves slots empty, so those students press the button as before.
  • After submitting, a calming success card with the school greeting, the student's name shown prominently, and their photo and profile (Name, ID, Grade, Status). The form returns automatically after the configured timeout, and when Start Over Text is set, a button on the card returns it straight away.
  • On error, the form stays in place, the typed value is preserved so the student can fix a typo without retyping, and the error message displays in red.

Best practices

  • For high-traffic stations such as carpool, enable a single sign-in mode, either PIN or Student ID, so the pill row hides entirely. Fewer taps mean faster lines.
  • Pair Alternate ID with a USB barcode scanner mounted at the kiosk so students can scan an existing school badge with no typing, as long as the barcode value is numeric and fits within the configured slot count.
  • When using the Late Absent Threshold, set it to match the school's published Late versus Absent policy, for example "20 minutes late is Absent." Communicate the rule to families in your handbook.
  • Pair an Auto Reset Seconds value of 3 with a kiosk on a public touch screen to keep the next student's experience clean. Use a higher value, 8 to 10, where staff want time to read each success card.
  • Test with at least one student account from each grade level or school division before going live. Different schedules can expose configuration gaps.

Need a hand?

Your PCR Educator account manager can walk you through a setup tailored to your school's carpool, after-school, or athletics workflow, including custom sign-in messages and visual styling. Submit a ticket from your Customer Portal, or email support@pcreducator.com.

Posted June 01, 2026

A PCR Educator DAT Query now supports an Auto mode for the Pivot role. Pick a field, set its role to Pivot (Auto), choose the aggregate function and the field to count or sum, and the query discovers the most-frequent values on its own. Each becomes its own column, with an "Other" bucket catching everything else.

What's new

Pivot (Auto) as a field role. A new value in the Role dropdown sits next to Group, Aggregate, and Pivot. Pivot (Auto) is eligible for any field that holds categorical values, no upfront value list required.

Top values discovered at query time. The query finds the most-frequent values in the chosen field each time it runs, up to twenty columns, and adds an "Other" bucket for the long tail.

One aggregate per pivoted column. Count, Sum, Average, Minimum, or Maximum. Whatever function you pick applies to every discovered column and to "Other."

Built for fields where the value list is unknown or shifts. Course names, action types, donor categories, inquiry sources. Anywhere a manual Pivot would mean typing out values that change year to year.

Saves and reruns like any other DAT Query. The auto-pivot refreshes with the query, so the columns reflect the current data each time the report runs.

Why it matters

Manual Pivot expects the user to list the values that should become columns. That works when the list is short and stable. It does not work when the catalog changes from year to year, or when no one wants to track down every value a field can hold. Pivot (Auto) removes that work. A course-load matrix or an action-type breakdown stays current as new courses are added and new action types appear, with no edits to the query.

A few ways to talk about it

  • Pick the field, the function, and the target. The columns come from the data.
  • Top twenty values plus an "Other" bucket, refreshed every time the query runs.
  • A natural fit for high-cardinality fields where the value list is unknown or shifts year to year.

Available now to all PCR Educator schools. Your account team can walk you through Pivot (Auto) in a DAT Query whenever you're ready.

Posted May 28, 2026

A PCR Educator DAT Query now puts a copy icon on every field row. One click creates a second instance of the same field, and that copy carries its own role and settings. The same field can do two jobs in one DAT Query.

What's new

Copy icon on every row. Each field row in a DAT Query has a copy icon. Selecting it adds a second row for the same field, ready to configure on its own.

A role for each copy. The duplicate is a separate row with its own Role, so the same field can be grouped on in one row and aggregated on in another.

Two aggregates of one field. A number can appear as both a Sum and an Average in the same DAT Query, each in its own row.

Why it matters

A DAT Query often calls for the same field in more than one role. A date can group the rows and count them. A balance can show as a total and as an average in the same view. Duplicating a row makes both uses visible on screen: two rows, one field, each with its own job.

A few ways to talk about it

  • A copy icon on every field row puts the same field to work in two roles.
  • Group on a field and aggregate on it in the same DAT Query.
  • Show a value as both a Sum and an Average, side by side.

Available now to all PCR Educator schools. Your account team can walk you through the duplicate-row button whenever you're ready.

Posted May 27, 2026

A calculated field in a PCR Educator DAT Query can now reference another field by its alias name in square brackets, for example [Absences in Class] * 100.0 / [Total Absences]. The expression reads in plain English, and the DAT Query stays correct when fields move.

What's new

Reference by name. A calculated field can name the field it needs by its alias, written in square brackets. The alias is the field name you already see in the query.

Stable when fields move. An alias reference points to a field by name, so reordering or duplicating fields keeps every calculation correct. PCR Educator resolves the alias to the field when the DAT Query runs.

Readable expressions. An expression like [Gifts This Year] minus [Gifts Last Year] explains itself. The next person who opens the DAT Query can read the math directly.

Why it matters

Naming the field keeps the meaning of a calculation visible on the page. An expression built from aliases reads the way a school talks about its data. Concentration ratios, year-over-year deltas, and weighted averages can be written with names that say what they mean, and the DAT Query keeps working when someone rearranges the fields later.

A few ways to talk about it

  • Calculated fields in a DAT Query reference other fields by name, so the math reads in plain English.
  • Reorder or duplicate fields freely. Alias references stay pointed at the right field.
  • Concentration ratios, year-over-year deltas, and weighted averages, written the way you would say them.

Available now to all PCR Educator schools. Your account team can walk you through alias references in a DAT Query whenever you're ready.

Posted May 26, 2026

This filter identifies students who have reached a specified number of absences in the current semester. It uses the new Division Calendar table so the filter automatically scopes to the current marking period and semester, with no date editing required at the start of each term.

When to use

Schools often want to notify parents and admins when a student crosses an absence threshold: for example, 5 absences, 7 absences, 9 absences, and so on. Build one filter per threshold. Each filter feeds a separate Notification Trigger that sends exactly one email per threshold per student per semester. See FAQ: Configuring Absence Threshold Notification Trigger for the trigger configuration.

Filter structure

The completed filter follows this tree:

  • Student Info
    • Period Attendance And Discipline
      • Count of Period Attend Disc Id > 4
      • Division Calendar ((attendance only))
        • School Id = 1

The Division Calendar ((attendance only)) child is the join that makes the filter scope to the current semester. For the Division Calendar feature itself, see Update: Division Calendar, Now in Data Analytics.

Steps

  • Navigate to Scheduling > Students.
  • Click the filter funnel icon next to the Select Saved Filter... dropdown above the student grid.
  • In the Add Filter Item dropdown, pick New Filter and click Add.
  • The query tree appears with Student Info as the root. Click the + icon next to Student Info.
  • In the second dropdown at the top of the Connect modal (to the right of With), pick Period Attendance And Discipline.
  • Click Select on the Student Info > Period Attendance And Discipline path.

Note: Always pick the destination table from the second dropdown at the top of the Connect modal. The Find Table autocomplete and Search button below open a Connect To dialog that does not list path-registered variants like Division Calendar ((attendance only)).

  • The Period Attendance And Discipline conditions modal opens. In the Conditions row:
    • Change the first dropdown from Field to Calculated/Aggregate.
    • Set the aggregate function to Count.
    • Pick the field Period Attend Disc Id.
    • Change the operator to >.
    • Type the threshold value (for example, 4 for a "5 or more absences" filter, since greater-than-4 catches 5, 6, 7, ...).
    • Click Add.
  • Click Save on the Period Attendance And Discipline modal.
  • Back on the query tree, click the + icon next to Period Attendance And Discipline.
  • In the Connect modal, click the second dropdown (to the right of With) and pick Division Calendar ((attendance only)).
  • In the Division Calendar ((attendance only)) conditions modal, add a condition: Field School Id, operator =, value the school_id for the division you want to scope to (commonly 1). Click Add, then Save.
  • Back in the Filter modal, click Save at the bottom.
  • On the Save Filter page, type a clear name in Filter Name (for example, "Absences 5 or More, Current Semester") and click Save New.

The filter is now available as a Merge Filter on any Notification Trigger that targets students, and is also selectable from the Students page Select Saved Filter dropdown.

Cloning for additional thresholds

To create the filter for 7, 9, and higher thresholds, repeat the steps and change only the threshold value in the Count condition. Because Division Calendar always returns the current semester for each division, these filters do not require updates when the semester or academic year rolls over.

Example: For a "7 or more absences" filter, the Count condition is Count of Period Attend Disc Id > 6. For "9 or more," use > 8.

Notes

The aggregate condition lives on the parent table (Period Attendance And Discipline), not on Division Calendar. The Division Calendar join scopes which attendance records are counted to the current semester. The aggregate condition counts them.

The variant name in the second dropdown (here Division Calendar ((attendance only))) reflects the specific join path registered for that source table in dmt_table_joins. Other source tables may show different Division Calendar variants.

Posted May 22, 2026

Setting up a field in a PCR Educator DAT Query is one choice. The Fields step gives each field a single Role: Group, Aggregate, or Pivot. Choose the role, and the controls that role needs appear with it.

What's new

One Role per field. Each field in a DAT Query has a single Role with three values: Group, Aggregate, and Pivot. The role drives how the field behaves in the query.

Controls that match the role. Choosing a role brings up the controls it needs. The Aggregate role brings the function and Partition By options. The Group role keeps the row simple.

Pivot offered where it fits. The Pivot role appears for fields that are eligible to be pivoted.

Why it matters

One decision sets up a field. The field grid stays focused on what each row actually uses, so a DAT Query is quick to build and quick to read, especially for someone building their first one.

A few ways to talk about it

  • Field setup in a DAT Query is one Role choice per field: Group, Aggregate, or Pivot.
  • Each role brings its own controls, so the grid shows what the field actually uses.
  • Quick to learn on a first DAT Query, quick to scan on every one after.

Available now to all PCR Educator schools. Your account team can walk you through the Role column whenever you're ready.

Posted May 21, 2026

PCR Educator's Data Analytics Tool now lets you decide what an empty cell should say. A new If Empty column on the Fields tab takes any placeholder you type, in any format the field supports, and renders it wherever the data is blank. Reports that used to leave readers guessing now finish their own sentences, in your school's own language.

Why it matters

When a query pulls data from more than one source, for example "show me all students, and their check-in status for today," some students will not have a matching record. Out of the box those cells appear empty, and the reader is forced to interpret. Is the data missing? Is the student absent? Did the report break? Each guess sends staff down a different path, and most of those paths are wasted time.

If Empty removes the ambiguity. You decide what an empty cell should say, so your report reads exactly the way you want it to, the first time, every time.

How it works

  1. Add any field to your query.
  2. On the Fields tab, find the new IF EMPTY column (it sits between Aggregate and Pivot Aggregate).
  3. Type the value you want to display when the field is blank.
  4. Save the query and run it. Every empty cell in that column now shows your chosen value.

The control adapts to the field type automatically, so the placeholder you type always matches what the field would normally hold:

  • Text fields get a text box, and the placeholder also replaces empty strings, not just NULLs.
  • Number fields get a text box for a numeric placeholder.
  • Yes/No fields get a checkbox.
  • Date fields get a date picker.
  • Date and time fields get a date and time picker.
  • Time fields get a time picker.

Examples in practice

Check-In Status. Set the placeholder to "Not checked in." Viewers see "Not checked in" wherever a student has no check-in record, instead of a blank cell.

Solicitor Assigned. Set the placeholder to "Unassigned." Development reports surface prospects with no owner, so the gift officer who runs the list knows exactly where to start the week.

Emergency Contact Phone. Set the placeholder to "Missing, please update." Staff see a clear call to action instead of an empty field, and the gap closes itself.

Tuition Balance. Set the placeholder to 0.00. Totals add up correctly, exports stay numeric, and the business office stops chasing phantom rows.

Photo Consent. Set the placeholder to "Not on file." Plain English replaces an unchecked box, so the reader does not have to guess whether unchecked means "no" or "not yet asked."

Key benefits

Cleaner reports. No more mystery blank cells, no more reports that read as if they are half finished.

Better communication. Replace technical emptiness with plain English meaning, in your school's vocabulary.

Smarter exports. Excel and PDF exports carry the replacement value, so downstream consumers, board members, parents, and auditors all see the same thing the on-screen reader sees.

Safer joins. When you combine tables with optional relationships, for example students with or without donations, every row reads coherently. Optional joins stop creating cognitive load.

No formula required. Type a value, save, run. No SQL, no expressions, no training, no help-desk ticket.

Where to find it

DAT, then open or build a query, then the Fields tab. The new IF EMPTY column sits between Aggregate and Pivot Aggregate. The feature is available on every field, in every query.

Compatibility

Existing queries are unaffected. The column is optional and defaults to blank, so reports built before this release continue to behave exactly as they always have. Adopt If Empty on the queries that need it, on your own timeline.

A few ways to talk about it

  • Blank cells now say what you mean: type a placeholder, save, run.
  • One control adapts to every field type: text, number, checkbox, date, time.
  • Cleaner joins, cleaner exports, no formulas required, no SQL.

Available now to all PCR Educator schools. Your account team can walk you through the new column, and the examples above, whenever you're ready.

Posted May 21, 2026

PCR Educator Data Analytics has a new table called Division Calendar. It exposes each division's current Marking Period, Semester, Academic Year, Admissions Year, Development Year, and Fiscal Year as a single always-current row per school. Saved filters, queries, and notification triggers can reference the current period directly, and the values stay accurate as the calendar rolls over.

What's new

One row per division. Division Calendar returns the current calendar values for every division a school runs, keyed on School Id, with columns for Marking Period, Semester, Academic Year, Admissions Year, Development Year, and Fiscal Year.

Division-aware values. Schools that run different calendars per division (Lower, Middle, Upper, or multi-campus) get the right current value for each division automatically.

Drop-in join for any table. Join Division Calendar to any existing table on School Id to scope a full DAT report or notification trigger to "this division's current marking period," "this division's current academic year," and so on.

Cross-departmental coverage. Academics, Admissions, Business Office, and Development all reference the same shared current-period table, so dashboards stay aligned across roles.

Why it matters

Build a filter once and it keeps working term after term, year after year. A query like "students with 5 or more absences in the current marking period" reads the current value from Division Calendar and stays correct as the calendar advances. Reports and notification triggers stay aligned to the actual calendar each division follows, automatically.

Example queries

  • All students with 5 or more absences in the current Marking Period for their division
  • Inquiries created in the current Admissions Year, by division
  • Giving totals year-to-date for the current Development Year
  • AR aging snapshot inside the current Fiscal Year
  • Gradebook averages for sections in the current Semester

A few ways to talk about it

  • Filters that stay current automatically: build once, reuse across every term and every year.
  • One shared source of truth for the current period across Academics, Admissions, Business Office, and Development.
  • Division-aware by design: Lower, Middle, and Upper school dashboards each read the right calendar value automatically.

Available now to all PCR Educator schools. Your account team can walk you through Division Calendar whenever you're ready.

Posted May 20, 2026

A Household Notification Trigger is a notification trigger that operates on a Household record rather than on an individual student. It parallels the existing Student trigger type and is available automatically in the trigger Category dropdown.

PCR Educator has added the Household trigger type so that schools can send a single message per family for events that are inherently household-level, such as tuition billing, re-enrollment, annual giving, and emergency communication. This is a major step forward for schools that have wanted family-level automation without the duplication that comes from looping over each student.

The Household trigger appears in the Category dropdown for any school running notifications on a supported build.

How the Household trigger works

The Household trigger reads from the Household record as its primary scope. The condition query is written against Household fields, and the resulting message is addressed to the household rather than to a single student.

The Household trigger supports the full set of suppression controls. See Notification Trigger Suppression for the SendOncePer, MaxFiresPerScope, and PeriodScopeSchoolId fields and how each is evaluated.

Roles required

The Notification Triggers page is restricted to users with the Security Full role. The same role is required for creating and editing Household triggers.

Configuring Household Trigger

  • Open the Notification Triggers page in Campus.
  • Click Add Trigger.
  • In the Category dropdown, select Household.
  • Define the condition query against the Household record.
  • Set the message template, recipients, and schedule.
  • Optionally set the suppression fields described in Notification Trigger Suppression.
  • Save the trigger.

Example: A trigger that fires when a household has any unpaid invoice over thirty days past due, configured with SendOncePer set to one fire per billing cycle.

Use cases by department

Business office and finance

  • A tuition past-due reminder that fires once per household per billing cycle rather than once per student.
  • A reminder to refresh autopay banking information, capped at one fire per household per year.

Admissions and enrollment management

  • A re-enrollment open notification that lands once per returning family on the published open date.
  • A withdrawal-risk outreach trigger for households flagged by year-over-year engagement scoring.

Advancement and development

  • A capital campaign pledge reminder gated by SendOncePer so donors are not approached twice in the same quarter.
  • A legacy family milestone notification when cumulative household giving crosses a recognition threshold.
  • A parents association membership renewal reminder tied to the household record.
Posted May 20, 2026

Notification Trigger Suppression is a set of controls on every Notification Trigger that limits how often the trigger may fire, both per target record and across the school as a whole. Suppression keeps automated communication useful by preventing the same family, student, or staff member from receiving the same message more often than the school intends, and by capping the total number of fires for high-risk triggers within a defined period.

Suppression applies to every trigger Category, including Student and Household. When a quota cap is reached, the trigger is suppressed quietly. The underlying condition query is not modified, and no error is raised.

Roles required

The Notification Triggers page is restricted to users with the Security Full role. The same role governs all trigger Categories and all suppression fields.

Suppression fields

Every Notification Trigger exposes the following fields.

  • SendOncePer defines the minimum interval that must pass between two fires of the same trigger for the same target record. The interval is anchored to the school's calendar period.
  • MaxFiresPerScope caps the total number of fires for the trigger within the defined period, counted across all target records at the school.
  • PeriodScopeSchoolId identifies the school whose calendar period anchors both the SendOncePer interval and the MaxFiresPerScope window. The period boundary follows the school's fiscal or academic calendar as configured.

Note: SendOncePer is evaluated per target record. MaxFiresPerScope is evaluated across the school. The two fields are independent and may be used together.

How suppression is evaluated

When a Notification Trigger is scheduled to fire, the system performs the following checks in order.

  • The trigger condition query is evaluated against the target Category, producing a candidate set of records.
  • For each candidate record, the SendOncePer interval is checked against the trigger's fire history. Candidates that fired within the interval are dropped.
  • The MaxFiresPerScope cap is checked against the trigger's fire history for the current period. If the cap has been reached, the remaining candidates are dropped.
  • The trigger fires for the surviving candidates, and the fire history is updated.

Example: A trigger with SendOncePer set to one fire per billing cycle and MaxFiresPerScope set to five hundred fires per cycle will fire at most once per target record and at most five hundred times in total across the school within a single billing cycle.

Configuring suppression

  • Open the Notification Triggers page in Campus.
  • Open the trigger to edit.
  • Set SendOncePer to the desired per-record interval.
  • Set MaxFiresPerScope to the desired total cap, or leave blank for no cap.
  • Set PeriodScopeSchoolId to the school whose calendar anchors the period.
  • Save the trigger.

Note: Leaving SendOncePer blank allows the trigger to fire on every evaluation cycle that matches the condition. Leaving MaxFiresPerScope blank removes the total cap. Both behaviors may be appropriate for low-volume triggers, but should be reviewed before saving.

Use cases

  • A tuition past-due reminder configured with SendOncePer set to one fire per billing cycle, so the same household receives the reminder at most once per cycle.
  • A capital campaign pledge reminder configured with SendOncePer set to one fire per quarter, so donors are not approached more than once per quarter.
  • A severe weather closure notice configured with MaxFiresPerScope set to a sensible cap per academic term, so a string of incidents does not generate excessive messages across the school.
  • A re-enrollment reminder configured with SendOncePer set to one fire per enrollment season, so each family receives a single reminder per season.

Note: Suppression applies to the trigger itself. If two separate triggers are configured to send similar messages, each trigger maintains its own suppression history.

Posted May 19, 2026
The DAT Query is the core part of our Data Analytics Tool that allows you to create custom data sets.  You can then use these data sets for:

- DAT Dashboard Element

- DAT - Printing Results

- DAT Multi-Action

DAT Query items can be categorized and shared with other users based on user roles.

Here is a comprehensive index of the articles for DAT:
DAT Query
--DAT Group
--DAT Dashboard Element
--DAT Chart
--DAT Grid
--DAT Query and DAT Filter Common Mistakes
--DAT Multi-Action
--DAT Calculated/Aggregate Field Condition
--Accessing DAT Query
--Creating New DAT Query
----DAT Query - Step 1
------DAT Query - Step 1 - Choosing Initial Table
------DAT Query - Step 1 - Adding Conditions
--------DAT Field Condition
----------DAT Operator
----------DAT Functional Operator
--------DAT Parameterized Condition
------DAT Query - Step 1 - Selecting Display Fields
--------DAT Display Field
--------DAT Key Id Field
------DAT Query - Step 1 - Connecting Tables
----DAT Fields - Step 2
------DAT Fields - Step 2 - Uniqueness
------DAT Fields - Step 2 - Customizing Display Fields Appearance
------DAT Fields - Step 2 - Sorting
------DAT Fields - Step 2 - Aggregating
------DAT Fields - Step 2 - Pivoting
------DAT Fields - Step 2 - Adding Calculated Field
------DAT Fields - Step 2 - Totaling
----DAT Column Order - Step 3
----DAT Results - Step 4
------DAT - Printing Results
--------DAT - Creating Templates
--------DAT - Using Templates
----DAT Chart - Step 5
----DAT Save - Step 6
-DAT Diagrams
-DAT Webinar - Attendance
--DAT - Attendance Data Structure
--DAT - Lunch Choices Data Structure
--DAT - Check In / Check Out Data Structure
-DAT Webinar - Development Level I
--DAT - Development Data Structure
-DAT Webinar - Finance
--DAT - Finance AR Data Structure
--DAT - Finance AP Data Structure
--DAT - Finance AR Customer Statement Data Structure
-DAT Webinar - (Re) Enrollment
--DAT - (Re) Enrollment Data Structure
-DAT Webinar - Scheduling
--DAT - Scheduling Data Structure
-DAT - Admissions Evaluations Data Structure
-DAT - Admissions Inquiries Data Structure
-DAT - Admissions Inquiry Actions Data Structure
-DAT - Admissions Inquiry Action Types Data Structure
-DAT - Basic Student Data Structure
--DAT - Common Student Tables: Actions
--DAT - Common Student Tables: Households
--DAT - Common Student Tables: Statuses
-CMS Widget - Report Runner
-CMS Widget - Simple Report Runner

Posted May 19, 2026
DAT Fields - Step 2
The DAT Fields - Step 2 (DAT > Queries > Fields) is an optional step for creating a DAT Query. The DAT Fields - Step 2 step covers the following features:

- DAT Fields - Step 2 - Customizing Display Fields Appearance

- DAT Fields - Step 2 - Sorting

- DAT Fields - Step 2 - Aggregating

- DAT Fields - Step 2 - Pivoting

- DAT Fields - Step 2 - Uniqueness

- DAT Fields - Step 2 - Adding Calculated Field

- DAT Fields - Step 2 - Totaling

Path refers to the table for the field.  Sometimes you might have the field appear multiple times and this path helps you distinguish which field is which.

Field is the name of the field being referenced.

Each field is a row in the field grid.

Role determines how the field behaves in the query. Each field row has a single Role with three values: Group, Aggregate, and Pivot. Selecting a Role shows only the controls that role needs. The Pivot role is offered only for fields that are eligible to be pivoted. See DAT Fields - Step 2 - Aggregating and DAT Fields - Step 2 - Pivoting.

To use the same field in more than one way, select the copy icon on its row. The copy icon adds a second row for the same field, and the duplicate carries its own Role and settings. For example, one field can be grouped on in one row and aggregated on in another row of the same query.
Posted May 19, 2026
Aggregation is a part of the DAT Fields - Step 2 process. It applies an aggregate function to a field.

To aggregate a field, set its Role to Aggregate, then choose the aggregate function. An aggregate function can be applied to any numeric DAT Display Field.

Example:  You have selected fields for customer and invoice total.  You can use the sum aggregate to get the invoice totals for customers.  Suppose you now change that to have customer, invoice date, and invoice total.  Now, when you use the sum aggregate on the invoice total, you will get the daily invoice total for customers.  Each additional field you have in your result will further determine how the Aggregate is calculated.

    - Count will give a count of all the values.

    - Distinct Count will give a count of unique values.

    - Average will give the arithmetic mean - defined as Sum / Count

    - Max will find the maximum value.

    - Min will find the minimum value.

    - Sum will add up all the values.

Partition By

An Aggregate field can optionally use a Partition By column. Partition By computes the aggregate across a wider group than the row it sits on, without changing how the query is grouped. Select the Partition By column from the typeahead.

With no Partition By selected, the Aggregate field behaves as a standard aggregate. With a Partition By column set, the aggregate is calculated across the wider partition while each row stays grouped at the level of the query. This produces running totals, subtotals, and share-of-whole values within a single query.

Examples

    - Show each course's enrollment next to the department's total enrollment, in the same row.

    - Show a donor's gift total next to the campaign's total raised.

    - Show a student's tardies for the marking period next to the full-year tardy count.
Posted May 19, 2026
Pivoting is a part of DAT Fields - Step 2 process and it allows converting rows to columns for the purpose of counting, summing, averaging, or finding min/max values for your data.

To pivot a field, set its Role to Pivot, choose the aggregate function and the target field to count or sum, and provide the condition that lists the values you want as columns. Each value in that list becomes its own column on the result.  Only DAT Display Fields that have a Multi-Select condition from the DAT Query - Step 1 - Adding Conditions step are eligible to be pivoted.  The multi-selected values become new columns on the result and will show the values in the rows according to the aggregate function.  Example:  The 1099 query for merging 1099 MISC in finance has a condition on Box Number for values 1 through 14.  The pivot aggregate function is a Sum on the Box Paid Amount.  The resulting output lists each box number as a column, and the value for each column is the sum of the paid amounts for that box number for each vendor.

Example: An attendance query can pivot the attendance type into separate columns. Absent, Absent Excused, Late, and Late Excused each become a count column, so each student row shows the four counts side by side.
Posted May 19, 2026
Calculated fields are dynamic formula-based fields added to a DAT Query in DAT FIelds - Step 2. 

To add a new calculated field:
     - Identify the numerical or character fields and their corresponding variable names listed in the first column of the grid.  Note:  You cannot mix character and numeric fields in a calculated field.  Note:  Even if the character field has numeric data, it is only eligible for character fields.  Example: The student Alternate Id field is a character field.  Even if you have numbers in this field, it is still only eligible for a character calculated field.
    - Specify the formula below the grid. Reference each field either by its variable name from the first column of the grid, or by its alias in square brackets, for example [Total Absences]. PCR Educator substitutes the reference for the field when the query runs. Example: A / 100 Example: A * B  Example: B +', ‘ + A
    - Click “Add Calculated Field”

Note: Calculated fields can be constructed from other calculated fields.

Note:  For numeric fields, the type of number shown is determined by the type of numbers involved in the formula.  If only integer numbers are used, the result will be an integer number.  If a decimal number is used at any point, then the result will be a decimal number.  Example: Suppose A represents an integer column.  A / 100 will result in an integer value.  If the value for A is less than 100, the result will be 0.  Example:  Suppose A represents an integer column.  A / 100.0 will result in a value with decimals because the divisor is a decimal.

Note: The following characters may be used to create numeric calculated fields:


( ) Parenthesis controlling the order of mathematical operations. Note: Opening and closing parenthesis must match.
+ Addition
- Subtraction
* Multiplication
/ Division
A-ZZ Variable names corresponding to an existing field.

Note: A calculated field may not be added if the resulting number is too large, too small, or results in an invalid mathematical result.  Example: Division by 0.

Note: The following characters may be used to create character calculated fields:

( ) Optional.  Parenthesis control the order of operations.  Note: Opening and closing parenthesis must match.  Note: Parenthesis are permitted but unnecessary for character calculated fields.
+ Concatenate characters or fields
' Use single quotes (apostrophes) to designate characters included in the calculated field.  Example:'First: ' + A + ' Last: ' + B  Note: Apostrophes must always appear in pairs.  Note: Currently, it is not possible to include an apostrophe as a character in the calculated field. Note: To add a space between fields, input two apostrophes with a space between them. Example: A + ' ' + B + ' ' + C . . .  
A-ZZ Variable names corresponding to an existing field.

Note: The following characters are not supported in calculated fields and will prevent the field from being added:
     - -- (double hyphen)
     - ; (semicolon)

Note: A field can be referenced by its alias name in square brackets, for example [Absences in Class] * 100.0 / [Total Absences]. An alias reference stays correct when fields are reordered or duplicated, because it does not depend on the field's position in the grid. Variable names and alias references may be used in the same formula.
Posted May 18, 2026

PCR Educator's check-in / check-out kiosk has grown from a simple sign-in log into a connected workflow that touches attendance, billing, admissions, and advancement. With the May 2026 release tying the kiosk into period attendance, this is a good moment to look at every workflow it now supports. Most schools use one or two. The module supports nine.

What it does

Front-desk sign-in and sign-out. Receptionist records a student or staff arrival or departure with a reason code, a comment, and a full audit trail on both legs of the trip.

Period attendance write-back. New in May 2026. Mid-day sign-out marks the in-session period Leaving Early. On return, the in-session period flips to Late and missed periods reconcile cleanly. Teacher entries are never overwritten.

Aftercare and extended-day billing. A fee schedule maps each program and time window to a billable product. The business office reviews matched records and runs Create Invoice to post line items to family ledgers in a batch.

Self-service family kiosk. Parents, students, emergency contacts, and authorized pickups can sign in or out using credentials, a student ID scan, or a five-digit pincode. Pincode scope is configurable as unique per household or unique across the database.

Bulk dismissal and field trips. Multi-action surfaces in the student list let a coordinator check an entire cohort in or out with one click.

Health office and counselor visits. Programs and reasons are lookup driven, so the same kiosk handles Health Office, Counseling, Late Pickup, and Early Release with their own audit trails on the student profile.

Reporting in Administrator and Finance. The same list view is mounted in both roles, so each team sees the records it owns through familiar filters and saved queries.

Mail and email merge. Templated letters and emails run directly off a selection of check-in records, with merge fields tied to the entity.

Admissions and donor event check-in. A dedicated event flow matches an inquirer's or donor's household to admissions and advancement events scheduled within plus or minus one hour of the current time, then credits attendance to the right event.

Why it matters

The lobby kiosk and the rest of the platform now share one record. Front-desk staff, faculty, the business office, admissions, and advancement see the same student under the same household, with the same audit trail. Emergency rosters reflect who is on campus right now. Aftercare invoices match the time the family actually picked up. Period attendance reflects the kiosk in real time. The work that used to live in different systems, or in different spreadsheets, now lives in one.

A few ways to talk about it

  • One kiosk, nine workflows, one student record. From morning arrival to admissions tours to aftercare invoicing.
  • The May 2026 release ties sign-out and return directly to period attendance. Teacher entries always win.
  • Most schools are using one or two of these. The other seven are already in your platform.

Available now to all PCR Educator schools. Your account team can walk you through any of the nine workflows whenever you are ready.

Posted May 14, 2026

PCR Educator filters now support count, sum, and average conditions, the same aggregate logic that has long lived inside DAT queries. Schools can build saved filters that find students based on how many records they have or how much something totals, then drop those filters into notification triggers, contracts, or anywhere else a saved filter is used.

What you can build

Aggregate filters answer the questions schools ask every day:

  • Students with more than 8 absences this semester
  • Students with more than 4 discipline points in the current marking period
  • Students with at least 3 tardies in any marking period
  • Students who have any record in a given table

Build the filter once. Reuse it everywhere a saved filter is selected.

Key capabilities

Six aggregate functions. Sum, Count, Count Distinct, Average, Min, and Max are available across supported fields.

Time-window scoping. Combine aggregate conditions with marking period, semester, academic year, admissions year, fiscal year, or development year, so counts stay inside the window that actually matters.

Round-trip editing. Save an aggregate filter, reopen it, and the condition reads cleanly (for example, "Count of records > 4").

Plain-English filter descriptions. Saved aggregate filters describe themselves in the filter list and pickers, so the next person who picks one up understands what it does at a glance.

Why it matters

A request like "find students with more than 4 discipline points in the current marking period" used to require a custom DAT report or a one-off query. Now it is a single saved filter that any teacher, advisor, or admin can reuse, drop into a notification trigger, or attach to a contract. Logic that lived only in the reporting layer is now usable across the system, in the same place schools already manage their saved filters.

A few ways to talk about it

  • Filters now ask aggregate questions: count, sum, average, min, max, count distinct.
  • Save once, reuse everywhere: notification triggers, contracts, and any picker that takes a saved filter.
  • Time-aware counts: scope to marking period, semester, academic year, admissions year, fiscal year, or development year, so the math matches the calendar.

Available now to all PCR Educator schools. Your account team can walk through example filters whenever you're ready.

Posted May 13, 2026

PCR Educator notification triggers can now fire on a school-calendar rhythm: once per marking period, once per semester, or up to N times per academic year. The new period-aware quotas sit alongside the existing rolling-day floor, so schools control exactly how often a parent or staff member hears from the system.

What's new

"Maximum fires per" period quotas. A new dropdown on every trigger caps notifications by Marking Period, Semester, or Academic Year. Combine it with "Maximum number of fires" to express patterns like "up to 3 escalation emails per semester."

"Minimum days between fires" (renamed for clarity). The legacy frequency floor now reads exactly as it works. Period quotas and day floors apply independently, so a single trigger can be both "at most 3 per semester" and "at least 14 days apart."

"School division for period." Students sit in many divisions at once, so the admin explicitly picks which division's calendar defines the period boundaries. The dropdown appears only when the scope needs it, requires a selection, and includes three layers of safeguards so a misconfigured trigger never silently skips suppression.

Framework-level coverage. Attendance, gradebook, discipline, balance-low, action reminders, and any future trigger type inherit the new options automatically, with no per-type configuration work.

Why it matters

Suppression now aligns to the actual school calendar. Configure "semester, max 3 fires" once and a 4 / 7 / 9 absence escalation ladder resets cleanly when the semester turns over. Parents see the right number of messages at the right cadence, and admins stop approximating "a semester" with a day count that drifts from the calendar. Existing triggers keep running exactly as they do today, because the new options are additive and opt-in per trigger.

A few ways to talk about it

  • Notification triggers now speak your school's calendar: once per marking period, once per semester, or up to N times per academic year.
  • Configure escalation ladders in one place. 4 absences, 7 absences, 9 absences. Three emails per semester, not three hundred.
  • Two independent rules, one trigger: minimum days between sends, plus maximum sends per period. Both apply, both protect parents from email overload.

Available now to all PCR Educator schools. Your account team can walk you through the new dropdowns whenever you're ready.

Posted May 11, 2026

Your check-in / check-out kiosk now updates period attendance in real time. When a student signs out mid-day, the class in session is marked Leaving Early (or your school's configured code), and the rest of the day can auto-mark as Absent. When that student returns, the record reconciles itself: the in-session class flips to Late, and any missed periods in between are filled in cleanly.

What's new

Real-time mid-day check-out. Current period reflects the student's status the moment they sign out.

Automatic reconciliation on return. The system recognizes a student coming back and adjusts the record without anyone touching the grid.

Teacher entries always win. The kiosk only updates rows it created. Manual teacher entries stay untouched, so the classroom remains the source of truth.

Configurable per school. Leaving Early, Absent, and Late codes come from your existing widget settings. Your wording, your policies.

Every sign-in mode supported. Username and password, student ID, and PIN-only kiosks all run the same integrated flow.

Full audit trail. Every automatic change is logged for administrator review.

Why it matters

Emergency rosters reflect who is actually on campus right now. Teachers see accurate period attendance the moment a student walks back in. Front-desk staff and faculty stay aligned without extra steps, and your school keeps full control over the codes applied in every scenario.

Available now to all PCR Educator schools using the check-in / check-out kiosk. Your account team can walk you through the configuration options whenever you're ready.

Posted May 04, 2026
Posted May 01, 2026

The Actions (Delete) multi-action allows mass deletion of selected students' actions. To access this multi-action, navigate to Administrator > Students. You need the Admin Full, Admin Read, Registrar Full, or Registrar Read role to access this page. You need the Actions Full role to use this multi-action. Select the desired students, and choose the multi-action Actions (Delete).

On the following page, choose the academic Year and the Action. Click the "Delete Actions & Files" button to delete the matching actions along with any files attached to them. To remove only the files attached to those actions and keep the actions themselves, click the "Delete Files Only" button instead.

Posted April 26, 2026

We have refined two parts of the PCR Educator interface to give you a cleaner workspace and quicker access to the controls you use most.

Main selectors now live in the menu. Year, term, division, ledger, and other context controls are consolidated in the main menu.

Widget configuration is now on each widget. Click the settings (gear) icon on any widget to open its configuration. Every option you had before is one click away.

The result is more room to work, more consistent navigation across modules, and a stronger foundation as we continue to expand the platform.

Our support team is happy to walk you through the new layout anytime.

Posted April 25, 2026

Stripe Vendor Payment is a Finance feature in PCR Educator that lets your school send electronic payments to vendors through Stripe Financial Connections, replacing paper checks with direct ACH transfers. Vendors connect their own bank accounts through the vendor portal, so your finance team does not collect or store vendor banking information.

This article walks through the school-side setup. Setup takes about 15 to 20 minutes of work on your end, plus 1 to 2 business days for Stripe to verify the application.

Required role: To configure Stripe Vendor Payment, the user must have access to Finance > Maintenance in PCR Educator.

Before you start

Please have the following ready:

  • An authorized financial signer who can complete Stripe's identity and business verification.
  • Your school's banking details for the payout account.
  • The General Ledger account you want tied to electronic payouts.

Creating the Stripe Financial Connections account

  • Go to https://stripe.com and click Sign up. If your school already has a Stripe account, log in instead.
  • When prompted to select a product, enable Stripe Financial Connections.
  • Complete the business verification fields. When Stripe asks how your platform is configured, use the values below exactly. These match the integration PCR Educator has built against Stripe Connect. Changing them will cause the connection to fail.

Funds flow: Buyers will purchase from you. Sellers will be paid out individually.

Industry: Business management software

Account creation: Onboarding hosted by Stripe

Account management: You will redirect sellers to the Express Dashboard to manage their Stripe account.

Liability for refunds and chargebacks: You are responsible for refunds and chargebacks to buyers.

  • Confirm the Connect Platform Agreement when prompted.
  • Submit the application. Stripe typically verifies within 1 to 2 business days.

Sending the Stripe Customer ID to PCR Educator

Once Stripe approves your account:

  • From your Stripe dashboard, copy your Stripe Customer ID. This is the identifier PCR Educator uses to link your school's Stripe account to your PCR Educator portal.
  • Send the Stripe Customer ID to PCR Educator support through your established secure channel. Do not email it in plain text.
  • PCR Educator will configure Stripe as a payment method on your portal and confirm when it is live.

Note: At this time, the Stripe Customer ID is configured by PCR Educator support on your behalf. A self-service field is on the roadmap.

Connecting the payout account

Once PCR Educator confirms Stripe is configured on your portal:

  • Log in to PCR Educator.
  • Navigate to Finance > Maintenance > External Payment Accounts.
  • Click New and select your connected Stripe account.
  • Link the payout account to the General Ledger account you want associated with electronic payouts.
  • Save.

Your payout account is now active and available for payment runs.

Inviting vendor to the vendor portal

Vendors connect their own bank accounts through the PCR Educator vendor portal. Your team does not collect, store, or manage vendor banking information.

To send invitations:

  • Go to Finance > Vendors.
  • Select the vendors you want to onboard.
  • Use the Send Vendor Portal Invitation action.

Each vendor receives an email with portal credentials and a link to connect their bank account.

Running electronic payment

When your finance team generates a payment batch and selects a Stripe-enabled payout account, the system automatically issues electronic transfers to every vendor with an active connected bank account. Vendors who have not yet connected a bank account continue to receive paper checks. Both methods run inside the same payment batch.

Common question

Do we still need to print checks? Only for vendors who have not connected a bank account through the portal. The system handles both methods in one payment run.

Where do vendors see their payment status? The vendor portal displays pending and completed payouts.

What if a vendor's bank details change? Vendors update their own information through the portal. No action is required from your finance team.

Are there transaction fees? Stripe charges standard ACH fees per transfer. Review Stripe's current pricing on their website.

Can we reverse an electronic payment? Once submitted, ACH transfers follow Stripe's standard reversal rules. Contact PCR Educator support immediately if a payment was issued in error.

For help with any step, open a ticket through the PCR Educator customer portal. Include your school name and the step where you are stuck.

Posted April 20, 2026
Posted March 31, 2026
A Notification Template is a versatile communication tool used to design and automate mass messaging across multiple platforms, including Email, SMS (Text), and Voice. It allows users to create standardized layouts with dynamic data fields, ensuring consistent communication.

Note: To send notifications to students, parents, and staff, the Send Mail field must be enabled in their respective households. To send notifications to Development Contacts, the Development Send Mail field must be enabled.

To create a new Notification Template, follow the steps in Creating Notification Template.

The One email per student/household combination option sends an email to the student for each household they are associated with, provided both the student and household email fields are selected. The One email per student option sends a single email to the student, even if the student is associated with multiple households.

Template Group is used to categorize templates for easier retrieval. To create a Notification Template Group, follow the steps in Creating Notification Template Group.

To Emails/Phones define which fields are used when sending notifications. At least one email or phone recipient field must be selected before sending.

Sender fields define the "From" identity. Users can insert dynamic tags like [[SenderEmail]] to ensure the reply-to address matches the specific staff member sending the message.

Copy (CC/BCC) allows for internal tracking of sent messages. Options include:
     - First: Only sends a copy for the first recipient in a batch.
     - All: Sends a copy for every single message sent (use with caution).
     - No Copy: Disables internal copies.

The Action dropdown associates a notification to a specific action to categorize or use for reporting purposes.

Action Year associates the notification with a specific academic or admission cycle (e.g., the 2025-2026 school year), ensuring the activity is recorded in the correct historical context.

AI Prompt and AI Prompt Query allow users to leverage integrated AI to generate or refine message content.

Add Fields provides a dropdown list of available database columns. Selecting a field and clicking Subject, Sender, or Body will insert the dynamic placeholder into that specific area.

Save Template allows a user to name and store a template for future use. Note: Only the template creator can update the template. A different user may save the template with a new name, which will create a new template. Note: A Notification Job Type is required to categorize the notification.

Email Body contains the email content. The body must contain at least 10 characters before sending.

Phone Message Body contains the SMS or voice message content. The body must contain at least 3 characters for text messages and at least 50 characters for voice messages. Note: For text messages, the interface includes a calculator that estimates the number of segments being sent, as anything over 160 characters typically counts as multiple messages.

The Preview button opens a modal popup showing exactly how the message will look with merged data. In the preview mode, you can click the Edit icon to make edits to individual notifications.

The Test button sends a sample of the notification to the Sender's email address or phone number. This includes all formatting, CSS, and embedded images to ensure the layout remains intact across different clients (like Outlook or Gmail).

The Schedule button allows users to select a future date and time for delivery. The system requires the scheduled time to be at least one minute in the future.

The Send button initiates an immediate merge and delivery. Note: If you realize a mistake was made after clicking send, the Cancel button allows you to stop the remaining queue from being processed.

The Who can see email history setting determines which permissions from the Roles Dictionary are allowed to view the logs of sent messages.

Who can see template checkboxes restrict who has permission to access a template. By default, "All Roles" are selected.

Template Groups checkboxes are used to associate a template to template groups(s). Note: A template can be associated with one group, multiple groups, or no group at all.
Posted March 31, 2026
A Notification Template Group is used to organize Notification Templates. By grouping templates, administrators can streamline the message selection process, ensuring that users only see the templates relevant to their specific department or task.

To create a Notification Template Group, follow the steps in Creating Notification Template Group.
Posted March 30, 2026
Products are items or services being purchased from vendors or sold to customers.  To configure products, navigate to Finance - Maintenance - Products.  You need Contract Full, Contract Read, Finance Full, or Finance Read to access this page.   Note: Products are ledger specific, but the names need to be unique across all ledgers.  If the same product appears in multiple ledgers, name them accordingly.  Example: The General Ledger has a product called “Credit Card Convenience Fee”.  The Summer ledger has a product called “Credit Card Convenience Fee - Summer”.

Name is the name for the product.

Category is the category for the product.

Active indicates if the product will appear as an option on invoices.

This product is sold to customers allows the product to be specified on AR invoices.

This product is purchased from vendors allows the product to be specified on AP invoice.
Description is a short description of the product.

Price is the default purchase or sales price for the product.

Is NSLP is used to designate that the product is for the National School Lunch Program. Note: This field is used by the “Lunch Counts by Date” and “Lunch Totals by Product Category” Finance dashboard widgets.

Revenue/Expense Account is the default account to specify on the invoice when the product is selected.  Note: You can choose accounts besides revenue or expense.  Typically the accounts would be revenue or expense.

Product Type determines how the product is used.
  • Default is used for most products.
  • Deposit is originally used for (Re) Enrollment Contract deposits.  Note: There is no functional difference between Default and Deposit.  Both allow specifying a Deposit amount in the left menu.  The Deposit option is retained for backwards compatibility only.  Use Default instead. Note: When a Deposit Account is specified on the product, the system will use the Deposit Account when recording the transaction. If no Deposit Account is specified, the system will default to the Revenue Account associated with the product.
  • Discount is for Summer Camp and POS purchases.
  • Donation is for specifying online donations.
  • Fee (Fixed Amount) is used for fee products where a fixed amount is applied.  Example: ECheck convenience fees are usually a fixed amount.  Note: Permissible values for fees may be subject to state or local regulations.
  • Fee (Percentage) is used for fee products where a percentage is applied.  Example: Credit Card convenience fees are usually a percentage. Note: Permissible rates for fees may be subject to state or local regulations. Example: late fees are usually a percentage.
Posted March 30, 2026
A Discount is a monetary reduction to fees or items when a user meets specific criteria set by the school. Discounts are commonly applied to registrations, summer camps, the online store, and lunch programs.

Example: A school may offer an early bird discount to students who register for classes or activities before a specified date.

Discounts are classified as Products in the system. Therefore, they are created in a similar method as any other Product. Note: When creating a discount product, select the Product Type to “Discount.” Note: Discount products can be grouped into a Product Category such as “Summer School Discounts.” Note: If a Revenue Account is specified on the Discount product, the system will use that account when recording the discount. If the Revenue Account is left blank, the system will instead use the Revenue Account associated with the product being discounted.

Amount specifies the discount amount. This should be entered as a negative value if you select either a fixed or percent discount type in the “Discount by” field.

Discount by:

     - Discount Applied to Each Eligible Product subtracts the listed amount from each eligible product. For example, if a student registers for three eligible classes with a $50 discount, the total discount will be $150.
     - Total Discount Amount subtracts the listed amount once, provided the number of eligible product criteria is met. For example, if the amount is $50 and the student signs up for three eligible classes, the discount will be $50 total.
     - Percent Applied to Each Eligible Product subtracts the listed percentage from each eligible product. For example, a 10% discount applied to three classes will discount each class by 10%.
     - Total Percent subtracts the listed percentage once if eligibility criteria are met. For example, a 10% total percent discount applied to three classes will discount the total amount by 10%.
     - Product Overwrite Amount replaces the product amount with the listed value. For example, if the Product Overwrite Amount is $50, the student pays $50 for each eligible class.

Is Stackable Discount indicates whether the discount can be combined with other discounts. If both discounts are stackable, both will apply. If one discount is not stackable, only the discount with the higher priority will apply.

Once Per Day limits the discount to being applied once per day.

Discount Order determines the sequence in which multiple discounts are applied. For example, if a 10% discount has a lower order than a $20 discount, the system first applies the 10% discount, then subtracts $20 from the remaining balance.

Pay In Full indicates that the discount can only be applied if the user pays the full amount at the time of purchase.

Expiration Date is the last date the discount can be applied. This is often used for discounts with deadlines, such as early bird discounts.

Must have at least # eligible product(s) selected defines the minimum number of eligible products required for the discount to apply. This is typically used when discounts depend on the number of classes a student enrolls in.

Restricted defines whether the discount can be applied once per student or once per family.

Requires Waiver Code indicates that a waiver code must be provided for the discount to be applied.

Note: For non-stackable discounts, the “Percent Applied to Each Eligible Product” and “Total Percent” will calculate to the same amount. For stackable discounts, “Total Percent” applies to the discounted amount after previous discounts, while “Percent Applied to Each Eligible Product” applies to the original amount.

Example: If a class costs $100 and two 10% stackable discounts apply:

     - With “Percent Applied to Each Eligible Product,” both discounts will subtract $10 each.
     - With “Total Percent,” the first discount subtracts $10, and the second discount subtracts $9 (10% of the remaining $90).

Note: To Apply products to a Discount, follow the steps in Applying Product to Discount.

Note: To make a Discount eligible for a specific group of students, follow the steps in Applying Discount to Student Attribute.
 

Posted March 26, 2026
One of the following roles is required to access this query: Admin Full, Admin Read, Admissions Full, Admissions Read, Registrar Full, or Registrar Read.

This DAT Query returns a distinct count of students with a status modifier of “Enrolled,” grouped by division and grade level, for academic years 2019–2020 through 2029–2030.
Posted March 24, 2026
Our latest release completely re-imagines how email templates are organized, secured, and shared
Posted March 24, 2026
The Email screen has been updated to improve how templates are selected, organized, and managed.

    - A new Template Group dropdown is now available when composing emails, allowing you to quickly filter templates by group.
    - A separate field has been added for saving email templates.
    - Under the email body, you will now find options to assign Roles and Template Groups to your templates.
    - Template Groups can be configured in Home > Notifications > Notification Template Groups.
Posted March 19, 2026
Action configuration has moved from individual modules to a centralized location at Home > Action Setup. All action management is now handled from this single page.
Posted March 19, 2026
Grade level fields in the DAT Filter have been reorganized for consistency. They have moved from the Student Info table to the Grade Levels (Current) and Grade Levels (Next) tables.
Posted March 18, 2026

Posted March 13, 2026
A DAT Filter is a Data Analytics Tool (DAT) feature that allows you to create comprehensive search conditions to restrict the data you are working with. These filters can be used in:
  • A DAT Query
  • A list of entities (such as the list of students, courses, or households)
  • CMS portal as a mechanism to restrict the visibility of certain elements
  • Automated Notifications as a mechanism to determine  the list of recipients
  • (Re)Enrollment Contracts and Forms to determine the list of eligible households and students
A DAT Filter is similar to a DAT Query since it is constructed in a similar fashion where the initial table is predetermined and then you add conditions and table joins. The main difference is that in case of a DAT Query the output is data in a list or chart format, while a DAT filter, is a comprehensive mechanism for limiting data.

Saved DAT Filters are managed in Campus > Home > Filter Setup, where users can view, organize, and manage all saved filters available to them.

Filters can be organized using Filter Groups, which allow administrators to categorize filters for easier navigation and management.

Filters have ownership and visibility rules that determine who can view and manage them. The Include All option allows users to view filters that are not owned by them, including filters created by other users. Users with Security Full permissions can also Change Owner of a filter when administrative adjustments are needed.

Note: DAT Filter is a recursive concept as each new DAT Filter may consist of several DAT Filters.

Note: You have the option for Saving DAT Filters for reuse.

Note: DAT Filters prefixed with “[PCR Educator Imported]” are created by PCR Educator. Feel free to use them as a reference or save them as a new DAT Filter with a new name. We will often update existing and create new queries with the “[PCR Educator Imported]” naming convention - all these filters are removed and replaced during an update. To request a standard DAT filter that you feel may benefit other schools as well, please email support@pcreducator.com.  Note: These filters are for reference only.  Do not use these filters as a setting.  Instead, save a copy of the filter and use the copy instead.

Follow the steps for Initializing DAT Filter to use DAT Filters.

Here is a comprehensive index of the articles for DAT:

DAT Filter
  • Initializing DAT Filter
  • Initializing DAT Filter from DAT Query
  • Initializing DAT Filter from List
  • Adding DAT Filter Condition
  • Creating New DAT Filter
  • Filter Group
  • Creating Filter Group
  • Using Filter Groups on Lists
DAT Query
  • DAT Query - Step 1 - Adding Conditions
  • DAT Query - Step 1 - Connecting Tables
Managing DAT Filter
  • Managing DAT Filter Conditions
  • Saving DAT Filter
  • Managing DAT Filter
  • Deleting DAT Filter
  • Reviewing Existing DAT Filter
  • DAT Query and DAT Filter Common Mistakes
Posted March 13, 2026
To initialize a new filter:
  1. Click on the table name that would be used for the new filter.
  2. Under “Conditions” pick “New Filter” from the available choices.
  3. Click on the blue filter (funnel) icon.
The next step is Adding DAT Filter Condition.
Posted March 13, 2026
Creating New DAT Filter uses the same concepts as Creating New DAT Query, so to create a new DAT Filter follow these steps:
  1. DAT Query - Step 1 - Adding Conditions
  2. DAT Query - Step 1 - Connecting Tables
Repeat steps 1 and 2 as many times as needed. Once you finish creating the new DAT Filter, click Add button on the top.

Note: Once all desired conditions have been added, see Saving DAT Filter for next steps.
Posted March 13, 2026
You can save a DAT Filter for your personal reuse, or to make it available to other users.  There are two ways you might reach the Save Filter screen.
  1. Click Save on a DAT Filter popup window.  Note: You can replace an existing filter by choosing it from the dropdown on the Save screen.
  2. Managing DAT Filter
For a saved filter, the following information is required:

Filter Name is the name of the filter as it will appear in the drop-downs. Filter names must be unique in the system. Note: Filters that you are not the author of, but have role access to use, will have an asterisk * at the end of the filter name in drop-downs.

Filter Group(s) allow you to categorize the filter so it can be found more when selecting filters on lists. Assigning a filter to one or more groups helps organize related filters for faster selection. This field is optional.

All Divisions
determine if the filter will appear in other school divisions as an option in drop-downs.  If the filter has conditions specific to the current division, leave this unchecked.  Note: All Divisions must be checked for a saved filter to be available as an option when creating calculated attributes.

Roles determine which other users can see and use the filter.  Such users are able to add additional conditions or save their own copy of the DAT Filter. Note: Consider carefully before making a filter available to other user roles.  Fields are already restricted in terms of which roles can access them; however, if you create a filter based on those fields and specify roles - anyone with those roles is able to run your filter.

Note: The owner is generally the user who created the filter. The owner can only be changed by a user with Security Full permissions. Ownership can be changed either when managing the filter or from the Campus > Home > Filter Setup page. See DAT Filter for more details.
Posted March 13, 2026
Filter Groups allow users to organize DAT Filters so that they can be located more easily when selecting filters on lists. When filters are assigned to groups, lists may display additional options that help narrow the available filters.

On lists that support Filter Groups, two dropdowns may appear:

  • Filter Group
  • Filter

When a Filter Group is selected, the Filter dropdown will only display filters associated with that group. This allows users to narrow the list of available filters and find the desired filter more quickly.

If filters are not associated with any groups, the Filter Group dropdown may not appear. In this case, only the Filter dropdown will be displayed and it will show all available filter
Posted March 13, 2026
Filter Groups are a configuration used to organize filters into categories for easier navigation and management. Administrators can group related filters together so users can quickly locate and apply them.

Filter Groups can be created and managed on the Campus > Home > Filter Setup > Filter Groups page.

The Group Name of the Filter Group is used to identify and categorize related filters.

The Owner determines who has private visibility to the group when Is Public is not enabled. Note: This will typically be the user who created the Filter Group

The Is Public setting that controls group visibility. When Is Public is enabled, the group is visible to other users so they can use filters associated with that group. When Is Public is not enabled, the group is only visible to the user who created it. 
Posted March 13, 2026
  1. Navigate to Campus > Home > Filter Setup > Filter Groups
  2. Click New
  3. Enter a Group Name for the Filter Group
  4. Enter Group Owner
  5. Enable Is Public if the Filter Group should be visible to other users
  6. Click Save
Posted March 10, 2026
Posted March 09, 2026
To review existing archived reports, you need Registrar Read, Registrar Full, or ArchivalReports Read. To archive or re-archive reports from the student list, you need Archiving Full.

If some parents cannot see an archived report in the Parent Portal, review the following items:
  • Navigate to Admin > Maintenance > Official Reports, or open the student record and review Progress PDF, Report Cards PDF, or Transcripts PDF.
  • Confirm that the report has an Available Date.
  • Confirm that the Available Date has already passed.
  • Confirm that the Available Date is correct for your school's time zone in Application Setup (CMS/Website).
  • Review the Household saved on the archived report. Archived reports are generated for qualifying primary households. If a student has multiple send mail households, each qualifying household receives its own copy.
  • If the student had an academic hold or financial hold, confirm whether the report was intentionally archived with a later Available Date.
  • If grades, comments, or an incomplete changed after the report was first archived, re-archive the report using Overwrite.
  • Confirm that the parent is checking the Student area of the Parent Portal, where archived report cards and transcripts are displayed for download.
Note: If no Available Date is specified, the report will not be available for download on the CMS Parent Portal.

Note: The Available Date uses the time zone configured in Application Setup (CMS/Website).

Note: If you need to release a report later, you can archive it first and update the Available Date when it should become visible.

Note: If you corrected a report after it was archived, use Overwrite when re-archiving so the updated PDF replaces the existing one.

For more information, review Official Report and Archiving Official Report.
Posted March 03, 2026
Posted March 01, 2026
We will be at the #NBOA Annual Meeting in Orlando (March 1–4, 2026). If you are attending, we would love the chance to meet you in person!
Posted February 25, 2026
We are excited to introduce powerful new enhancements to Filters in PCR Educator—designed to make organization and collaboration easier than ever.
Posted February 17, 2026
The CMS Widget - Invoice Payments  is used to collect online payments by credit card, eCheck, or Stored Payment Type. On successful submission, the widget processes the payment through the configured Payment Processor, creates an AR Receipt, allocates the receipt to invoices, optionally creates and posts a convenience fee invoice, sends a thank-you email, and redirects to a thank-you page.

Allow Remember Payment enables the “remember payment” option for supported payment widgets (CMS Widget - Credit Card, CMS Widget - eCheck, and CMS Widget - Stored Payment). When enabled and the user selects “remember,” the Stored Payment Info is saved after a successful payment. Note: Stored Payment Info saving is suppressed when Test Mode is enabled.

Amount Label sets the label for the amount field. If blank, defaults to Amount.

Change Invoice Term Location enables a “Change Payment Plan” option for invoices that meet the eligibility criteria.

Invoice Filter applies an optional DAT Filter to invoice selection when retrieving unpaid invoices and calculating balances.

Invoices Based On determines whether balances and invoices are retrieved for the current household or the selected student.

Ledger selects the ledger used for invoice and statement queries. Note: If not set, the ledger defaults to Ledger Id 1. Payment Configurations are validated to ensure they belong to the selected ledger.

Payment Configuration Credit Card selects the Auto-Pay Configuration (Finance) used for credit card payments.

Payment Configuration Echeck selects the Auto-Pay Configuration (Finance) used for eCheck payments.

Payment Term Change Attribute identifies the attribute list used to determine which invoices are eligible to show the “Change Payment Plan” option when Change Invoice Term Location is set.

Posted Invoices Only restricts invoice and balance calculations to posted invoices.

Processing Fee Label sets the label for the processing fee section. If blank, it defaults to Processing Fee.

Receipt Invoice Number specifies the descriptor passed to the payment gateway. If not set, it defaults to Online Payment.

Thank You Page Location specifies the page users are redirected to after a successful payment.

Show Amount Due Read Only determines whether the statement amount is displayed as read-only text instead of an editable amount field. When enabled, the amount field is hidden and the calculated amount due is shown as a label.

Show Amount
controls how “as-of” logic is applied when calculating amounts due and default per-invoice payment amounts.
Options:
Due As Of Day Of Month
Show All Invoices

Show Amount Due As Of Day specifies the day of month used when Show Amount is set to Due As Of Day Of Month. Note: The widget computes an “as-of date” using the current date and the provided day-of-month; if the computed date is earlier than today, it advances to the next month. If no day is provided, the widget displays all open invoices.

Show Invoice Distribution determines the payment entry mode.
• When enabled, the unpaid invoice grid is shown and users can enter per-invoice payment amounts.
• When disabled, a single amount entry field is shown.

Test Mode determines whether the Payment Processor call runs in test mode. Note: When enabled, saving a remembered payment profile is not performed.

Thank You Email specifies the email template used after a successful payment. Note: The thank-you email is created in the Finance > AR > Receipts > Email screen.

Total Amount Label sets the label for the total amount section. If blank, it defaults to Total Amount.

Behavior on Submit
When the user clicks Submit, the widget:
• Determines the receipt amount from either the invoice distribution grid (sum of per-invoice entries) or the single amount (editable amount or read-only label).
• Ensures a payment method is selected (Credit Card, eCheck, or Stored Payment) and validates the selected method.
• Calculates the convenience fee using the selected payment method and computes the final charge amount.
• Creates a deposit (based on the selected Auto-Pay Configuration (Finance)), inserts an AR Receipt, and records A/R credit entries.
• Allocates the receipt to invoices:
  – If invoice distribution is enabled, allocations follow the per-invoice amounts entered by the user.
  – If paying a single amount, allocations are automated in three passes: overdue amounts first, then next-due amounts, then remaining balances (until the payment amount is fully allocated).
• If convenience fee settings are configured and the fee is greater than zero, it creates a convenience fee invoice and optionally auto-posts it.
• If “remember payment” is enabled and selected, it saves the Stored Payment Info after success (not performed in test mode).
• Sends the Thank You Email to the logged-in user and redirects to the Thank You Page Location.
Posted February 16, 2026
I received this message from a colleague this week, and it genuinely made my day.
PCR Educator
School Operations Platform

One platform for K-12 schools, higher education, performing arts institutions, and health science programs since 1989.

PCR Educator on Capterra: 4.7 out of 5 stars
Platform
    Solutions
      Resources
        Company
          © 1989-2026 PCR Educator, Inc.Silver Spring, MD · U.S.A. · (301) 947-7380