mmerce.com/my-account/contact-support/?select=woocommerce-paypal-payments', ), ), 'tags' => array( self::TAG_MADE_IN_WOO, self::TAG_PREFERRED ), ), self::PAYPAL_WALLET => array( '_type' => self::TYPE_EXPRESS_CHECKOUT, 'title' => esc_html__( 'PayPal Payments', 'woocommerce' ), 'description' => esc_html__( 'Safe and secure payments using your customer\'s PayPal account.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/paypal.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/paypal.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woocommerce-paypal-payments', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.paypal.com/webapps/mpp/merchant-fees#advanced_cd_payments', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/woocommerce-paypal-payments/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://www.paypal.com/legalhub/home', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/woocommerce-paypal-payments/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=woocommerce-paypal-payments', ), ), 'tags' => array( self::TAG_MADE_IN_WOO ), ), self::PAYONEER => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Payoneer Checkout', 'woocommerce' ), 'description' => esc_html__( 'Payoneer Checkout is the next generation of payment processing platforms, giving merchants around the world the solutions and direction they need to succeed in today\'s hyper-competitive global market.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/payoneer.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/payoneer.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'payoneer-checkout', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.payoneer.com/about/pricing/', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/payoneer-checkout/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://www.payoneer.com/legal-agreements/', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://checkoutdocs.payoneer.com/docs/about-woocommerce-integration', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://checkoutdocs.payoneer.com/docs/troubleshoot-woocommerce', ), ), ), self::PAYSTACK => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Paystack', 'woocommerce' ), 'description' => esc_html__( 'Paystack helps African merchants accept one-time and recurring payments online with a modern, safe, and secure payment gateway.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/paystack.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/paystack.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woo-paystack', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://paystack.com/pricing', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/paystack/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://paystack.com/terms', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/paystack/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://support.paystack.com/en/articles/2130754', ), ), ), self::PAYU_INDIA => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'PayU India', 'woocommerce' ), 'description' => esc_html__( 'Enable PayU\'s exclusive plugin for WooCommerce to start accepting payments in 100+ payment methods available in India including credit cards, debit cards, UPI, & more!', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/payu.svg', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/payu.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'payu-india', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://payu.in/pricing/', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/payu-india/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://payu.in/payu-terms-and-conditions/', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://payu.in/plugins/payment-gateway-for-woocommerce-plugin', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://help.payu.in/', ), ), ), self::RAZORPAY => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Razorpay', 'woocommerce' ), 'description' => esc_html__( 'The official Razorpay extension for WooCommerce allows you to accept credit cards, debit cards, netbanking, wallet, and UPI payments.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/razorpay.svg', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/razorpay.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woo-razorpay', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://razorpay.com/pricing/', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/razorpay-for-woocommerce/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://razorpay.com/terms/', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://razorpay.com/docs/payment-gateway/ecommerce-plugins/woocommerce/woocommerce-pg/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://razorpay.com/support/', ), ), ), self::SQUARE_IN_PERSON => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Square', 'woocommerce' ), 'description' => esc_html__( 'Securely accept credit and debit cards with one low rate, no surprise fees (custom rates available). Sell in store and track sales and inventory in one place.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/square-black.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/square.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woocommerce-square', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://squareup.com/pricing', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/square/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://squareup.com/legal/general/ua', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/woocommerce-square/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=square', ), ), 'tags' => array( self::TAG_MADE_IN_WOO ), ), self::STRIPE => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Stripe', 'woocommerce' ), 'description' => esc_html__( 'Accept debit and credit cards in 135+ currencies, methods such as Alipay, and one-touch checkout with Apple Pay.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/stripe.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/stripe.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woocommerce-gateway-stripe', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://stripe.com/pricing', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/stripe/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://stripe.com/legal/connect-account', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/stripe', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=stripe', ), ), 'tags' => array( self::TAG_MADE_IN_WOO ), ), self::TILOPAY => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Tilopay', 'woocommerce' ), 'description' => esc_html__( 'Accept credit and debit cards on your WooCommerce store with advanced features like partial refunds, full/partial captures, and 3D Secure security.', 'woocommerce' ), 'icon' => plugins_url( 'assets/images/onboarding/icons/tilopay.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'tilopay', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://tilopay.com/tarifas', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://tilopay.com/tilopay-checkout', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://tilopay.com/terminos-condiciones', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://tilopay.com/documentacion/plataforma-woocommerce', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://cst.support.tilopay.com/servicedesk/customer/portals', ), ), 'tags' => array( self::TAG_PREFERRED ), ), self::VIVA_WALLET => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Viva.com Standard Checkout', 'woocommerce' ), 'description' => esc_html__( 'Viva.com is a European payments solution that allows you to accept payments in 24 countries and multiple currencies.', 'woocommerce' ), 'icon' => plugins_url( 'assets/images/onboarding/icons/vivacom.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'vivawallet-woocommerce-gateway', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.viva.com/pricing', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/viva-wallet-for-woocommerce/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://www.viva.com/terms-portal', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/viva-wallet-for-woocommerce/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/document/viva-wallet-standard-checkout/#section-26', ), ), ), self::WOOPAYMENTS => array( '_type' => self::TYPE_PSP, 'title' => esc_html__( 'Accept payments with Woo', 'woocommerce' ), 'description' => esc_html__( 'Credit/debit cards, Apple Pay, Google Pay, and more.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/woopayments.svg', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/woo.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woocommerce-payments', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://woocommerce.com/document/woopayments/fees-and-debits/', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/payments/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://woocommerce.com/document/woopayments/our-policies/', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/woopayments/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=woopayments', ), ), 'tags' => array( self::TAG_MADE_IN_WOO, self::TAG_PREFERRED ), ), self::AMAZON_PAY => array( '_type' => self::TYPE_EXPRESS_CHECKOUT, 'title' => esc_html__( 'Amazon Pay', 'woocommerce' ), 'description' => esc_html__( 'Enable a familiar, fast checkout for hundreds of millions of active Amazon customers globally.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/amazonpay.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/amazonpay.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woocommerce-gateway-amazon-payments-advanced', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://pay.amazon.com/help/201212280', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/pay-with-amazon/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://pay.amazon.com/help/201212430', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/amazon-payments-advanced/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=pay-with-amazon', ), ), 'tags' => array( self::TAG_MADE_IN_WOO ), ), self::AFFIRM => array( '_type' => self::TYPE_BNPL, 'title' => esc_html__( 'Affirm', 'woocommerce' ), 'description' => esc_html__( 'Affirm\'s tailored Buy Now Pay Later programs remove price as a barrier, turning browsers into buyers, increasing average order value, and expanding your customer base.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/affirm.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/affirm.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'woocommerce-gateway-affirm', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.affirm.com/business', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/woocommerce-gateway-affirm/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://www.affirm.com/terms', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/woocommerce-gateway-affirm/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=woocommerce-gateway-affirm', ), ), 'tags' => array( self::TAG_MADE_IN_WOO ), ), self::AFTERPAY => array( '_type' => self::TYPE_BNPL, 'title' => esc_html__( 'Afterpay', 'woocommerce' ), 'description' => esc_html__( 'Afterpay allows customers to receive products immediately and pay for purchases over four installments, always interest-free.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/afterpay.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/afterpay-clearpay.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'afterpay-gateway-for-woocommerce', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.afterpay.com/for-retailers', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/afterpay/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://www.afterpay.com/terms-of-service', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/afterpay/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=afterpay', ), ), ), self::CLEARPAY => array( '_type' => self::TYPE_BNPL, 'title' => esc_html__( 'Clearpay', 'woocommerce' ), 'description' => esc_html__( 'Clearpay allows customers to receive products immediately and pay for purchases over four installments, always interest-free.', 'woocommerce' ), 'icon' => plugins_url( 'assets/images/onboarding/icons/afterpay-clearpay.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'clearpay-gateway-for-woocommerce', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.clearpay.co.uk/en-GB/for-retailers', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/clearpay/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://www.clearpay.co.uk/terms-of-service', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/clearpay/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=clearpay', ), ), ), self::KLARNA => array( '_type' => self::TYPE_BNPL, 'title' => esc_html__( 'Klarna Payments', 'woocommerce' ), 'description' => esc_html__( 'Choose the payment that you want, pay now, pay later or slice it. No credit card numbers, no passwords, no worries.', 'woocommerce' ), 'image' => plugins_url( 'assets/images/onboarding/klarna-black.png', WC_PLUGIN_FILE ), 'icon' => plugins_url( 'assets/images/onboarding/icons/klarna.svg', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'klarna-payments-for-woocommerce', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.klarna.com/us/business/payment-methods/', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/klarna-payments/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://www.klarna.com/us/legal/', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/klarna-payments/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=klarna-payments', ), ), ), self::HELIOPAY => array( '_type' => self::TYPE_CRYPTO, 'title' => esc_html__( 'Helio Pay', 'woocommerce' ), 'description' => esc_html__( 'Effortlessly accept cryptocurrency payments in your WooCommerce store with Helio Pay.', 'woocommerce' ), 'icon' => plugins_url( 'assets/images/onboarding/icons/heliopay.png', WC_PLUGIN_FILE ), 'plugin' => array( '_type' => self::PLUGIN_TYPE_WPORG, 'slug' => 'helio', ), 'links' => array( array( '_type' => self::LINK_TYPE_PRICING, 'url' => 'https://www.hel.io/pricing', ), array( '_type' => self::LINK_TYPE_ABOUT, 'url' => 'https://woocommerce.com/products/helio-pay/', ), array( '_type' => self::LINK_TYPE_TERMS, 'url' => 'https://info.docs.hel.io/terms-of-service', ), array( '_type' => self::LINK_TYPE_DOCS, 'url' => 'https://woocommerce.com/document/helio-pay/', ), array( '_type' => self::LINK_TYPE_SUPPORT, 'url' => 'https://woocommerce.com/my-account/contact-support/?select=helio-pay', ), ), ), ); } /** * Get the base details for a specific extension. * * @see self::standardize_extension_details() for the supported entries. * * @param string $extension_id The extension ID. * * @return ?array The extension base details. * Null if the extension is not one we have details for. */ private function get_extension_base_details( string $extension_id ): ?array { $extensions = $this->get_all_extensions_base_details(); if ( ! isset( $extensions[ $extension_id ] ) ) { return null; } return $extensions[ $extension_id ]; } /** * Standardize the details for an extension. * * Ensures that the details array has all the required fields, and fills in any missing optional fields with defaults. * We also enforce a consistent order for the fields. * * @param array $extension_details The extension details. * * @return array The standardized extension details. */ private function standardize_extension_details( array $extension_details ): array { $standardized = array(); // Required fields. $standardized['id'] = $extension_details['id']; $standardized['_priority'] = $extension_details['_priority']; $standardized['_type'] = $extension_details['_type']; $standardized['title'] = $extension_details['title']; $standardized['description'] = $extension_details['description']; $standardized['plugin'] = $extension_details['plugin']; // Optional fields. $standardized['image'] = $extension_details['image'] ?? ''; $standardized['icon'] = $extension_details['icon'] ?? ''; $standardized['links'] = $extension_details['links'] ?? array(); $standardized['tags'] = $extension_details['tags'] ?? array(); $standardized['_incentive'] = $extension_details['_incentive'] ?? null; return $standardized; } }