Using Gravity Forms ‘gform_stripe_success_url’ PHP filter

The gform_stripe_success_url filter allows you to modify the success URL that users will be sent to after completing a payment with Stripe.

Usage

add_filter('gform_stripe_success_url', function($url, $form_id, $query) {
    // Your custom code here
    return $url;
}, 10, 3);

Parameters

  • $url (string): The URL to be filtered.
  • $form_id (int): The ID of the form being submitted.
  • $query (string): The query string portion of the URL.

More information

See Gravity Forms Docs: gform_stripe_success_url

Examples

Change domain for localhost

In this example, the code changes the domain of the URL to your own domain if it is set to ‘localhost’:

add_filter('gform_stripe_success_url', function($url, $form_id, $query) {
    GFCommon::log_debug(__METHOD__ . '(): Original URL: ' . $url);
    // Replace example.com with your site domain
    $url = str_replace('localhost', 'example.com', $url);
    GFCommon::log_debug(__METHOD__ . '(): New URL: ' . $url);
    return $url;
}, 10, 3);

Add a custom parameter to the success URL

In this example, the code adds a custom parameter (e.g., ‘payment_status=success’) to the success URL:

add_filter('gform_stripe_success_url', function($url, $form_id, $query) {
    $url = add_query_arg('payment_status', 'success', $url);
    return $url;
}, 10, 3);

Redirect to a specific page based on form ID

In this example, the code redirects the user to a specific page based on the form ID:

add_filter('gform_stripe_success_url', function($url, $form_id, $query) {
    if ($form_id == 1) {
        $url = 'https://example.com/page1';
    } elseif ($form_id == 2) {
        $url = 'https://example.com/page2';
    }
    return $url;
}, 10, 3);

Append form title to the success URL

In this example, the code appends the form title to the success URL:

add_filter('gform_stripe_success_url', function($url, $form_id, $query) {
    $form = GFAPI::get_form($form_id);
    $form_title = sanitize_title($form['title']);
    $url = add_query_arg('form_title', $form_title, $url);
    return $url;
}, 10, 3);

Redirect to a custom URL based on payment amount

In this example, the code redirects the user to a custom URL based on the payment amount:

add_filter('gform_stripe_success_url', function($url, $form_id, $query) {
    $entry = GFAPI::get_entry($_POST['entry_id']);
    $payment_amount = $entry['payment_amount'];
    if ($payment_amount > 100) {
        $url = 'https://example.com/high-value';
    } else {
        $url = 'https://example.com/regular-value';
    }
    return $url;
}, 10