Tribe__Tickets__Commerce__PayPal__Gateway::get_invoice_number( bool $generate = true )

Returns the invoice number reading it from the cookie or generating a new one.


Parameters

$generate

(bool) (Optional) Whether to generate a new invoice number if not found.

Default value: true


Top ↑

Return

(string)


Top ↑

Source

File: src/Tribe/Commerce/PayPal/Gateway.php

	public function get_invoice_number( $generate = true ) {
		$invoice_length = 12;

		$invoice = null;

		if (
			! empty( $_COOKIE[ self::$invoice_cookie_name ] )
			&& strlen( $_COOKIE[ self::$invoice_cookie_name ] ) === $invoice_length
		) {
			$invoice = $_COOKIE[ self::$invoice_cookie_name ];

			$invoice_transient = get_transient( $this->invoice_transient_name( $invoice ) );

			if ( empty( $invoice_transient ) ) {
				$invoice = false;
			}
		}

		if ( empty( $invoice ) && $generate ) {
			$invoice = wp_generate_password( $invoice_length, false );
		}

		/**
		 * Filters the invoice number used for PayPal.
		 *
		 * @since 4.11.0
		 *
		 * @param string $invoice Invoice number.
		 */
		$invoice = apply_filters( 'tribe_tickets_commerce_paypal_invoice_number', $invoice );

		return $invoice;
	}

Top ↑

Changelog

Changelog
Version Description
4.7 Introduced.