Why am I seeing “Unable To Verify $_POST Vars”?
If you're seeing a message in your s2Member Logs that says
Unable To Verify $_POST Vars, that indicates s2Member was unable to communicate with the payment gateway. There are many reasons that could happen, but the most likely are related to an invalid configuration of s2Member, or a problem with server compatibility.
Checking Your Server Compatibility
To help simplify the process of testing your server for compatibility, we have created a tool called the s2Member Server Scanner that will run many tests for you automatically and make suggestions for how you can solve any issues.
The s2Member Server Scanner is a helpful debugging tool that will analyze your server configuration, WordPress configuration; as well as your s2Member installation files and settings. The output generated by the s2Member Server Scanner may also help you correct common problems that we have seen on some WordPress/s2Member installations out there.
If the s2Member Server Scanner finds compatibility issues, you will need to work with your web hosting company to resolve these issues. If your web host is unable to resolve the issues, we recommend switching to another web host.
If the s2Member Server Scanner finds no issues and you're still seeing
Unable To Verify $_POST Vars in your s2Member Logs, then you likely have an issue with your s2Member configuration (see the next section).
Checking Your s2Member Configuration
If the s2Member Server Scanner (see above) passes all of the tests and shows that your server is fully compatible with s2Member, and you are still seeing
Unable To Verify $_POST Vars in your s2Member Logs, then you likely have a misconfiguration somewhere in the s2Member configuration for the payment gateway you're using.
To verify your payment gateway configuration, go through all of the configuration options in s2Member → [Payment Gateway] Options (where [Payment Gateway] is the payment gateway you're using, e.g., PayPal, or Stripe, or Authorize.Net) and double-check that all of the values are correct.
If a field requires a URL or a token or a username from your payment gateway, login to your payment gateway and copy/paste the information again just to make sure there are no extra spaces or invalid characters being copied over.
You'll want to check all of the payment gateway configuration in s2Member. For example, if you're using the PayPal payment gateway, you'll want to verify the configuration in all of these sections:
- s2Member → PayPal Options → PayPal Account Details
- s2Member → PayPal Options → Payflow Account Details (if applicable)
- s2Member → PayPal Options → PayPal IPN Integration
- s2Member → PayPal Options → PayPal PDT/Auto-Return Integration
If there is a required value that is missing or incorrect, s2Member will not be able to verify the details of a transaction with the payment gateway and as a result, you'll see the
Unable To Verify $_POST Vars error message.