F2M Pay for WooCommerce
F2M Pay for WooCommerce
Description
F2M Pay for WooCommerce is a comprehensive payment gateway plugin that enables your WooCommerce store to accept cryptocurrency payments. This plugin goes beyond basic payment processing by offering advanced features including profit sharing, automated refund management, and support for multiple signature methods.
Key Features
- Multiple Cryptocurrency Support – Accept payments in various cryptocurrencies supported by F2M Pay
- Advanced Profit Sharing – Automatically split payments between multiple parties (merchant, TSP, distributor)
- Smart Refund Orchestration – State machine-based refund processing with automatic commission clawback
- Multi-Signature Methods – Supports HMAC-SHA256, HMAC-SHA512, and RSA signature algorithms
- Channel Partner Support – Built-in support for channel partner/sub-merchant configurations
- Express Checkout – Quick checkout buttons on product and cart pages
- HPOS Compatible – Full support for WooCommerce High-Performance Order Storage
- Centralized Management – Optional centralized database for multi-store management
- Comprehensive Logging – Detailed transaction, webhook, and refund logs for debugging
- Secure Credential Storage – AES-256-CBC encryption for sensitive API credentials
Payment Flow
- Customer selects F2M Pay at checkout
- Order is created and customer is redirected to F2M Pay checkout
- Customer completes payment using their F2M account
- Webhook confirms payment and order is automatically completed
- If profit sharing is enabled, commissions are automatically distributed
- Refunds trigger automatic commission clawback and customer refund
Requirements
- WordPress 6.0 or higher
- WooCommerce 7.0 or higher
- PHP 7.4 or higher
- MySQL 5.7 or higher
- SSL certificate (HTTPS required)
- F2M account with API credentials
Documentation & Support
For documentation and support, please visit F2M Labs or contact us at contact@f2mlabs.com.
Security
This plugin implements multiple security measures:
- AES-256-CBC encryption for API credentials
- Prepared statements for all database queries
- Input sanitization and output escaping
- Nonce verification for AJAX requests
- Capability checks for admin functions
- HTTPS requirement for webhooks
- Signature verification for payment webhooks
- Security headers on API endpoints
If you discover a security vulnerability, please email security@f2mlabs.com
External Services
This plugin connects to external third-party services to process payments. By using this plugin, you agree to the terms and privacy policies of these services.
F2M Pay API
This plugin sends data to the F2M Pay API (the payment gateway API) to create and process cryptocurrency payments.
Data sent:
* Order number and amount
* Currency and fiat currency
* Merchant ID and API credentials (server-to-server only)
When data is sent:
* When a customer initiates a payment at checkout
* When querying payment or refund status
* When processing refunds
Centralized Management API (Optional)
If configured by the store administrator, this plugin can optionally connect to a centralized management API to synchronize transaction data across multiple stores. This feature is disabled by default and requires the administrator to explicitly configure the API endpoint and key in the plugin settings.
Data sent (when enabled):
* Transaction records (order ID, amount, currency, status)
* Webhook logs
* Refund records
* Store URL and Merchant ID
Data NOT sent:
* F2M API Secret (never transmitted)
* Customer personal information
* Payment card or wallet details
This feature can be fully disabled by leaving the “Central API Endpoint” and “Central API Key” fields empty in the plugin settings.
DPT Pay API
This plugin supports DPT Pay as an alternative cryptocurrency payment gateway.
Data sent:
* Order number and amount
* Currency
* Merchant ID (server-to-server only)
When data is sent:
* When a customer selects DPT Pay at checkout
* When querying payment status
* When processing refunds
Privacy Policy
This plugin:
- Stores transaction data (order amounts, trade numbers, statuses) in your WordPress database
- Sends order information (order number, amount, currency) to F2M Pay API for payment processing
- Optionally sends transaction and webhook data to a centralized management API if explicitly configured by the administrator
- Does not send customer personal data (name, email, address) to any third party
- Does not store or transmit F2M API Secrets to any external service
- Complies with GDPR requirements for data handling
For more information, see our Privacy Policy
Credits
Developed by F2M Labs
https://www.f2mlabs.com
License
This plugin is licensed under GPLv3 or later.
https://www.gnu.org/licenses/gpl-3.0.html
Installation
Automatic Installation
- Log in to your WordPress admin panel
- Navigate to Plugins > Add New
- Search for “F2M Pay for WooCommerce”
- Click “Install Now” and then “Activate”
Manual Installation
- Download the plugin ZIP file
- Extract the ZIP file
- Upload the
f2m-pay-woocommercefolder to/wp-content/plugins/ - Activate the plugin through the ‘Plugins’ menu in WordPress
Configuration
- Navigate to WooCommerce > F2M Pay
- Click on “Merchant Config” tab
- Enter your F2M API credentials:
- Merchant ID
- API Key
- API Secret
- Select signature method (HMAC-SHA512 recommended)
- Configure webhook URL in your F2M dashboard
- Go to “Settings” tab and enable F2M Pay
- Test the payment flow with a small transaction
For detailed setup instructions, see the Installation Guide included with the plugin.
Screenshots

Payment Providers - F2M Pay active in WooCommerce payment settings

Gateway Settings - API Key, Secret, and Test Mode configuration

Checkout Page - Pay with Crypto option at checkout

Payment Page - Choose network (Solana, Ethereum, Polygon)

Payment Details - QR code, wallet address, and Connect Wallet option
Faq
Yes, you need a F2M account to use this plugin. You can apply at https://pay.f2m.dev
F2M Pay supports all cryptocurrencies available in your F2M account, including BTC, ETH, USDT, BUSD, BNB, and many others.
Yes, SSL (HTTPS) is required for webhook functionality and secure payment processing.
Refunds are processed through an intelligent state machine that:
1. Claws back commissions from profit sharing recipients (if applicable)
2. Processes the refund through F2M Pay
3. Updates the WooCommerce order status
4. Provides detailed logging of each step
Yes, the plugin includes centralized database support for managing multiple stores from a single API endpoint.
The plugin supports:
* HMAC-SHA512 (recommended)
* HMAC-SHA256
* RSA with certificate-based signing
Yes, the plugin includes full support for WooCommerce Checkout Blocks.
Navigate to WooCommerce > F2M Pay > Integration tab to find your webhook URLs.
Reviews
Changelog
3.1.0 – 2026-07-13
- Security: Webhook signature verification now rejects requests when webhook_secret is not configured
- Security: SSL verification enabled for test mode loopback requests (with WP_DEBUG fallback)
- Security: All webhook JSON payloads sanitized after json_decode via map_deep
- Security: SVG output wrapped with wp_kses() using custom allowed tags
- Improved: All inline CSS/JS extracted to separate enqueued files (14 instances)
- Improved: All script/style handles prefixed with f2m-bpay-
- Improved: JS variable escaping with esc_js() and esc_url() in templates
- Improved: $_GET parameters sanitized with sanitize_key() instead of bare isset()
- Fixed: wp_localize_script variable name mismatch (binancePayExpress f2mBpayExpress)
- Fixed: Translation file names updated to match new text domain
- Fixed: Removed hardcoded test domain (kongfuearpods)
- Fixed: Removed error_reporting() override
- Fixed: Removed “powered by F2M” from customer-facing gateway description
- Updated: Tested up to WordPress 7.0
- Updated: Added Requires Plugins: woocommerce header
- Updated: Added WC requires/tested headers to readme.txt
- Updated: Contributors updated to f2mpay, f2mlabs
- Updated: All f2mlabs.com links verified and corrected
3.0.0 – 2026-07-08
- Breaking: Plugin files renamed from binance-* to f2m-* (legacy stub included for compatibility)
- Breaking: Text Domain changed to f2m-pay-for-woocommerce
- Improved: Removed all error_log() calls, replaced with WC Logger
- Improved: All user-visible Binance branding replaced with F2M Pay
- Fixed: Unprepared SQL queries now use $wpdb->prepare()
- Fixed: Removed reference to non-existent class-binance-api.php
- Added: LICENSE file
2.4.1 – 2026-07-08
- Improved: Replaced plugin-level “F2M Pay” branding with “F2M Pay” in order notes and debug logs
- Improved: Updated readme.txt plugin title to “F2M Pay for WooCommerce”
2.4.0 – 2026-07-08
- New: WooCommerce Block Checkout support for DPT Pay gateway
- Improved: Block Checkout script dependency declarations (blocks.asset.php)
- Improved: Defensive checks in blocks.js for missing global objects
- Improved: Payment method icons in Block Checkout display
- Fixed: String ‘1’ value handling in Block gateway enabled check
2.3.3 – 2026-07-05
- Improved: Auto-send webhookUrl when creating payment orders
- Improved: i18n support for gateway method description
2.3.2 – 2026-07-01
- Improved: i18n support for test payment page — all user-facing text now uses WordPress translation functions
- Improved: i18n support for test payment handler — error messages and order notes now translatable
- Updated: Chinese (zh_CN) translation files with all new strings
2.0.0 – 2026-01-05
- New: Advanced profit sharing with automatic commission distribution
- New: Refund state machine with intelligent orchestration
- New: Commission clawback on refunds
- New: Multi-signature support (HMAC-SHA256, HMAC-SHA512, RSA)
- New: Channel partner/sub-merchant support
- New: Express checkout buttons
- New: Centralized database for multi-store management
- New: Comprehensive admin interface with tabs
- New: WooCommerce Blocks integration
- Improved: Security with AES-256-CBC credential encryption
- Improved: HPOS compatibility
- Improved: Webhook handling and logging
- Improved: Error handling and logging
- Fixed: SSL verification in API calls
- Fixed: Input sanitization and output escaping
- Fixed: Database query security
1.0.0 – 2025-12-01
- Initial release
- Basic F2M Pay integration
- Simple payment processing
- Basic refund support