Description
The gform_stripe_charge_authorization_only filter allows authorization only transactions by preventing the capture request from being made after the entry has been saved.
Note: This filter should only be used when Enable additional payment methods is unchecked. When the option is checked, the filter gform_stripe_payment_element_authorization_only should be used instead.

Usage
The hook which would run for all Stripe product and service feeds can be used like so:
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.
Examples
1. Apply to all product and service feeds
add_filter( 'gform_stripe_charge_authorization_only', '__return_true' );
2. Apply to a specific feed
The following example shows how you can set the charge to authorize only 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 ) {
gf_stripe()->log_debug( __METHOD__ . '(): Running... ');
$feed_name = rgars( $feed, 'meta/feedName' );
if ( $feed_name == 'your feed name here' ) {
gf_stripe()->log_debug( __METHOD__ . '(): Authorization only charge for feed ' . $feed_name );
return true;
}
return $authorization_only;
}
Placement
This code can be used in the functions.php file of the active theme, a custom functions plugin, a custom add-on, or with a code snippets plugin.
See also the PHP section in this article: Where Do I Put This Code?
Since
This hook was added in Stripe version 2.1.
Source Code
$authorization_only = apply_filters( 'gform_stripe_charge_authorization_only', false, $feed, $submission_data, $form, $entry );
This hook is located in GFStripe::capture() in class-gf-stripe.php.