Beyond Pay for WooCommerce Plugin
Securely accept credit card payments using Beyond Pay gateway and optimize your cost of acceptance on B2B/corporate cards.
Securely accept credit cards directly on your WooCommerce store using Beyond with this WordPress plugin.
Features
- Accept Visa, MasterCard, American Express, Discover, JCB, and Diners Club brand cards directly on your website
- No redirect to a third-party hosted payment page, reducing checkout friction and cart abandonment
- Card data is securely captured with Beyond Pay Gateway’s hosted payment fields presented via inline frame (iframe) and tokenized before reaching your server
- Recurring billing integration with the WooCommerce Subscriptions Extension. Beyond Pay for WooCommerce subscription features include the ability for customers to store or change their cards on file, cancel/suspend/reactivate subscriptions, and modify subscription amounts and due dates.
- Simplifies merchant PCI compliance obligations to the shorter Self-Assessment Questionnaire “A” (SAQ-A)
- Support either pre-authorization and later capture when WooCommerce order status changes, or authorization and capture at once (the combined “sale” transaction type)
- Optimize B2B card acceptance costs by automatically sending additional transaction data elements (also known as “Level II” and “Level III” information
- Issue refunds directly from the Order Details screen
- Custom CSS styling support for the hosted payment fields so you can create your ideal checkout experience
- Customizable gateway response and error messaging
- Test/sandbox mode for development and staging
Configuration
- From your WordPress /wp-admin page, navigate to WooCommerce > Settings.
- Select the Payments tab at the top of the screen.
- Click the Manage button for the Beyond Pay Gateway payment method.
- Proceed to configure payment method options available on this page:
- Enable/Disable – toggle to control whether this payment method is enabled or disabled
- Title – this controls how this payment method is listed to the consumer during checkout; defaults to “Credit/Debit Card”
- Description – expanded description of this payment method when selected by consumer; defaults to “Pay with your credit or debit card.”
- Detailed Error Messages – controls the message returned to the consumer when there is a problem with their payment; defaults to “Something went wrong: %S. Please try again.” where %S represents the raw response or error message returned by the gateway
- Enable Test Mode – controls whether transactions are sent to the Test/Sandbox or the Live/Production Beyond Pay Gateway environment and which type of API keys are expected; defaults to Live
- Username, Password, PublicKey, PrivateKey, MerchantCode, and MerchantAccountCode – these are the credentials by which the plugin authenticates to the Beyond Pay Gateway in order to process payments; for Test Mode, you can request Beyond Pay Gateway sandbox API keys while live credentials are provided by Beyond once the merchant processing account is approved
- Transaction Mode – controls how authorizations and payment captures are managed
- Set this to Authorization to perform only an authorization (“pre-auth”) when an order is placed which requires the Order Status to be changed to Completed in order for the payment to be captured (usually when an order is shipped)
- Set this to Sale to authorize and capture the payment immediately (usually used for digital products)
- Learn more about best practices for authorization and capture/settlement from the Visa E-Commerce Risk Management Best Practices document
- Level II/III Data – controls which extended data elements are automatically sent with transaction requests in order to optimize interchange rates on B2B cards; Level II includes reference number and tax amount, while Level III includes line-item details. Set to Level III to ensure you always qualify for the best rates on eligible corporate purchasing cards. (Tax-exempt transactions are not eligible for Level II interchange rates but may be eligibile for Level III.)
- Advanced Styling – allows for customized styling of the Beyond Pay card collection iframe via CSS
- Verbose Logging – enable for troubleshooting or development in order to log the gateway request and response messages on the Order Detail page; sensitive authentication details are not logged nor is any card data ever stored
- Click the Save Changes button once you have completed configuration; the page will refresh and a message reading “Your settings have been saved” will display at the top.
You are now ready to accept payments through Beyond Pay Gateway on your WooCommerce store!
WooCommerce Subscriptions Integration
Beyond Pay for WooCommerce offers automated recurring billing functionality through integration with the official WooCommerce Subscriptions Extension. The Subscriptions Extension must be purchased from WooCommerce before recurring payments can be accepted with Beyond Pay for WooCommerce.
Setting up your subscriptions is simple:
- Create a subscription product in the Products module of WooCommerce and define the price and terms: e.g., “$5.90 every 2nd month”.
- As customers purchase subscription products on your store, they will be prompted to create a user account and save their payment method on file.
- When the payment is due, Beyond Pay for WooCommerce will automatically charge the card on file without you having to do anything.
- The status of each scheduled payment is reported back to your WooCommerce Subscription extension in WooCommerce, whether successful or failed.
- Your customers can change their payment method on the WooCommerce “my-account” page. Here, customers can also click the “Renew Now” button and pay their subscription ahead of the due date.
All card on file data is securely tokenized by Beyond Pay and never touches your server.
Installation
There are 2 primary ways to install this plugin: Automatic or Manual
Automatic Installation
- From your WordPress /wp-admin page, navigate to Plugins > Add New.
- Enter “Beyond Pay” in the search form in the top right of the screen.
- Select Beyond Pay for WooCommerce from the search results.
- Click the Install Now button to install the plugin.
- Click Activate to activate the plugin.
Manual Installation
- Make sure WooCommerce is installed and enabled on your WordPress instance.
- Download the beyondpay-gateway.zip from the latest release.
- From your WordPress /wp-admin page, navigate to Plugins > Add New.
- Click the Upload Plugin button at the top of the screen.
- Select the beyondpay-gateway.zip file from your local filesystem that was obtained earlier.
- Click Install Now.
- When the installation is complete you will see the message “Plugin installed successfully.”
- Click the Activate Plugin button at the bottom of the page.
- For more information on managing WordPress plugins, see https://wordpress.org/support/article/managing-plugins/
Screenshots
WooCommerce Checkout page with Beyond Pay enabled as the payment method (in test mode) and default form styling
Beyond Pay for WooCommerce configuration settings
Additional configuration settings for Beyond Pay plugin
FAQ
Is it secure and/or compliant to accept credit cards directly on my website? Yes! Beyond Pay Gateway secures card data by hosting the actual payment fields and presenting them in an iframe so that the fields only appear to be part of the WooCommerce checkout form.
Once card data is collected, then the information is further secured by tokenization: a process in which the sensitive card data is exchanged for a non-sensitive representation, or “token.” This ensures that cardholder data is not sent from the consumer’s browser to the merchant’s web server, and only the surrogate token value comes into contact with the merchant’s systems.
Do I have to have an SSL/TLS certificate? Yes. All submission of sensitive payment data by the Beyond Pay is made via a secure HTTPS connection from the cardholder’s browser. However, to protect yourself from man-in-the-middle attacks and to prevent your users from experiencing mixed content warnings in their browser, you MUST serve the page with your payment form over HTTPS.
Does this gateway plugin support a sandbox or test option? Yes. For Test Mode, you can request Beyond Pay Gateway sandbox API keys while production (live) API keys are provided by Beyond once the merchant processing account is approved.
Does this gateway plugin support WooCommerce Subscriptions? Yes! Beyond Pay for WooCommerce supports recurring payments for the official WooCommerce Subscriptions Extension. Subscription features include the ability for customers to store or change their cards on file, cancel/suspend/reactivate subscriptions, and modify subscription amounts and due dates.
How can I refund a transaction? From your WordPress /wp-admin page, navigate to Orders, select the order you would like to refund, and press the button that says Refund $X.XX via Beyond Pay Gateway. You will be prompted to confirm the action, as the refund cannot be undone.
How can I get further support? Contact [email protected], or submit a support ticket via WordPress, or submit an issue via GitHub. For basic support and troubleshooting of your credit card transactions, batches, etc., you may also contact our Service Center at 1-888-480-1571.
Changelog
1.7.2
- Updated documentation
- Code cleanup
1.7.1
- Improve verbose logging entry labeling.
- Manual status check update.
1.7.0
- Added automated payment status update capability, tested with WordPress 6.1.1
1.6.1
- Add WordPress Multisite support.
1.6.0
- Add manual tools for updating payment status for orders, that are pending payment.
1.5.3
- Add credit card information on order details page (only for new orders).
1.5.2
- Sale transaction mode assignment issue fixed.
1.5.1
- Include Account Holder information when processing saved payments.
1.5.0
- ‘Save Card ONLY’ transaction mode added.
1.4.2
- Debug mode support added.
1.4.1
- Payment methods management support added.
1.4.0
- Subscription and refund support added.
1.3.4
- Differentiate test and prod TokenPay URLs.
1.3.3
- Don’t strip chars on User and Password fields;
- Improved error handling on capture failures.
1.3.2
- Strip unsupported chars for transaction request.
1.3.1
- Namespace updates, library changes, and general cleanup.
1.3.0
- Added advanced CSS styling options for iframe.
- Updated default payment form styling.
1.2.0
- Enhanced mapping of data elements from WooCommerce to Beyond Pay.
1.1.1
- Added automatic defaulting of Level II/III data elements as a configuration option.
- Corrected validation issue after token generation.
1.1.0
- Added support for Level II and Level III data elements.
1.0.4
- Included the /vendor directory within the plugin itself.
- Added enhanced error messaging if WooCommerce is not installed.
1.0.3
1.0.2
- Added support for both Sale and Authorization transaction modes.