Policy status updates with scheduled jobs

Last updated: July 30, 2026

Overview

amplo includes two nightly scheduled jobs that automatically update policy statuses based on defined criteria. Understanding how these jobs work helps you manage policy lifecycles and maintain accurate status tracking.

Scheduled jobs functionality

Two background jobs control how policy statuses update overnight: Update Policy Pending Status and Expire Policy.

The Update Policy Pending Status job runs daily at 11:59 p.m., updating policies from Pending Cancellation to Cancelled when the status is Pending Cancellation and the expiration date is earlier than today.

Important: This job does not populate the Cancellation Date field directly. If you need this field populated, custom automation must be built.

The Expire Policy job runs daily at 12:00 a.m., updating the policy status to Expired when the expiration date is earlier than today and the status isn't already Expired. The Agency field must be populated on the policy. If this is blank, the policy will be excluded from the Expire Policy job, even if it meets the above criteria.

Expiration date behavior during cancellations

The Prevent Update to Exp Date on Cancels setting in Veruna Support custom settings controls whether the policy expiration date can be updated during cancellation processing.

  • Unchecked: The expiration date can be updated during cancellation.

  • Checked: The expiration date cannot be updated during cancellation, preserving the original expiration date.

When this setting is enabled, the Policy Change Cancellation Date (endorsement effective date) does not carry over to the policy expiration date. This helps maintain compliance and accurate records.

Troubleshooting: policy shows "Expired" instead of "Cancelled"

A cancellation may process without error and move the policy to Pending Cancellation, only for an overnight job to change its status to Expired instead of Cancelled. This happens because, by default, Expire Policy runs at 12:00 a.m. and Update Policy Pending Status runs at 11:59 p.m. If a policy's expiration date has already passed, the Expire Policy job marks it Expired before Update Policy Pending Status has a chance to move it to Cancelled. This is a job ordering issue, not a data problem.

Resolution

To resolve this error, reschedule the two jobs so that Update Policy Pending Status always runs before Expire Policy in the day's execution order, with a gap between them.

  1. Go to Setup → Apex Classes → Scheduled Jobs (Apex Jobs).

  2. Pause or delete the existing scheduled jobs for both Expire Policy and Update Policy Pending Status.

  3. Recreate them using the same Apex classes, with following Cron expressions:

    • Update Policy Pending Status: 0 0 2 * * ? * (daily at 2:00 a.m.)

    • Expire Policy: 0 0 4 * * ? * (daily at 4:00 a.m.)

  4. Confirm both jobs are active and on the new schedule.

  5. Monitor policies currently in Pending Cancellation over the next several days and confirm they move to Cancelled as expected.

Note: If the issue persists, check for other automations (workflow rules, Process Builder, flows, or triggers) that may also be updating policy status outside of these two jobs.

Considerations

Keep the following in mind when working with policy status updates:

  • Policies without cancellation endorsements are updated to Expired by the Expire policy job.

  • The Update policy pending status job changes status only and does not populate cancellation dates.

  • The Prevent Update to Exp Date on Cancels setting determines whether endorsement effective dates update the policy expiration date.

  • Both jobs run nightly, so status updates may not appear immediately.

  • If Expire Policy and Update Policy Pending Status are left on their default times (12:00 a.m. and 11:59 p.m., respectively), Expire Policy runs first each day — see the troubleshooting section above if this is causing policies to show Expired instead of Cancelled.