Skip to content

WooCommerce Plugin

Powered by Smart Processing Solution

This comprehensive guide will help you successfully integrate our payment gateway within your WooCommerce store.

New in Version 4.0.0+: The plugin now features improved payment verification that reduces dependency on IPN notifications. Multiple verification points ensure orders are properly processed even when IPN notifications fail to arrive.

Understanding Sandbox vs. Production

Before you begin, it's important to understand:

  • Sandbox Mode: This is a test environment where you can safely try the integration without processing real payments. Use this first to ensure everything works properly.

  • Production Mode: Once testing is complete, you'll switch to this mode to process real customer payments.

Important: You will be provided with two separate accounts:

  1. A Sandbox account for testing purposes

  2. A Production account for processing real payments

These two accounts may share the same credentials initially, but they operate on different URLs:

  • Sandbox: https://www.smartprocessingsolution.biz/

  • Production: https://www.smartprocessingsolution.com/

It is crucial that you set up both environments in the same way. Any configuration changes made in one environment must be replicated in the other to ensure consistent operation when you transition from testing to live payments.

Install the Plugin

Download the plugin

Get the latest version from: https://smartprocessingsolution.com/files/documents/smartprocessingsolution-woocommerce.zip

Install in WordPress

  • Log in to your WordPress dashboard
  • Go to Plugins > Add New
  • Click Upload Plugin at the top of the page
  • Select the downloaded ZIP file and click Install Now

Activate the plugin

  • After installation completes, click Activate Plugin
  • You'll be redirected to the plugins page where you should see "WooCommerce Smart Processing Solution Gateway" listed

Configure Your Smart Processing Solution Account

Step 1: Access Your Account Settings

Navigate to your Smart Processing Solution account settings:

Smart Processing Solution Account Settings

Step 2: Complete Site Information and Customer Support

All fields in the Site Information and Customer Support sections are required and must be filled in:

Site Information

  • Site Name: Enter your company or website name
  • Site URL: Enter your website's URL
  • Logo URL: Optional - you can upload a logo or provide a URL to your logo

Site Information

Customer Support

  • Support Number: Enter a customer support phone number
  • Support Email: Enter a customer support email address
  • Support Message: Enter a brief message that will be shown to customers (e.g., "Call Us Any time!")
  • Internal Support Message: Optional - for internal use only

Customer Support

These details will be displayed to your customers during the payment process and in communications, so ensure they are accurate and professional.

Step 3: Set Up Your Notification URL (IPN)

This is a critical step. The Notification URL allows Smart Processing Solution to automatically update your WooCommerce orders when payments are received.

Note about Version 4.0.0+: While IPN setup is still recommended, the plugin now includes multiple fallback verification methods: - When customers return to your store, the API verifies if payment was received - If customers don't return, WordPress cron checks for payment after 5, 10, and 15 minutes - A final verification occurs before WooCommerce would mark an order as "cancelled"

These five additional verification points significantly reduce the chance of paid orders being incorrectly marked as cancelled.

Get your correct Notification URL from WooCommerce

  • Go to WooCommerce > Settings > Payments
  • Click Manage next to "Smart Processing Solution Gateway"
  • Look for the "Notification URL" field - this contains your store's unique IPN URL
  • Copy this exact URL (it will look something like https://your-store-domain.com/?wc-api=WC_Gateway_SPS or https://your-store-domain.com/wc-api/WC_Gateway_SPS)

Enter the Notification URL in Smart Processing Solution

Enter this URL in the "Notification URL" field under "Transaction Notifications" in your Smart Processing Solution account settings.

Transaction Notifications

Verify your Notification URL

Important: Verify your Notification URL by entering it in your browser. If configured correctly, you should see a json formatted response displayed. If you see anything else, check that you've copied the URL correctly.

Step 4: Credentials and Security Settings

In your Smart Processing Solution account, locate the "Credentials and security" section where you'll need to configure several important security credentials:

Credentials and Security

API TOKEN

  • This is a unique identifier for your integration
  • You can generate a secure token automatically by clicking the refresh icon (🔄) next to the field
  • Keep a record of this token as you'll need it for your WooCommerce plugin configuration
  • Example: ZQ2wZvJQmvw9Obe3q4TWgtrR4Z4w75FdGoAH0uLMARPLjaa8FTPUFv2e7jUdh5Ad

API SECRET KEY

  • This is a secure key used to authenticate API requests
  • Click the refresh icon (🔄) to generate a strong secret key automatically
  • Keep this key confidential and secure
  • Example: DATo1ot4j7RKamxs8XddAloKlgKqOky0

ENCRYPTION / HASH KEY

  • Create a strong, unique hash key or use the refresh icon (🔄) to generate one automatically
  • This key is used for security validation of transactions
  • Use letters, numbers, and special characters for better security
  • Example: MEHqZz9P1BYNUTu8

HASH VERIFICATION SETTING

  • Set "CHECK THE HASH IN THE INCOMING GATEWAY REQUESTS?" to "YES" for maximum security
  • This option can be set to "NO" during initial setup or troubleshooting, but should be enabled for production use

IMPORTANT: If you change any of these values, remember to update them everywhere they are used, including your WooCommerce plugin settings and any custom code implementations.

Step 5: Save Your Smart Processing Solution Settings

After entering all your credentials and security settings, click "Update" at the bottom of the page

Step 6: Note Your Merchant ID

Before leaving your Smart Processing Solution account: 1. Locate your 8-digit Merchant ID at the top of the Account Settings page (shown as "YOUR MERCHANT ID" in the interface) 2. Write this down as you'll need it when configuring the plugin.

Configure the Plugin

Access the plugin settings

  • Go to WooCommerce > Settings > Payments
  • Click Manage next to "Smart Processing Solution Gateway"

Configure the settings

WooCommerce Basic Settings

Basic Settings

  • Enable/Disable: Check "Enable Smart Processing Solution Payments" to activate the payment method
  • Title: What customers will see at checkout (default: "Credit Card Payment")
  • Description: Additional information shown to customers (example: "Pay securely by debit/credit cards")
  • Hide at checkout for non-admin users: Enable this if you want to hide this payment method from regular customers (useful during testing)

Environment Settings

  • Sandbox/test mode:
  • Check this box when using the Sandbox for testing
  • Uncheck when ready to accept real payments
  • Sandbox URL: The URL for the test environment (default: https://www.smartprocessingsolution.com)
  • Merchant ID: Enter your 8-digit Merchant ID from your Smart Processing Solution account
  • Sub-account: Optional field if you're using sub-accounts

Security Credentials

WooCommerce Credentials

  • Encryption / Hash Key: Enter the exact hash key from your Smart Processing Solution account
  • API Token: Enter the API Token from your Smart Processing Solution account
  • Secret Key: Enter the Secret Key from your Smart Processing Solution account

Order Settings

  • Order status after payment: Choose what status successful orders should have (recommended: "Processing")

Notification Settings

  • Send an alert on IPN processing error: Enable to receive email alerts if payment notifications fail
  • Who receives the IPN alert: Email address for receiving alerts
  • Process refund automatically: Enable to automatically update order status when refunds are processed
  • Refund with API: Enable to process refunds through the API

Advanced Settings

  • Verbose logging: Enable for detailed transaction logs (helpful for troubleshooting)
  • Validate IPN IP: Security feature to validate that IPN requests come from authorized servers
  • Validate IPN Signature: Additional security validation for IPN notifications

Save your settings

Save your settings by clicking Save changes at the bottom of the page

Enhanced Payment Verification (Version 4.0.0+)

Starting with version 4.0.0, the plugin implements a robust payment verification system that significantly reduces dependency on IPN notifications:

  1. Primary Method: IPN (Instant Payment Notification)
  2. When properly configured, this remains the fastest way to update order status

  3. Fallback Methods (automatically activated if IPN fails):

  4. Customer Return Verification: When customers return to your shop (which happens automatically), the API verifies if payment was received
  5. Scheduled Verifications: If the customer doesn't return, WordPress cron checks for payment after:
    • 5 minutes
    • 10 minutes
    • 15 minutes
  6. Pre-Cancellation Check: Before WooCommerce changes an unpaid order to "cancelled," a final verification is made with the API

This multi-layered approach ensures that orders paid by customers are properly marked as such, even if there are issues with the IPN system.

Important: These enhanced verification methods only work if your API credentials (API Token and Secret Key) are correctly configured in both your merchant account and WooCommerce plugin settings. Ensure these credentials match exactly in both systems.

Testing Your Integration

Before accepting real payments, test your setup using the Sandbox mode:

Configure for testing

Ensure your plugin is configured with: - Sandbox/test mode: Checked - Your Sandbox account's Merchant ID and security credentials

Place a test order

Place a test order on your store and proceed to checkout

Use test card details

  • Card Number: 4444 3333 2222 1111
  • Expiry Date: 05/26
  • CVV: 235

Verify the process

Complete the purchase and verify: - The order is created in WooCommerce - The order status updates correctly - Check the order notes to confirm transaction details

Switch to production

When ready for production: - Uncheck Sandbox/test mode - Update the Merchant ID and security credentials to match your production Smart Processing Solution account

Upgrading the Plugin

Since this plugin is not published on the WordPress Plugin Directory, upgrades must be performed manually. Here's how to upgrade when a new version becomes available:

When a New Version is Released

Notification

You will see a notice in your WordPress admin dashboard informing you that a new version is available. This notice will include a link to download the latest version.

Download

Click the provided link to download the new ZIP file of the plugin.

Upgrade Process

Install the new version

  • Go to Plugins > Add New
  • Click Upload Plugin at the top of the page
  • Select the newly downloaded ZIP file and click Install Now
  • When prompted that the plugin already exists, click Replace current with uploaded

Verify the upgrade

  • Confirm that the plugin version number has been updated
  • Your previous settings will be preserved automatically

After Upgrading

  • Verify that the plugin is functioning correctly by testing a transaction
  • Check the plugin settings to ensure everything is configured as expected

Note: If you encounter any issues after upgrading, please contact our support team at [email protected].

Troubleshooting

Common Issues and Solutions

Payment not processing or orders not updating automatically

  • Verify your Notification URL is correctly set in Smart Processing Solution
  • Test the Notification URL in your browser (should show a json response)
  • Check that your security credentials match exactly between Smart Processing Solution and the plugin

Test payments failing

  • Confirm you're using the correct test card details
  • Verify Sandbox/test mode is checked
  • Ensure your Sandbox Merchant ID and security credentials are entered correctly

Production payments failing

  • Confirm Sandbox/test mode is unchecked
  • Verify you've entered your production Merchant ID and security credentials
  • Check that your Notification URL is accessible from the internet

Support

If you continue to experience issues, please contact our support team at [email protected] with the following information:

  • Your website URL
  • Your Merchant ID
  • A description of the issue
  • Any error messages you're receiving