Changeset 3478402
- Timestamp:
- 03/09/2026 05:45:49 PM (4 weeks ago)
- Location:
- bulletproof-checkout-lite/trunk
- Files:
-
- 7 edited
-
README.txt (modified) (7 diffs)
-
bulletproof-checkout-lite.php (modified) (3 diffs)
-
emergency_removal_tool.php (modified) (4 diffs)
-
includes/Input.php (modified) (4 diffs)
-
includes/class-wc-bulletproof-payment-gateway-lite.php (modified) (4 diffs)
-
includes/class-wc-bulletproof-shop-orders.php (modified) (7 diffs)
-
webhook.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
bulletproof-checkout-lite/trunk/README.txt
r3435544 r3478402 51 51 The BulletProof Checkout gateway is compatible many top credit card processors. If you currently have a merchant account with a compatible processor or are looking for an integrated processing solution, we can help. Contact us with any questions. 52 52 53 - Payment Agnostic - we integrate with many processors, allowing you to use your current merchant account and help you connect it into our Bul etProof Gateway.53 - Payment Agnostic - we integrate with many processors, allowing you to use your current merchant account and help you connect it into our BulletProof Gateway. 54 54 55 55 - Multi Gateway Compatible -- We are also compatible with the NMI gateway. … … 68 68 - Control the customer checkout experience. 69 69 - 3DS Settings that allow a truly frictionless, intuitive, and lightning-fast customer checkout. 70 - Lock in the level o rBulletProof 3DS protection to secure against chargebacks.70 - Lock in the level of the BulletProof 3DS protection to secure against chargebacks. 71 71 - User-friendly 3DS solution that requires no programming skills and is easy to set up. 72 72 - Understand 3DS transaction results through detailed reporting. … … 109 109 - WooCommerce Order status updates received automatically from the gateway via webhooks. 110 110 - Authorize can capture later direct from the WooCommerce order list 111 - Secure "Thank you" page integrated with your WooCom emrce store111 - Secure "Thank you" page integrated with your WooCommerce store 112 112 - The payment page offers the highest level of security, preventing system administrators and third parties from altering or injecting malicious code. 113 113 … … 121 121 4. Use the credentials provided by the Gateway Support Team 122 122 5. Enter into your BulletProof portal ->Other Services ->Webhooks and create one of these webhooks: 123 If you have a Sucuri Firewall or your site is hosted at Godaddy (or if your firewall blocks the access to the Word press plugin directory):123 If you have a Sucuri Firewall or your site is hosted at Godaddy (or if your firewall blocks the access to the WordPress plugin directory): 124 124 https://yoursitename.com/?rest_route=/bpcheckout/webhooks 125 Every other site can use:125 Every other site can use: 126 126 https://yoursitename.com/wp-content/plugins/bulletproof-checkout-lite/webhook.php 127 127 6. After your initial usage you can safely remove the file "emergency_removal_tool.php" from the plugin root folder … … 134 134 4. The Webhook API key is located into your BulletProof portal account->Other services->webhooks (follow the instruction provided at the installation section of this readme file) 135 135 5. The Customer Vault feature is only available if you have enabled the Customer Vault feature in your BulletProof Account, otherwise will trigger an error in the checkout. During the initial tests set to "No" 136 6. Select your processor, if you leave the processor dropdo n unselected then will trigger an error in the checkout page.136 6. Select your processor, if you leave the processor dropdown unselected then will trigger an error in the checkout page. 137 137 7. Save changes. 138 138 … … 186 186 187 187 ### What are the requirements or paperwork needed? 188 - Contact us to activate for theany and all of the following188 - Contact us to activate for any and all of the following 189 189 190 190 To activate the payment gateway contact docs@bulletproof-checkout.com … … 236 236 Added zip code denial reason at the Checkout 237 237 = 1.0.22 = 238 Added custom logger to the Word press Logs238 Added custom logger to the WordPress Logs 239 239 = 1.0.24 = 240 240 Remove unused admin notices -
bulletproof-checkout-lite/trunk/bulletproof-checkout-lite.php
r3435544 r3478402 4 4 * Plugin URI: https://www.bulletproof-checkout.com/ 5 5 * Description: Protect your credit card payments with 3D Secure (3DS) and say goodbye to chargebacks. 6 * Version: 1.0.2 56 * Version: 1.0.26 7 7 * Author: BulletProof Checkout <support@bulletproof-checkout.com> 8 8 * Author URI: https://www.bulletproof-checkout.com/ … … 11 11 * Text Domain: bulletproof-checkout-lite 12 12 * WC requires at least: 5.0 13 * WC tested up to: 10. 4.313 * WC tested up to: 10.5.3 14 14 * Tested up to: 6.9 15 15 * Requires PHP: 7.4 … … 35 35 if (!defined('BULLETPROOF_CHECKOUT_FORMAT')) define('BULLETPROOF_CHECKOUT_FORMAT', 'raw'); 36 36 if (!defined('BULLETPROOF_BPCHECKOUT_GATEWAY')) define('BULLETPROOF_BPCHECKOUT_GATEWAY', 'BPCHECKOUT'); 37 // If the Official Mobile App will be used thenwill need to disable BULLETPROOF_CHECKOUT_ADDORDERLISTCOLUMNS37 // If the Official Mobile App will be used you will need to disable BULLETPROOF_CHECKOUT_ADDORDERLISTCOLUMNS 38 38 // In the Official Mobile App BulletProof does not support Authorize and Capture later 39 39 if (!defined('BULLETPROOF_CHECKOUT_ADDORDERLISTCOLUMNS')) define('BULLETPROOF_CHECKOUT_ADDORDERLISTCOLUMNS', false); -
bulletproof-checkout-lite/trunk/emergency_removal_tool.php
r3252295 r3478402 14 14 TODO 5) Recursively remove all files of the plugin located under the plugin folder. 15 15 16 Once all the steps in the workflow have been completed, the BulletProof plugin w as deactivated and not linked with any error showed by Wordpress.17 18 Important note: After execut e this removal tool , if you want to install again the plugin you will require to manually remove the folder wp-content/plugins/bulletproof-checkout-lite with any file manager (cPanel or Wordpress File Manager)16 Once all the steps in the workflow have been completed, the BulletProof plugin will be deactivated and not linked with any error showed by WordPress. 17 18 Important note: After executing this removal tool , if you want to install again the plugin you will need to manually remove the folder wp-content/plugins/bulletproof-checkout-lite with any file manager (cPanel or WordPress File Manager) 19 19 20 20 */ … … 174 174 try { 175 175 unlink(BULLETPROOF_MAIN_PLUGIN_FILE); 176 $msg = "Removal tool finished succes fully";176 $msg = "Removal tool finished successfully"; 177 177 } catch (Exception $e) { 178 178 $msg_error = "Plugin main file cannot be removed, probably because you dont have permissions in the server folder."; 179 179 } 180 180 } else { 181 $msg_error = "The tool can not create the backup file, the main file will not be removed";181 $msg_error = "The tool cannot create the backup file, the main file will not be removed"; 182 182 } 183 183 } else { … … 216 216 $msg_error = "This tool can not run in a localhost"; 217 217 } else { 218 $msg_error = "The site firewall is not showing the HTTP_HOST which is requ ried by this tool";218 $msg_error = "The site firewall is not showing the HTTP_HOST which is required by this tool"; 219 219 } 220 220 } 221 221 } else { 222 echo "This script can not run via terminal";222 echo "This script cannot run via terminal"; 223 223 die(); 224 224 exit; … … 240 240 show_alert($msg, "alert-success"); 241 241 } else { 242 show_alert("The removal tool finished unexpect ly", "alert-warning");242 show_alert("The removal tool finished unexpectedly", "alert-warning"); 243 243 } 244 244 } -
bulletproof-checkout-lite/trunk/includes/Input.php
r3132917 r3478402 17 17 * eg : Input::getField('store_id') 18 18 * 19 * @param $key. String - Key whose whichvalue we require19 * @param $key. String - Key whose value we require 20 20 * @return string|bool 21 21 */ 22 22 public static function fetch($key = "", $def = ''){ 23 23 24 24 global $argv; 25 25 26 26 $return_value = ""; 27 27 28 28 if( isset($_POST[$key]) ) { 29 29 $return_value = $_POST[$key]; … … 34 34 else if( isset($argv) ){ 35 35 $clval = self::getArg($argv, $key); 36 36 37 37 if($clval != ''){ 38 38 $return_value = $clval; … … 40 40 41 41 } 42 42 43 43 if(!is_array($return_value)){ 44 44 $return_value = trim($return_value); 45 45 } 46 46 47 47 if($return_value == '' && $def != ''){ 48 48 $return_value = $def; 49 49 } 50 50 51 51 return $return_value; 52 52 } … … 56 56 * Will return the value, if key found in command-line arguments 57 57 * 58 * @param $command_args. Array - Collection of command line Strings59 * @param $ item. String - Key whose whichvalue we require58 * @param $command_args. Array - Collection of command line Strings 59 * @param $key. String - Key whose value we require 60 60 * @return String 61 61 */ -
bulletproof-checkout-lite/trunk/includes/class-wc-bulletproof-payment-gateway-lite.php
r3435544 r3478402 68 68 add_action('init', array($this, 'bulletproof_payment_endpoint')); 69 69 // Handle BulletProof portal webhook reception 70 // Experimental: add a endpoint for receive data instead of /webhook.php (useful for Wordpress firewalled sites like Sucuri)70 // Experimental: add an endpoint for receive data instead of /webhook.php (useful for WordPress firewalled sites like Sucuri) 71 71 add_action('rest_api_init', array($this, 'custom_endpoint_for_bp_lite2025')); 72 72 … … 898 898 } 899 899 // add a note with the refund success message 900 $the_msg = "Order " . $order_id . " was refunded succes fully";900 $the_msg = "Order " . $order_id . " was refunded successfully"; 901 901 if ($amount != '' && $amount > 0) { 902 902 $the_msg .= " for the amount of " . wc_price($amount); … … 1161 1161 } else { 1162 1162 //var_dump($sale_auth_response); 1163 $error_invalid_response = "Invalid response received from the gateway, please try in some minutes or Contact the Merchant";1163 $error_invalid_response = "Invalid response received from the gateway, please try again in a few minutes or Contact Customer Service"; 1164 1164 $template = __('Error: %s', 'bulletproof-checkout-lite'); 1165 1165 // Use sprintf to capture the formatted message … … 1178 1178 /* translators: %s: Error message from the response */ 1179 1179 $template = __('Error: %s', 'bulletproof-checkout-lite'); 1180 $error_no_response = "No response received from the Payment Gateway, please Contact the Merchant or try again in some minutes.";1180 $error_no_response = "No response received from the Payment Gateway, please try again in a few minutes or Contact Customer Service."; 1181 1181 1182 1182 // Use sprintf to capture the formatted message -
bulletproof-checkout-lite/trunk/includes/class-wc-bulletproof-shop-orders.php
r3435544 r3478402 58 58 59 59 60 // check if a profile (based on Word press roles) had access to specific resource (invoices,subscriptions,refunds)60 // check if a profile (based on WordPress roles) had access to specific resource (invoices,subscriptions,refunds) 61 61 function bulletproof_lite_profile_has_access($profile, $resource) 62 62 { … … 344 344 if ($cur_status == "wc-completed") { 345 345 346 // button will be displayed only for admins or if user profile had permissiones346 // button will be displayed only for admins or if user profile had permissions 347 347 $display_refund_button = false; 348 348 if (is_user_logged_in()) { … … 393 393 } 394 394 395 // check if a error_msg is returned395 // check if an error_msg is returned 396 396 if (isset($_GET['error_msg'])) { 397 397 echo "<p style='color:red;font-weight:bolder;'>" . urldecode($_GET['error_msg']) . "</p>"; … … 470 470 if (isset($response_json["data"])) { 471 471 if ($active_payment_gateway == "") { 472 $active_payment_gateway = "BPCHECKOUT"; // as default in case of the tr 5ansaction was initially failed472 $active_payment_gateway = "BPCHECKOUT"; // as default in case of the transaction was initially failed 473 473 } 474 474 if (is_array($response_json["data"])) { … … 1883 1883 $logger->info($the_msg, $context); 1884 1884 if ($error_detail_on_gateway != "") { 1885 $order->add_order_note("This order can not be refunded by BulletProof because " . $error_detail_on_gateway);1885 $order->add_order_note("This order cannot be refunded by BulletProof because " . $error_detail_on_gateway); 1886 1886 $order->save(); 1887 1887 } … … 1889 1889 return false; 1890 1890 } else { 1891 $the_msg = "Order " . $order_id . " was refunded succes fully after status update from " . $old_status . " to " . $new_status . ".";1891 $the_msg = "Order " . $order_id . " was refunded successfully after status update from " . $old_status . " to " . $new_status . "."; 1892 1892 $logger->info($the_msg, $context); 1893 1893 /* … … 1944 1944 } 1945 1945 } else { 1946 $the_msg = "Order " . $order_id . " is older than one year and can not be refunded in the Payment Gateway";1946 $the_msg = "Order " . $order_id . " is older than one year and cannot be refunded in the Payment Gateway"; 1947 1947 error_log($the_msg); 1948 $order->add_order_note("This order is older than one year and can not be refunded from the BulletProof Checkout Plugin, but the status in WooCommerce was changed to Cancelled");1948 $order->add_order_note("This order is older than one year and cannot be refunded from the BulletProof Checkout Plugin, but the status in WooCommerce was changed to Cancelled"); 1949 1949 $order->save(); 1950 1950 $logger->info($the_msg, $context); -
bulletproof-checkout-lite/trunk/webhook.php
r3247461 r3478402 10 10 include_once __DIR__ . '/../../../wp-blog-header.php'; 11 11 } else { 12 echo "Invalid location of the Word press wp-config file";12 echo "Invalid location of the WordPress wp-config file"; 13 13 die(); 14 14 exit;
Note: See TracChangeset
for help on using the changeset viewer.