gform_square_authorization_only

Description

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

Note: Payments that are only authorized and not captured via your Square dashboard within 6 days will automatically expire.

Usage

The hook, which would run for all Square product and service feed,s can be used like so:

add_filter( 'gform_square_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

    The customer and transaction data.

  • $form Form Object

    The form object currently being processed.

  • $entry Entry Object

    The entry object currently being processed.

Examples

1. Apply to all product and service feeds

add_filter( 'gform_square_authorization_only', '__return_true' );

2. 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_square_authorization_only', 'square_authorization_only', 10, 2 );

function square_authorization_only( $authorization_only, $feed ) {
	$feed_name = rgars( $feed, 'meta/feedName' );

	if ( $feed_name === 'your feed name here' ) {
		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 Square version 1.0.

Source Code

$authorization_only = apply_filters( 'gform_square_authorization_only', false, $feed, $submission_data, $form, $entry );

This hook is located in GF_Square::get_capture_method() in class-gf-square.php.