# woocommerce-pos/1.10.19/includes/API/class-aliases.php

WCPOS – Point of Sale (POS) plugin for WooCommerce, version 1.10.19. 81 lines.

- Page: https://pluginprobe.com/plugins/woocommerce-pos/1.10.19/code/includes/API/class-aliases.php
- Raw: https://pluginprobe.com/plugins/woocommerce-pos/1.10.19/raw/includes/API/class-aliases.php
- Modified: 2026-09-19T05:33:44+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/woocommerce-pos/1.10.19/code/includes/API/class-aliases.php#L10-L20`.

```php
<?php
/**
 * Permanent aliases for legacy unversioned and folded v2 WCPOS REST API class names.
 *
 * WCPOS Pro and third-party extensions subclass these controllers by FQCN.
 * Keep the old names as a permanent public API while implementations live in V1.
 *
 * Loaded via Composer's `files` autoload (so bundled consumers like WCPOS Pro,
 * which load this package through vendor/autoload.php and never execute
 * woocommerce-pos.php, still get the aliases) AND required directly from the
 * plugin bootstrap. The guard makes double-loading a no-op.
 *
 * @package WCPOS\WooCommercePOS\API
 */

if ( \defined( 'WCPOS_API_CLASS_ALIASES_REGISTERED' ) ) {
	return;
}
\define( 'WCPOS_API_CLASS_ALIASES_REGISTERED', true );

spl_autoload_register(
	static function ( string $class ): void {
		static $aliases = array(
			'WCPOS\WooCommercePOS\API\Auth'                          => 'WCPOS\WooCommercePOS\API\V1\Auth',
			'WCPOS\WooCommercePOS\API\Bulk_ID_Fast_Path'             => 'WCPOS\WooCommercePOS\API\V1\Bulk_ID_Fast_Path',
			'WCPOS\WooCommercePOS\API\Cashier'                       => 'WCPOS\WooCommercePOS\API\V1\Cashier',
			'WCPOS\WooCommercePOS\API\Checkout_Controller'           => 'WCPOS\WooCommercePOS\API\V1\Checkout_Controller',
			'WCPOS\WooCommercePOS\API\Coupons_Controller'            => 'WCPOS\WooCommercePOS\API\V1\Coupons_Controller',
			'WCPOS\WooCommercePOS\API\Customers_Controller'          => 'WCPOS\WooCommercePOS\API\V1\Customers_Controller',
			'WCPOS\WooCommercePOS\API\Data_Order_Statuses_Controller' => 'WCPOS\WooCommercePOS\API\V1\Data_Order_Statuses_Controller',
			'WCPOS\WooCommercePOS\API\Extensions'                    => 'WCPOS\WooCommercePOS\API\V1\Extensions',
			'WCPOS\WooCommercePOS\API\Gateway_Bootstrap_Controller'   => 'WCPOS\WooCommercePOS\API\V1\Gateway_Bootstrap_Controller',
			'WCPOS\WooCommercePOS\API\Logs'                          => 'WCPOS\WooCommercePOS\API\V1\Logs',
			'WCPOS\WooCommercePOS\API\Orders_Controller'             => 'WCPOS\WooCommercePOS\API\V1\Orders_Controller',
			'WCPOS\WooCommercePOS\API\Payment_Gateways'              => 'WCPOS\WooCommercePOS\API\V1\Payment_Gateways',
			'WCPOS\WooCommercePOS\API\Print_Jobs_Controller'         => 'WCPOS\WooCommercePOS\API\V1\Print_Jobs_Controller',
			'WCPOS\WooCommercePOS\API\Product_Brands_Controller'     => 'WCPOS\WooCommercePOS\API\V1\Product_Brands_Controller',
			'WCPOS\WooCommercePOS\API\Product_Categories_Controller' => 'WCPOS\WooCommercePOS\API\V1\Product_Categories_Controller',
			'WCPOS\WooCommercePOS\API\Product_Tags_Controller'       => 'WCPOS\WooCommercePOS\API\V1\Product_Tags_Controller',
			'WCPOS\WooCommercePOS\API\Product_Variations_Controller' => 'WCPOS\WooCommercePOS\API\V1\Product_Variations_Controller',
			'WCPOS\WooCommercePOS\API\Products_Controller'           => 'WCPOS\WooCommercePOS\API\V1\Products_Controller',
			'WCPOS\WooCommercePOS\API\Raw_Response'                  => 'WCPOS\WooCommercePOS\API\V1\Raw_Response',
			'WCPOS\WooCommercePOS\API\Receipts_Controller'           => 'WCPOS\WooCommercePOS\API\V1\Receipts_Controller',
			'WCPOS\WooCommercePOS\API\Settings'                      => 'WCPOS\WooCommercePOS\API\V1\Settings',
			'WCPOS\WooCommercePOS\API\Shipping_Methods_Controller'   => 'WCPOS\WooCommercePOS\API\V1\Shipping_Methods_Controller',
			'WCPOS\WooCommercePOS\API\Stores'                        => 'WCPOS\WooCommercePOS\API\V1\Stores',
			'WCPOS\WooCommercePOS\API\Tax_Classes_Controller'        => 'WCPOS\WooCommercePOS\API\V1\Tax_Classes_Controller',
			'WCPOS\WooCommercePOS\API\Taxes_Controller'              => 'WCPOS\WooCommercePOS\API\V1\Taxes_Controller',
			'WCPOS\WooCommercePOS\API\Templates_Controller'          => 'WCPOS\WooCommercePOS\API\V1\Templates_Controller',
			'WCPOS\WooCommercePOS\API\Traits\Product_Helpers'        => 'WCPOS\WooCommercePOS\API\V1\Traits\Product_Helpers',
			'WCPOS\WooCommercePOS\API\Traits\Query_Helpers'          => 'WCPOS\WooCommercePOS\API\V1\Traits\Query_Helpers',
			'WCPOS\WooCommercePOS\API\Traits\Uuid_Handler'           => 'WCPOS\WooCommercePOS\API\V1\Traits\Uuid_Handler',
			'WCPOS\WooCommercePOS\API\Traits\WCPOS_REST_API'         => 'WCPOS\WooCommercePOS\API\V1\Traits\WCPOS_REST_API',

			// The wcpos/v2 service twins were folded into Controller_Registry in 1.10.19.
			// It stamps every v2 entry, so subclasses registered through
			// woocommerce_pos_rest_api_v2_controllers still answer under wcpos/v2.
			// Outside the registry, a subclass inherits v1 and must set its own namespace.
			'WCPOS\WooCommercePOS\API\V2\Auth'                           => 'WCPOS\WooCommercePOS\API\V1\Auth',
			'WCPOS\WooCommercePOS\API\V2\Cashier'                        => 'WCPOS\WooCommercePOS\API\V1\Cashier',
			'WCPOS\WooCommercePOS\API\V2\Checkout_Controller'            => 'WCPOS\WooCommercePOS\API\V1\Checkout_Controller',
			'WCPOS\WooCommercePOS\API\V2\Data_Order_Statuses_Controller' => 'WCPOS\WooCommercePOS\API\V1\Data_Order_Statuses_Controller',
			'WCPOS\WooCommercePOS\API\V2\Extensions'                     => 'WCPOS\WooCommercePOS\API\V1\Extensions',
			'WCPOS\WooCommercePOS\API\V2\Gateway_Bootstrap_Controller'   => 'WCPOS\WooCommercePOS\API\V1\Gateway_Bootstrap_Controller',
			'WCPOS\WooCommercePOS\API\V2\Logs'                           => 'WCPOS\WooCommercePOS\API\V1\Logs',
			'WCPOS\WooCommercePOS\API\V2\Payment_Gateways'               => 'WCPOS\WooCommercePOS\API\V1\Payment_Gateways',
			'WCPOS\WooCommercePOS\API\V2\Print_Jobs_Controller'          => 'WCPOS\WooCommercePOS\API\V1\Print_Jobs_Controller',
			'WCPOS\WooCommercePOS\API\V2\Receipts_Controller'            => 'WCPOS\WooCommercePOS\API\V1\Receipts_Controller',
			'WCPOS\WooCommercePOS\API\V2\Settings'                       => 'WCPOS\WooCommercePOS\API\V1\Settings',
			'WCPOS\WooCommercePOS\API\V2\Shipping_Methods_Controller'    => 'WCPOS\WooCommercePOS\API\V1\Shipping_Methods_Controller',
			'WCPOS\WooCommercePOS\API\V2\Stores'                         => 'WCPOS\WooCommercePOS\API\V1\Stores',
			'WCPOS\WooCommercePOS\API\V2\Tax_Classes_Controller'         => 'WCPOS\WooCommercePOS\API\V1\Tax_Classes_Controller',
			'WCPOS\WooCommercePOS\API\V2\Templates_Controller'           => 'WCPOS\WooCommercePOS\API\V1\Templates_Controller',
		);

		if ( isset( $aliases[ $class ] ) ) {
			class_alias( $aliases[ $class ], $class );
		}
	}
);

```
