External Webgains Knowledge Hub
Breadcrumbs

Flexible Recall Periods

What are Flexible Recall Periods?

Advertisers are able to set a Flexible Recall Period, which means transactions will stay in ‘Delayed’ status until the ‘Lock Date’ is reached. This flexible Lock Date functionality means the validation of transactions can be accurately managed and automated.

This flexible Lock Date functionality allows for accurate, automated validation of transactions based on real-world events specific to your business.

A key example is with Travel brands, so the Lock Date can be set based on the ‘checkout date’ (custom date) of the booking, so they do not need to validate transactions until the customer has checked out of their travel booking.

This approach is ideal for any advertiser whose transactions require confirmation after a certain milestone or event. For example:

  • Travel & Hospitality: Set the Lock Date based on the customer’s actual checkout date, ensuring only completed stays are confirmed.

  • Retail & E-commerce: Perfect for products with longer or fixed delivery times, such as furniture or made-to-order items, where confirmation should occur after delivery is complete.

  • Events & Ticketing: Confirm transactions only after the event date has passed, reducing the risk of cancellations or changes.

  • Subscription Services: Use the Lock Date to validate transactions after the first billing cycle or service activation.

Implementing a Flexible Recall Period offers significant advantages for advertisers across a wide range of industries:

  • Improved Transaction Accuracy: Transactions are only confirmed after the relevant milestone (such as delivery, event attendance, or service activation) is reached. This minimizes the risk of cancellations, returns, or no-shows impacting your reporting and payments, ensuring that only genuine, completed transactions are validated.

  • Reduced Administrative Overhead: The automated confirmation process eliminates the need for manual checks and follow-ups, freeing up your team to focus on higher-value tasks. This reduces the potential for human error and streamlines your operational workflow.

  • Enhanced Partner Trust: By confirming transactions only when they are truly completed, you provide greater transparency and reliability to your partners and publishers. This builds stronger relationships and encourages more high-quality partners to work with your program.

  • Customizable to Your Business Needs: The recall period can be tailored to fit your unique business processes, whether that’s based on delivery dates, event attendance, subscription activation, or any other custom milestone. This flexibility ensures the solution adapts to your operational requirements, not the other way around.

  • Optimized Cash Flow: Locking transactions at the most appropriate time helps you better manage payment cycles, forecast revenue, and ensure timely, accurate payouts to partners. This leads to improved financial predictability and stability for your business.

  • Competitive Differentiation: Offering this level of precision and flexibility sets your affiliate program apart from competitors. It demonstrates your commitment to accuracy and partner satisfaction, making your program more attractive to top-tier publishers and affiliates.

  • Minimized Disputes and Reconciliation Issues:
    By validating transactions only after all conditions are met, you reduce the likelihood of disputes or the need for retroactive adjustments. This leads to smoother reconciliation processes and fewer challenges for your finance and partnership teams.

These comprehensive benefits make the Flexible Recall Period a powerful tool for maximizing the effectiveness, efficiency, and trustworthiness of your affiliate program—no matter your industry or business model.

The transactions tracked via this setting will remain in Delayed status until the lock date, where they will then be Confirmed.

As this will not currently display in the platform for publishers, advertisers should include in their program description that the Recall Period will be calculated based on the Checkout Date.

Example: "Transactions will be Confirmed after the Customer checks out their hotel."

Setting Up Flexible Recall Periods

Part 1 - Tracking Configuration

To be able to use Flexible Recall Periods, you will need to include a checkout date in your Webgains tracking. Please speak to your Webgains Contact/Account Manager for support with setting this up correctly.

To do this, you will need to add a key:”value” pair to the customData object in the Webgains conversion script. Be sure to keep a record of the key used, as this will need to match exactly what is then added in the Webgains platform.

The date format must follow the following: "YYYY-MM-DD".

Example:

customData: { "checkout_date": "2025-10-09" },

Example in the complete conversion tracking script:

var programid = '654321';
(function(src) {
    var o = 'ITCVRQ';
    window[o] = window[o] || function() {(window[o].q = window[o].q || []).push(arguments)};
    window[o].l = 1 * new Date();
    var s = document.createElement('script');
    var f = document.getElementsByTagName('script')[0];
    s.async = 1; s.src = src; f.parentNode.insertBefore(s, f);
})('https://analytics.webgains.io/' + programid + '/main.min.js');

ITCVRQ('set', 'trk.programId', programid);
ITCVRQ('set', 'cvr', {
    value: '350.00', 
    currency: 'GBP',
    language: 'en_EN',
    eventId: '',
    orderReference: 'BOOKING12345',
    customData: { "checkout_date": "2025-10-09" },
    items: [
        {
            name: 'Deluxe King Room',
            price: '200.00',
            code: 'ROOM1234',
            voucher: 'SUMMER10',
            event: '',
            customData: { "hotel": "Grand Beach Resort", "roomType": "Deluxe King" }
        },
        {
            name: 'Standard Twin Room',
            price: '150.00',
            code: 'ROOM5678',
            voucher: '',
            event: '',
            customData: { "hotel": "Grand Beach Resort", "roomType": "Standard Twin" }
        }
    ],
    customerType: 'New',
    customerId: 'GUEST789',
    voucherId: 'SUMMER10',
    location: document.location.href
});
ITCVRQ('conversion');

For setting this up within your tracking, please contact your Webgains Contact/Account Manager for support.

Part 2 - Setting it in the Platform

To set it in the Platform, this will need to be done by Webgains, so please ensure you have spoken to your Account Manager/Webgains Contact to get this set up properly.

The Flexible Recall Period can be set within Program Settings > Technical > Flexible Recall Period.

image-20251015-110726.png

Within the platform you will see:

  1. Enable flexible recall (Y/N)

    1. If ‘No’, the recall period will be as per the program default recall period.

  2. Tracking variable name

    • This field is configurable by Webgains only, and needs to match what is sent within the ‘custom date’ in the conversion script (see Part 1).

  3. Recall Settings

    1. Recall period

    2. Processing day of month

We have 2 options to set the flexible recall period: Recall Period (Lock date buffer) or Processing day of the month (Scheduled lock day).

Option 1 - Recall Period

Lock date buffer

If this option is selected, a buffer of X days will be added for after the custom checkout date sent within the transaction. After this buffer period has passed, the transaction will be locked (no longer within the recall period and able to edit).

Example:

  • If: Recall Period = 7

  • And: Checkout date “2026-03-04” is sent in the Webgains tracking script

  • Then: the Lock Date for that transaction will be “2026-03-11 23:59:59” (11th March)

Option 2 - Processing Day of the Month

Scheduled lock day

If this option is selected, the transaction will lock on the set specific day of the [following] month. This is from month days 1-28.

Example:

  • If Processing Day of the Month = 8

  • And: Checkout date “2026-03-04” is sent in the Webgains tracking script

  • Then: the Lock date for that transaction will be “2026-04-09 23:59:59” (8th April))

Key Notes:

  • the custom_field_name in the custom_variables MUST match with the one defined in the Platform field

  • If the custom variable is not found or the format is not correct, the lock_date will be calculated based on the default event recall period for the Program