Automattic\WooCommerce\StoreApi\Schemas\V1\Agentic

CheckoutSessionSchema::format_payment_providerprotectedWC 1.0

Format payment provider information.

Method of the class: CheckoutSessionSchema{}

No Hooks.

Returns

Array|null. Payment provider data or null.

Usage

// protected - for code of main (parent) or child class
$result = $this->format_payment_provider();

CheckoutSessionSchema::format_payment_provider() code WC 10.8.1

protected function format_payment_provider() {
	$available_gateways = WC()->payment_gateways()->get_available_payment_gateways();

	if ( empty( $available_gateways ) ) {
		return null;
	}

	// Look for gateway with agentic_commerce capability.
	$gateway = AgenticCheckoutUtils::get_agentic_commerce_gateway( $available_gateways );

	if ( null !== $gateway ) {
		return [
			'provider'                  => $gateway->get_agentic_commerce_provider(),
			'supported_payment_methods' => $gateway->get_agentic_commerce_payment_methods(),
		];
	}

	return [
		'provider'                  => 'stripe',
		'supported_payment_methods' => [ PaymentMethod::CARD ], // Default, can be expanded.
	];
}