Using Gravity Forms ‘gform_stripe_charge_authorization_only’ PHP filter

The gform_stripe_charge_authorization_only Gravity Forms PHP filter allows authorization-only transactions by preventing the capture request from being made after the entry has been saved.

Usage

A generic example of how to use the filter:

add_filter( 'gform_stripe_charge_authorization_only', 'your_function_name', 10, 5 );

Parameters

  • $authorization_only (bool): Defaults to false; return true to prevent payment being captured.
  • $feed (Feed Object): The feed object currently being processed.
  • $submission_data (Submission Data): Contains the form title, payment amount, setup fee amount, trial amount, line items created using the submitted pricing field values, and any discounts from coupons.
  • $form (Form Object): The Form which is currently being processed.
  • $entry (Entry Object): The entry from which the subscription was created.

More information

See Gravity Forms Docs: gform_stripe_charge_authorization_only

Examples

Apply to all product and service feeds

add_filter( 'gform_stripe_charge_authorization_only', '__return_true');

Apply to a specific feed

The following example shows how you can delay the subscription cancellation for a specific feed by checking the feed name.

add_filter( 'gform_stripe_charge_authorization_only', 'stripe_charge_authorization_only', 10, 2 );

function stripe_charge_authorization_only( $authorization_only, $feed ) {
    $feed_name = rgars( $feed, 'meta/feedName');
    if ( $feed_name == 'your feed name here' ) {
        return true;
    }

    return $authorization_only;
}

Note: Your code snippet should be placed in the functions.php file of your active theme.

This hook was added in Stripe version 2.1.

This hook is located in GFStripe::capture() in class-gf-stripe.php.