This page documents the notification triggers added by the plugin, the daily failure scan (admin notice + email), the developer filter for customizing failure emails, and the available shortcodes.
Notification Triggers #
The plugin adds three event triggers you can use when configuring Gravity Forms → Notifications for a form that has a Recurring Submissions feed.
- Successful Resubmission Fires when an automated resubmission completes and a new child entry is created.
- Failed Resubmission Fires when an automated attempt to resubmit fails (e.g., validation failure). No entry is created and payment feeds do not run.
- Series Completion Fires when the last expected resubmission for a series completes (based on your limit settings).
Configure message body, recipients, conditional logic, etc., as you would for any standard Gravity Forms notification.
Daily Failure Scan: Admin Notice & Email #
The plugin performs a once‑daily scan for failed resubmissions.
Admin Notice (Dashboard) #
- Displays a dismissible notice listing all series with failures.
- Each item includes the entry link and basic failure information.
- Dismissal lasts until the next daily scan.
Failure Email #
- Sent to the address set in GravityOps → Recurring Submissions → Settings → Error Email Recipient.
- If blank, it sends to the Site Admin Email.
- Contains the same failures plus additional details (timestamps, counts, links).
Filter: rfsfgf_auto_form_submissions_failed_entries #
Developers can customize the data included in the failure email using this filter.
Important: The plugin expects a specific data structure. Review the source before modifying to ensure compatibility.
Common use: Redirect email links to a custom interface (e.g., a GravityView page) instead of the default WP Admin entry screen.
Example:
add_filter( 'rfsfgf_auto_form_submissions_failed_entries', function ( $failed_entries ){
foreach ($failed_entries as $index => $entry) {
$gf_entry = GFAPI::get_entry( $entry['entry_id'] );
$entry['view_entry'] = get_home_url() . "some/path/to/GravityView/view";
$entry['invoice_number'] = $gf_entry['5'];
$failed_entries[$index] = $entry;
}
return $failed_entries;
});
Custom Merge Tags #
The plugin adds several custom merge tags that can be used in notifications and confirmations to provide context about the recurring series.
Child Entry Tags #
These tags are populated on entries created by a resubmission.
{resubmission_progress}Displays the current progress (e.g., “1 of 10”) of the series.{is_auto_submission}Returns1if the entry was created by the plugin, empty otherwise.
Parent Entry Tags #
These tags are populated on the original source entry.
{rfsfgf_is_parent_submission}Returnstrueif the entry is the parent of a recurring series.{total_resubmissions}Displays the total number of successful resubmissions generated from this parent.
General Tags #
Available on both parent and child entries.
{rfsfgf_feed_label}Displays the human-readable label for the recurring series.
Shortcodes #
Overview Table #
[rfsfgf_overview]
- Output: A front‑end table mirroring the admin overview: Entry, Form, Feed Name, Feed Label, Next Submission, Progress, Status.
- Notes: Pair with your membership/role plugin to restrict visibility as needed.
Entry Widget #
[rfsfgf_entry_widget form_id="{form_id}" entry_id="{entry_id}"]
- Output: The same Entry Meta Box UI shown on the entry page, including status and action buttons.
- Parameters:
form_id– Required; the form containing the entry.entry_id– Required; the specific entry to display/manage.
- Usage: Ideal for client or staff portals to expose series controls on the front‑end.
Operational Notes #
- Series records are deleted from the active queue once the configured resubmission limit is reached.
- Number-based: Failures do not increment the limit; the series will reschedule until the required count of successful (or skipped) resubmissions is reached.
- Date-based: The series is deleted when the end date is reached, regardless of any failures.
- Notification triggers operate independently from the daily scan; you can use both for proactive and batched alerting.