# sellkit/1.7.4/includes/elementor/modules/checkout/integrations/integration.php

SellKit – Funnel builder and checkout optimizer for WooCommerce to sell more, faster, version 1.7.4. 62 lines.

- Page: https://pluginprobe.com/plugins/sellkit/1.7.4/code/includes/elementor/modules/checkout/integrations/integration.php
- Raw: https://pluginprobe.com/plugins/sellkit/1.7.4/raw/includes/elementor/modules/checkout/integrations/integration.php
- Modified: 2023-08-16T09:31:38+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/sellkit/1.7.4/code/includes/elementor/modules/checkout/integrations/integration.php#L10-L20`.

```php
<?php

namespace Sellkit\Elementor\Modules\Checkout\Integrations;

defined( 'ABSPATH' ) || die();

/**
 * Integration class to integrate gateways with sellkit checkout widget.
 *
 * @since 1.1.0
 */
abstract class Integration {
	/**
	 * Active available wooCommerce gateways.
	 *
	 * @since 1.1.0
	 * @var array
	 */
	protected $gateways;

	/**
	 * Run this class content if requirements are met.
	 *
	 * @since 1.1.0
	 * @return void
	 */
	public function run() {
		$this->gateways = WC()->payment_gateways->get_available_payment_gateways();

		if ( false === $this->requirements() ) {
			return;
		}

		$this->hooks();
		add_action( 'sellkit-checkout-widget-express-methods', [ $this, 'content' ] );
	}

	/**
	 * Check requirement to enable gateway in sellkit checkout widget.
	 *
	 * @return bool
	 * @since 1.1.0
	 */
	abstract protected function requirements();

	/**
	 * Content of express checkout methods.
	 *
	 * @return void
	 * @since 1.1.0
	 */
	abstract protected function content();

	/**
	 * Hooks to integrate current gateway with sellkit checkout widget.
	 *
	 * @return void
	 * @since 1.1.0
	 */
	abstract protected function hooks();
}

```
