ERROR: Unexpected txn_type/status.
The txn_type/status did not meet requirements.
Please contact Support for assistance.', "s2member-front", "s2member"), _x ("Back To Home Page", "s2member-front", "s2member"), home_url ("/")); } } else unset($__refs, $__v); // Else a custom conditional has been applied by filters. } else // Else, use the default ``$_SERVER["HTTP_HOST"]`` error. { if /* Enqueue an admin notice if the site owner is using the wrong domain variation. */ ($paypal["custom"] && ($paypal["custom"] === "www.".$_SERVER["HTTP_HOST"] || "www.".$paypal["custom"] === $_SERVER["HTTP_HOST"])) c_ws_plugin__s2member_admin_notices::enqueue_admin_notice("s2Member: Post-processing failed on at least one transaction. It appears that you have a PayPal Button configured with a custom=\"\" Shortcode Attribute that does NOT match up with your installation domain name. If your site uses the www. prefix, please include that. If it does not, please exclude the www. prefix. You should have custom=\"".preg_replace ("/\:([0-9]+)$/", "", $_SERVER["HTTP_HOST"])."\"", "*:*", true); // Keep trying until we get it. TODO: may need improvement. https://f.wpsharks.com/t/5250/83 sleep(3); wp_redirect( home_url( preg_replace( '`(&do_not_cache=[0-9]{5}){2,}`', '&do_not_cache=' . rand(10000,99999), $_SERVER["REQUEST_URI"] . '&do_not_cache=' . rand(10000,99999) ) ) ); exit; $paypal["s2member_log"][] = 'Unable to verify `$_SERVER["HTTP_HOST"]`. Please check the `custom` value in your Button Code. It MUST start with your domain name.'; $paypal["s2member_log"][] = "Redirecting Customer to the Home Page (after displaying an error message)."; echo c_ws_plugin__s2member_return_templates::return_template ($paypal["subscr_gateway"], _x ('ERROR: Unable to verify $_SERVER["HTTP_HOST"].
Please contact Support for assistance.

If you are the site owner, please check the custom value in your Button Code. It MUST start with your domain name.', "s2member-front", "s2member"), _x ("Back To Home Page", "s2member-front", "s2member"), home_url ("/")); } } else // In this case ... a Proxy has explicitly requested `ty-email` processing. $paypal = $_paypal_cp = c_ws_plugin__s2member_paypal_return_in_proxy_ty_email::cp (get_defined_vars ()); } else if (!empty($_GET["s2member_paypal_proxy"]) && !empty($_GET["s2member_paypal_proxy_use"]) && preg_match ("/x-preview/", $_GET["s2member_paypal_proxy_use"]) && ($paypal["subscr_gateway"] = esc_html (trim (stripslashes ($_GET["s2member_paypal_proxy"]))))) $paypal = $_paypal_cp = c_ws_plugin__s2member_paypal_return_in_proxy_x_preview::cp (get_defined_vars ()); else if (empty($_GET["tx"]) && empty($_GET["s2member_paypal_proxy"]) && ($paypal["subscr_gateway"] = "paypal")) $paypal = $_paypal_cp = c_ws_plugin__s2member_paypal_return_in_no_tx_data::cp (get_defined_vars ()); else // Extensive log reporting here. This is an area where many site owners find trouble. Depending on server configuration; remote HTTPS connections may fail. { if /* Enqueue an admin notice if the site owner is missing the PDT Identity Key. */ (!$GLOBALS["WS_PLUGIN__"]["s2member"]["o"]["paypal_identity_token"]) c_ws_plugin__s2member_admin_notices::enqueue_admin_notice("s2Member: You have no PayPal PDT Identity Token configured. PayPal Auto-Return handling failed. Please update your PayPal PDT Identity Key. See: s2Member → PayPal Options → PayPal PDT/Auto-Return Integration. Thank you!", "*:*", true); $paypal["s2member_log"][] = "Unable to verify \$_POST vars. This is most likely related to an invalid configuration of s2Member, or a problem with server compatibility."; $paypal["s2member_log"][] = "Please make sure that you configure a PayPal PDT Identity Token for your installation of s2Member. See: `s2Member → PayPal Options → PayPal PDT/Auto-Return Integration`."; $paypal["s2member_log"][] = "See also, this KB article: `http://www.s2member.com/kb/server-scanner/`. We suggest that you run the s2Member Server Scanner."; $paypal["s2member_log"][] = /* Recording _POST + _GET vars for analysis and debugging. */ var_export ($_REQUEST, true); $paypal["s2member_log"][] = "Redirecting Customer to the Home Page (after displaying an error message)."; echo c_ws_plugin__s2member_return_templates::return_template ("default", _x ('ERROR: Unable to verify $_POST vars.
Please contact Support for assistance.

This is most likely related to an invalid configuration of s2Member, or a problem with server compatibility. If you are the site owner, and you\'re absolutely SURE that your configuration is valid, you may want to run some tests on your server, just to be sure $_POST variables are populated, and that your server is able to connect/communicate with your Payment Gateway over an HTTPS connection.

s2Member uses the WP_Http class for remote connections; which will try to use cURL first, and then fall back on the FOPEN method when cURL is not available. On a Windows server, you may have to disable your cURL extension; and instead, set allow_url_fopen = yes in your php.ini file. The cURL extension (usually) does NOT support SSL connections on a Windows server.

Please see this thread for details regarding the ideal server configuration for s2Member.', "s2member-front", "s2member"), _x ("Back To Home Page", "s2member-front", "s2member"), home_url ("/")); } /* Add RTN proxy (when available) to the ``$paypal`` array. */ if (!empty($_GET["s2member_paypal_proxy"])) $paypal["s2member_paypal_proxy"] = esc_html(trim(stripslashes((string)$_GET["s2member_paypal_proxy"]))); /* Add IPN proxy use vars (when available) to the ``$paypal`` array. */ if (!empty($_GET["s2member_paypal_proxy_use"])) $paypal["s2member_paypal_proxy_use"] = esc_html(trim(stripslashes((string)$_GET["s2member_paypal_proxy_use"]))); /* Also add RTN proxy self-verification (when available) to the ``$paypal`` array. */ if (!empty($_GET["s2member_paypal_proxy_verification"])) $paypal["s2member_paypal_proxy_verification"] = esc_html(trim(stripslashes((string)$_GET["s2member_paypal_proxy_verification"]))); /* Also add RTN success redirection URL (when available) to the ``$paypal`` array. */ if (!empty($_GET["s2member_paypal_return_success"])) $paypal["s2member_paypal_return_success"] = esc_html(trim(stripslashes((string)$_GET["s2member_paypal_return_success"]))); /* Also add RTN t and r Attributes (when available) to the ``$paypal`` array. */ if (!empty($_GET["s2member_paypal_return_tra"])) $paypal["s2member_paypal_return_tra"] = esc_html(trim(stripslashes((string)$_GET["s2member_paypal_return_tra"]))); /* Log this IPN post-processing event now. */ c_ws_plugin__s2member_utils_logs::log_entry('gateway-core-rtn', $paypal); /* Hook during core RTN post-processing might be useful for developers. */ foreach(array_keys(get_defined_vars())as$__v)$__refs[$__v]=&$$__v; do_action("ws_plugin__s2member_during_paypal_return", get_defined_vars ()); unset($__refs, $__v); exit(); // Clean exit now. } foreach(array_keys(get_defined_vars())as$__v)$__refs[$__v]=&$$__v; do_action("ws_plugin__s2member_after_paypal_return", get_defined_vars ()); unset($__refs, $__v); } } }