Hello, I have an issue with the Braintree Paypal payment redirect.
When the client tries to pay through Paypal option, the redirect for Paypal application is being created but it is being closed automatically and pulling back the client to our website.
Hi, customers are unable to pay. The order notes says:
Braintree (Credit Card) Payment Failed (Status code failed: Processor Network Unavailable – Try Again Transaction ID xxxxxxxx)
Please assist ASAP.
.Braintree for WooCommerce Payment Gateway Version 3.2.5
]]>We are experiencing an issue with processing refunds through the Braintree for WooCommerce Payment Gateway. When attempting to refund an order directly from WooCommerce, the transaction does not go through, and no funds are returned to the customer. https://prnt.sc/V4GKdOQut3NQ
]]>When we upgrade a site to 3.2.5 it goes offline and gives the following critical error:
PHP Fatal error: Uncaught Error: Class 'WC_Braintree' not found in /wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-paypal-blocks-support.php:20
Stack trace:
#0 /wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/woocommerce-gateway-paypal-powered-by-braintree.php(601): WC_Gateway_Braintree_PayPal_Blocks_Support->__construct()
#1 /wp-includes/class-wp-hook.php(324): WC_PayPal_Braintree_Loader->{closure}()
#2 /wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#3 /wp-includes/plugin.php(517): WP_Hook->do_action()
#4 /wp-content/plugins/woocommerce/src/Blocks/Integrations/IntegrationRegistry.php(50): do_action()
#5 /wp-includes/class-wp-hook.php(324): Automattic\WooCommerce\Blocks\Integrations\IntegrationRegistry->initialize()
#6 /wp-includes/class-wp-hook.php(348): WP_Hook-> in /wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-paypal-blocks-support.php on line 20
Fatal error: Uncaught Error: Class 'WC_Braintree' not found in /wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-paypal-blocks-support.php:20
Stack trace:
#0 /wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/woocommerce-gateway-paypal-powered-by-braintree.php(601): WC_Gateway_Braintree_PayPal_Blocks_Support->__construct()
#1 /wp-includes/class-wp-hook.php(324): WC_PayPal_Braintree_Loader->{closure}()
#2 /wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#3 /wp-includes/plugin.php(517): WP_Hook->do_action()
#4 /wp-content/plugins/woocommerce/src/Blocks/Integrations/IntegrationRegistry.php(50): do_action()
#5 /wp-includes/class-wp-hook.php(324): Automattic\WooCommerce\Blocks\Integrations\IntegrationRegistry->initialize()
#6 /wp-includes/class-wp-hook.php(348): WP_Hook-> in /wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-paypal-blocks-support.php on line 20
Error: There has been a critical error on this website.Learn more about troubleshooting WordPress. There has been a critical error on this website.
Downgrading to 3.2.3 resolves the issue.
]]>I just received this email from Braintree informing me that unless our website’s payment processing software is updated to BrainTree’s latest SDK, we won’t be able to process payments starting in June. And that:
“If you are using a third-party shopping cart for your integration, we recommend reaching out to your shopping cart provider to ensure that they are using up-to-date Braintree SDKs so your processing is not interrupted.”
This plugin is our third-party shopping cart. Is this update planned? Thanks.
Here’s the full text of the notice we received:
ACTION REQUIRED: Update your production and Sandbox Braintree SDK version
Our records show that as of 1/29/2025, you were using a legacy SDK version on a production or Sandbox application that is not compatible with an upcoming update to our root SSL certificate provider for production and Sandbox API traffic on 1/30/2025.
If you do not update to a compatible SDK and push changes to customer devices by June 30, 2025, you will not be able to process requests through your PayPal Braintree production and Sandbox accounts until you make the necessary update.
What action is required?
To avoid interruption to your processing, please update your SDK version to the appropriate minimum version as soon as possible:
Client-Side SDKs:
*Web/JS SDK does not require updating to a minimum version
Server-Side SDKs:
Where can I find more information?
For information on how to update your SDK version, see our developer docs.
If you are using a third-party shopping cart for your integration, we recommend reaching out to your shopping cart provider to ensure that they are using up-to-date Braintree SDKs so your processing is not interrupted.
If you have updated your production and Sandbox integration since 1/29/2025, please disregard this email.
For any additional questions, contact us or reach out to your Customer Success Manager, if applicable.
Thanks,
The Braintree Team
Hi,
We are currently using the Braintree payment gateway plugin in our development environment to handle credit card payments. As part of our security measures, our security team has decided to implement country-level restrictions, limiting access to our development application until the website is officially launched. However, this change has inadvertently impacted the functionality of the Braintree payment method, causing it to stop working.
To resolve this, the security team has suggested that if you could provide the IP range(s) used by the Braintree plugin, they can whitelist these IPs to ensure that the payment method continues to function smoothly, even with the country-level restrictions in place.
Your assistance in providing this information would be greatly appreciated.
Here is my email: [email protected]
Thank you in advance for your help.
]]>Getting a new type of carding attack and it is somehow using this plugin/gateway to bypass all checkout security. Started about 48 hours ago. They are able to bypass capcha and even email verification to checkout. Which means they are somehow using this plugin to bypass the actual checkout. I have had to switch to our backup gateway/processor to stop the carding attacks. There seems to be no way of preventing them from abusing this.
Below is a traffic path for one of the bots carding.
Is there a fix for this? I have decently better rates and general fraud protection with Braintree versus my backup processor.
Thanks
]]>Type: Bot
Activity Detail
?Philadelphia, Pennsylvania, United States?visited?https://domain.com/checkout/
11/21/2024 7:16:51 AM (3 minutes ago)
IP: 2601:4a:c800:620:551:9b94:27f:cd14 Block IP
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Recent Activity
Time:
4 minutes ago — Thu, 21 Nov 24 13:16:54 +0000 — 1732195014.944358 in Unixtime
Seconds since last hit:
3.6629
URL:
https://domain.com/wp-json/wc/store/checkout(opens in new tab)
Type:
Normal request
Full Browser ID:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Location:
Philadelphia, Pennsylvania, United States
Time:
4 minutes ago — Thu, 21 Nov 24 13:16:51 +0000 — 1732195011.281483 in Unixtime
Seconds since last hit:
1.5249
URL:
https://domain.com/checkout/(opens in new tab)
Type:
Normal request
Full Browser ID:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Location:
Philadelphia, Pennsylvania, United States
Time:
4 minutes ago — Thu, 21 Nov 24 13:16:49 +0000 — 1732195009.756588 in Unixtime
Seconds since last hit:
2.3886
URL:
https://domain.com/wp-json/wc/store/cart/select-shipping-rate(opens in new tab)
Type:
Normal request
Full Browser ID:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Location:
Philadelphia, Pennsylvania, United States
Time:
4 minutes ago — Thu, 21 Nov 24 13:16:47 +0000 — 1732195007.368002 in Unixtime
Seconds since last hit:
0.8111
URL:
https://domain.com/wp-json/wc/store/cart/update-customer(opens in new tab)
Type:
Normal request
Full Browser ID:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Location:
Philadelphia, Pennsylvania, United States
Time:
4 minutes ago — Thu, 21 Nov 24 13:16:46 +0000 — 1732195006.556870 in Unixtime
Seconds since last hit:
0.7742
URL:
https://domain.com/wp-json/wc/store/cart/add-item(opens in new tab)
Type:
Normal request
Full Browser ID:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Location:
Philadelphia, Pennsylvania, United States
Time:
4 minutes ago — Thu, 21 Nov 24 13:16:45 +0000 — 1732195005.782703 in Unixtime
Seconds since last hit:
2.5645
URL:
https://domain.com/wp-json/wc/store/cart(opens in new tab)
Type:
Normal request
Full Browser ID:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Location:
Philadelphia, Pennsylvania, United States
Time:
4 minutes ago — Thu, 21 Nov 24 13:16:43 +0000 — 1732195003.218205 in Unixtime
URL:
Type:
Normal request
Full Browser ID:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36
Location:
Philadelphia, Pennsylvania, United States
We recently setup payment with Braintree Payments plugin but unable to successfully complete a test purchase. At checkout, we get the following error:
Cannot read properties of null (reading ‘verifyCard’)
The logs appear to be sending an empty request but I can’t see why. The following is an example of one of the log entries.
2024-11-08T21:03:48+00:00 Notice Request environment: production uri: generate data: Array ( ) duration: 0.10464s CONTEXT: {“_legacy”:true}
2024-11-08T21:03:48+00:00 Notice Response data: eyJ2ZXJzaW9uIjoyLCJhdXRob3JpemF0aW9uRmluZ2VycHJpbnQiOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpGVXpJMU5pSXNJbXRwWkNJNklqSXdNVGd3TkRJMk1UWXRjSEp2WkhWamRHbHZiaUlzSW1semN5STZJbWgwZEhCek9pOHZZWEJwTG1KeVlXbHVkSEpsWldkaGRHVjNZWGt1WTI5dEluMC5leUpsZUhBaU9qRTNNekV4T0RZeU1qZ3NJbXAwYVNJNkltWXlOR0kyWm1VMExURmlOMlV0TkdWaVpDMWlZV1EyTFRBeU5tUXlOekpqTnpNMk9DSXNJbk4xWWlJNkltY3liWEI1T0RKeWNIUTFNbWh3TlhJaUxDSnBjM01pT2lKb2RIUndjem92TDJGd2FTNWljbUZwYm5SeVpXVm5ZWFJsZDJGNUxtTnZiU0lzSW0xbGNtTm9ZVzUwSWpwN0luQjFZbXhwWTE5cFpDSTZJbWN5YlhCNU9ESnljSFExTW1od05YSWlMQ0oyWlhKcFpubGZZMkZ5WkY5aWVWOWtaV1poZFd4MElqcDBjblZsZlN3aWNtbG5hSFJ6SWpwYkltMWhibUZuWlY5MllYVnNkQ0pkTENKelkyOXdaU0k2V3lKQ2NtRnBiblJ5WldVNlZtRjFiSFFpWFN3aWIzQjBhVzl1Y3lJNmUzMTkuYlpBLXAwVkdnRFE3aUdiXzlRNTIzZFNTczRFOXZLT29XLUZDTHVVOEJjY1BVdG5vaXBrc2Y0OG5jYjhXdThwVmJ3TEVBRlgydVdYbHlMbHVGS3pvbXciLCJjb25maWdVcmwiOiJodHRwczovL2FwaS5icmFpbnRyZWVnYXRld2F5LmNvbTo0NDMvbWVyY2hhbnRzL2cybXB5ODJycHQ1MmhwNXIvY2xpZW50X2FwaS92MS9jb25maWd1cmF0aW9uIiwiZ3JhcGhRTCI6eyJ1cmwiOiJodHRwczovL3BheW1lbnRzLmJyYWludHJlZS1hcGkuY29tL2dyYXBocWwiLCJkYXRlIjoiMjAxOC0wNS0wOCIsImZlYXR1cmVzIjpbInRva2VuaXplX2NyZWRpdF9jYXJkcyJdfSwiY2xpZW50QXBpVXJsIjoiaHR0cHM6Ly9hcGkuYnJhaW50cmVlZ2F0ZXdheS5jb206NDQzL21lcmNoYW50cy9nMm1weTgycnB0NTJocDVyL2NsaWVudF9hcGkiLCJlbnZpcm9ubWVudCI6InByb2R1Y3Rpb24iLCJtZXJjaGFudElkIjoiZzJtcHk4MnJwdDUyaHA1ciIsImFzc2V0c1VybCI6Imh0dHBzOi8vYXNzZXRzLmJyYWludHJlZWdhdGV3YXkuY29tIiwiYXV0aFVybCI6Imh0dHBzOi8vYXV0aC52ZW5tby5jb20iLCJ2ZW5tbyI6Im9mZiIsImNoYWxsZW5nZXMiOlsicG9zdGFsX2NvZGUiXSwidGhyZWVEU2VjdXJlRW5hYmxlZCI6ZmFsc2UsImFuYWx5dGljcyI6eyJ1cmwiOiJodHRwczovL2NsaWVudC1hbmFseXRpY3MuYnJhaW50cmVlZ2F0ZXdheS5jb20vZzJtcHk4MnJwdDUyaHA1ciJ9LCJ
I’m on the latest version of WordPress (6.6.2), Woocomerce (9.3.3) and Braintree for WooCommerce Payment Gateway (3.2.2). Payments are working with the default theme (Twenty Twenty-Four), so the issue does appear to be related to my custom theme but I’m not sure how. I’m not altering the checkout in any way. I can apply a fix for this theme if I can find what’s causing the issue.
I’ve tied clearing the website caches without any luck, including disabling the cache plugins. I’ve also tried disabling several components of the theme to narrow my focus but nothing makes a difference.
I’m hoping you can help point me in the right direction.
]]>I have the braintress plugin installed on my site, but a week ago I suddenly had a problem with the PayPal payment button sometimes not loading properly on the cart page and checkout page, and when choosing to pay with PayPal, the price at which the automatic discount had been applied changed to the original price at the time of payment.You can provide this page to test to discover the problem.
Why do you ship wordpress_org_assets as part of your plugin? It inflates the plugin size by almost 10% for no reason.
]]>Hi team, I implemented a react-native app with WordPress as backend. I installed this plugin for paypal checkout in app. But, it is not processing paymant in Android. But, it is working in web version of react native. Can you check the code for payment and order placement?
Below is the code.
]]>//payment gateway integration code...............
import { WOOCOMMERCE_URL, CONSUMER_KEY, CONSUMER_SECRET } from './woocommerceConfig';
useEffect(() => {
const checkCart = async () => {
const cart = await AsyncStorage.getItem('cart');
if (!cart || JSON.parse(cart).length === 0) {
setCartEmpty(true);
} else {
calculateTotalAmount(); // Calculate total amount when cart is not empty
}
};
checkCart();
}, []);
const calculateTotalAmount = async () => {
const cart = await AsyncStorage.getItem('cart');
if (cart) {
const cartItems = JSON.parse(cart);
const total = cartItems.reduce((total, item) => {
return total + (item.price * item.quantity);
}, 0).toFixed(2);
setTotalAmount(total); // Set calculated total amount
}
};
useEffect(() => {
const getClientToken = async () => {
try {
const response = await axios.get(${WOOCOMMERCE_URL}/wp-json/braintree/v1/get-braintree-client-token
);
setClientToken(response.data.clientToken);
} catch (error) {
console.error('Error fetching client token:', error);
Alert.alert('Error', 'Could not connect to the payment gateway.');
}
};
// getClientToken();
}, []);
const createPayPalPayment = async () => {
const PAYPAL_CLIENT_ID = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
const PAYPAL_SECRET = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
const dataDetail = {
intent: 'sale',
payer: {
payment_method: 'paypal',
},
transactions: [
{
amount: {
total: totalAmount, // Use calculated order total
currency: 'USD',
},
},
],
redirect_urls: {
return_url: 'https://mysite.com',
cancel_url: 'https://mysite.com',
},
};
try {
const tokenResponse = await fetch('https://api.sandbox.paypal.com/v1/oauth2/token', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
Authorization:Basic ${btoa(
${PAYPAL_CLIENT_ID}:${PAYPAL_SECRET})}
,
},
body: 'grant_type=client_credentials',
});
const tokenData = await tokenResponse.json();
if (!tokenData.access_token) {
throw new Error('Failed to obtain access token');
}
setAccessToken(tokenData.access_token);
const paymentResponse = await fetch('https://api.sandbox.paypal.com/v1/payments/payment', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization:Bearer ${tokenData.access_token}
,
},
body: JSON.stringify(dataDetail),
});
if (!paymentResponse.ok) {
throw new Error('Payment creation failed: ' + paymentResponse.statusText);
}
const paymentData = await paymentResponse.json();
const approvalUrl = paymentData.links.find(link => link.rel === 'approval_url');
if (!approvalUrl) {
throw new Error('Approval URL not found');
}else {
Alert.alert('Approval URL found');
}
Alert.alert(paymentData.id);
setPaymentId(paymentData.id);
setApprovalUrl(approvalUrl.href);
} catch (error) {
console.error('Error:', error);
Alert.alert('Error', error.message);
}
};
const onNavigationStateChange = async (webViewState) => {
if (webViewState.url.includes('https://mysite.com')) {
const urlParams = new URLSearchParams(webViewState.url);
setApprovalUrl(null);
const PayerID = urlParams.get('PayerID');
try {
const executeResponse = await fetch(https://api.sandbox.paypal.com/v1/payments/payment/${paymentId}/execute
, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization:Bearer ${accessToken}
,
},
body: JSON.stringify({ payer_id: PayerID }),
});
if (!executeResponse.ok) {
const errorData = await executeResponse.json();
Alert.alert('Payment execution failed: ', errorData.message || 'Unknown error');
return;
}
else{
Alert.alert('Payment execution success: ');
}
const executeData = await executeResponse.json();
// Alert.alert(executeData);
if (executeData.state !== 'approved') {
Alert.alert('Payment failed');
return;
}else{
Alert.alert('Payment was approved ');
}
// Now, create the order in WooCommerce
await placeOrder(executeData);
} catch (error) {
console.error('Error during payment execution:', error);
Alert.alert('Error', 'An error occurred during the payment process. Please try again.');
}
}
};
const placeOrder = async (paymentData) => {
setLoading(true);
try {
const cart = await AsyncStorage.getItem('cart');
if (!cart) {
Alert.alert('Error', 'Your cart is empty.');
setLoading(false);
return;
}
const cartItems = JSON.parse(cart);
const lineItems = cartItems.map(item => ({
product_id: item.productId,
quantity: item.quantity,
}));
const billingInfo = {
first_name: name,
email: email,
phone: phone,
address_1: address,
city: city,
postcode: postalCode,
country: country,
state: state,
};
const formData = {
payment_method: 'paypal',
billing: billingInfo,
line_items: lineItems,
};
const authHeader =Basic ${Buffer.from(
${CONSUMER_KEY}:${CONSUMER_SECRET}).toString('base64')}
;
const response = await axios.post(
${WOOCOMMERCE_URL}/wp-json/wc/v3/orders
,
formData,
{
headers: {
Authorization: authHeader,
'Content-Type': 'application/json',
},
}
);
if (response.status === 201) {
Alert.alert('Order Placed', 'Your order has been placed successfully!');
await AsyncStorage.removeItem('cart');
navigation.navigate('OrderReceivedScreen', { order: response.data });
} else {
Alert.alert('Error', 'Failed to place order. Please try again.');
}
} catch (error) {
console.error('Order placement error:', error.response ? error.response.data : error.message);
Alert.alert('Error', 'An error occurred while placing your order.');
} finally {
setLoading(false);
}
};
const handlePlaceOrder = () => {
if (!name || !email || !phone || !address || !city || !postalCode || !country || !state) {
Alert.alert('Error', 'Please fill in all fields.');
return;
}
if (paymentMethod === 'paypal') {
createPayPalPayment();
}
};
//PLACE ORDER BUTTON
<TouchableOpacity style={styles.placeOrderButton} onPress={handlePlaceOrder}>
<Text style={styles.placeOrderButtonText}>Place Order</Text>
</TouchableOpacity>
My client has had a few blank orders being created recently. As in no customer info, total is $0.00, no products, nothing but the order ID itself. It looks like others have had the exact same issue, but with other gateway plugins like Authorize.net and Elevon because those plugins share the same function of get_order_for_add_payment_method().
It looks like the class-sv-wc-payment-gateway-direct.php file contains this exact code, which is causing the exact same issue. Please investigate and let me know you have any questions.
The original article I found is here: https://stackoverflow.com/questions/78058932/blank-orders-being-generated-in-woocommerce-with-no-details-and-a-pending-paymen
]]>Hi – We are experiencing a critical error on a site using WooCommerce (9.33), and Braintree for WooCommerce Payment Gateway (v 3.2.1 ) and WooCommerce Subscriptions (6.7.0).
When we go to an order that is part of a subscription whose most recent payment failed, and go to the dropdown to Retry Renewal Payment and then Updated, we are getting a critical error on the website:
<span style=”color: rgb(0, 0, 0); font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; white-space-collapse: collapse;”>There has been a critical error on this website. Please check your site admin email inbox for instructions. There is also a link below this that says (Learn more?about troubleshooting WordPress).</span>
A deeper look into the error logs show the error below. Any suggestions on what may be causing this? Thanks in advance!
[08-Oct-2024 22:07:00 UTC] PHP Fatal error: Uncaught Error: Call to a member function get() on null in /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce/includes/wc-notice-functions.php:82
Stack trace: 0 /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/vendor/skyverge/wc-plugin-framework/woocommerce/class-sv-wc-helper.php(712): wc_add_notice(‘An error occurr…’, ‘error’) 1 /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/vendor/skyverge/wc-plugin-framework/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php(3024): SkyVerge\WooCommerce\PluginFramework\v5_12_0\SV_WC_Helper::wc_add_notice(‘An error occurr…’, ‘error’) 2 /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/vendor/skyverge/wc-plugin-framework/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-subscriptions.php(362): SkyVerge\WooCommerce\PluginFramework\v5_12_0\SV_WC_Payment_Gateway->mark_order_as_failed(Object(Automattic\WooCommerce\Admin\Overrides\Order), ‘Subscription Re…’) 3 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(324): SkyVerge\WooCommerce\PluginFramework\v5_12_0\SV_WC_Payment_Gateway_Integration_Subscriptions->process_renewal_payment(‘40.00’, Object(Automattic\WooCommerce\Admin\Overrides\Order)) 4 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(”, Array) 5 /home/lifeconnectionmi/public_html/wp-includes/plugin.php(517): WP_Hook->do_action(Array) 6 /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce-subscriptions/vendor/woocommerce/subscriptions-core/includes/admin/class-wcs-admin-meta-boxes.php(328): do_action(‘woocommerce_sch…’, ‘40.00’, Object(Automattic\WooCommerce\Admin\Overrides\Order)) 7 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(324): WCS_Admin_Meta_Boxes::process_retry_renewal_payment_action_request(Object(Automattic\WooCommerce\Admin\Overrides\Order)) 8 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(”, Array) 9 /home/lifeconnectionmi/public_html/wp-includes/plugin.php(517): WP_Hook->do_action(Array) 10 /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce/includes/admin/meta-boxes/class-wc-meta-box-order-actions.php(173): do_action(‘woocommerce_ord…’, Object(Automattic\WooCommerce\Admin\Overrides\Order)) 11 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(324): WC_Meta_Box_Order_Actions::save(13298, Object(WP_Post)) 12 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array) 13 /home/lifeconnectionmi/public_html/wp-includes/plugin.php(517): WP_Hook->do_action(Array) 14 /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce/includes/admin/class-wc-admin-meta-boxes.php(263): do_action(‘woocommerce_pro…’, 13298, Object(WP_Post)) 15 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(326): WC_Admin_Meta_Boxes->save_meta_boxes(13298, Object(WP_Post)) 16 /home/lifeconnectionmi/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(”, Array) 17 /home/lifeconnectionmi/public_html/wp-includes/plugin.php(517): WP_Hook->do_action(Array) 18 /home/lifeconnectionmi/public_html/wp-includes/post.php(4828): do_action(‘save_post’, 13298, Object(WP_Post), true) 19 /home/lifeconnectionmi/public_html/wp-includes/post.php(4930): wp_insert_post(Array, false, true) 20 /home/lifeconnectionmi/public_html/wp-admin/includes/post.php(453): wp_update_post(Array) 21 /home/lifeconnectionmi/public_html/wp-admin/post.php(227): edit_post() 22 {main}
thrown in /home/lifeconnectionmi/public_html/wp-content/plugins/woocommerce/includes/wc-notice-functions.php on line 82
https://lifeconnectionmission.org/wp-admin/post.php?post=13298&action=edit
]]>We are experiencing an issue with the Revolut payment method during subscription checkout on our platform. The problem involves Revolut incorrectly flagging the subscription total as the order total, despite the initial order total being set to €0.
This issue arises when multiple coupons are applied, waiving the initial subscription fee. Here are the key details: The subscription total is correctly set to €68.06 per year, but the next payment is not due until 2025. When using Revolut, it falsely identifies the future subscription amount as the total due for the initial payment, causing a potential charge or flagging the payment incorrectly.
We have successfully tested the process using a regular credit card, and no issues occurred. The initial order total remained €0, and no charge was processed. Screenshots and tests indicate the problem might be specific to Revolut’s interaction with subscriptions. Could you please investigate if there are any known issues with Revolut and recurring payments in such cases? Any guidance or suggestions on how to resolve this would be greatly appreciated.
]]>On the 4th of March 2024 Braintree sent an email titled: “Action required: Updates to required 3D Secure data fields”. Here’s the opening couple of paragraphs:
—-
Effective 12 August 2024, Visa will recategorize five existing 3D Secure data fields from “conditional” to “required.” These fields are passed in the 3DS Authentication Request (AReq) and provide additional information to improve the quality of authentication requests and potentially drive authorization rate performance.
You may have previously heard that Visa was planning to recategorize twelve fields, with an effective date of February 2024. Visa updated their guidance in January 2024, pushing the new effective date to August and reducing the number of required fields from twelve to five.
—-
My question is: I don’t see anything in the release notes that suggests anything has changed for this. Are changes planned? Have they already been made?
]]>Getting a lot of failed payments that are categorized as ‘low risk for fraud’ transactions. This is the error I’m getting:
Braintree (Credit Card) Payment Failed (Status code risk_threshold: Gateway Rejected: risk_threshold
These orders are fraud risk of 0-5%. We have our medium risk threshold set to 25% so I don’t understand why these would not be processed.
]]>Got an email from WordPress saying that this plugin is no longer working. Need help addressing the issue, I am inexperienced in handling stuff like this.
“WordPress has a built-in feature that detects when a plugin or theme causes a fatal error on your site, and notifies you with this automated email.
In this case, WordPress caught an error with one of your plugins, Braintree for WooCommerce Payment Gateway.
First, visit your website (https://collectibleentertainment.com/) and check for any visible issues. Next, visit the page where the error was caught (https://collectibleentertainment.com/wp-admin/admin-ajax.php) and check for any visible issues.
Please contact your host for assistance with investigating this issue further.
If your site appears broken and you can’t access your dashboard normally, WordPress now has a special “recovery mode”. This lets you safely login to your dashboard and investigate further.
When seeking help with this issue, you may be asked for some of the following information:
WordPress version 6.6.2
Active theme: Primary Child Theme (version 1.7.12.1.1697127012)
Current plugin: Braintree for WooCommerce Payment Gateway (version 3.2.0)
PHP version 8.1.29″
Error Details
=============
An error of type E_ERROR was caused in line 51 of the file /srv/htdocs/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-blocks-support.php. Error message: Uncaught Error: Call to a member function is_available() on null in /srv/htdocs/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-blocks-support.php:51
Stack trace:
#0 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/Payments/PaymentMethodRegistry.php(28): WC_Gateway_Braintree_Blocks_Support->is_active()
#1 [internal function]: Automattic\WooCommerce\Blocks\Payments\PaymentMethodRegistry->Automattic\WooCommerce\Blocks\Payments\{closure}(Object(WC_Gateway_Braintree_PayPal_Blocks_Support))
#2 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/Payments/PaymentMethodRegistry.php(29): array_filter(Array, Object(Closure))
#3 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/Payments/PaymentMethodRegistry.php(40): Automattic\WooCommerce\Blocks\Payments\PaymentMethodRegistry->get_all_active_registered()
#4 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/Payments/Api.php(65): Automattic\WooCommerce\Blocks\Payments\PaymentMethodRegistry->get_all_active_payment_method_script_dependencies()
#5 /wordpress/core/6.6.2/wp-includes/class-wp-hook.php(324): Automattic\WooCommerce\Blocks\Payments\Api->add_payment_method_script_dependencies(Array, 'wc-cart-block')
#6 /wordpress/core/6.6.2/wp-includes/plugin.php(205): WP_Hook->apply_filters(Array, Array)
#7 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/Assets/Api.php(275): apply_filters('woocommerce_blo...', Array, 'wc-cart-block')
#8 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/BlockTypes/AbstractBlock.php(141): Automattic\WooCommerce\Blocks\Assets\Api->register_script('wc-cart-block', 'assets/client/b...', Array, true)
#9 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/BlockTypes/Cart.php(270): Automattic\WooCommerce\Blocks\BlockTypes\AbstractBlock->register_block_type_assets()
#10 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/BlockTypes/AbstractBlock.php(125): Automattic\WooCommerce\Blocks\BlockTypes\Cart->register_block_type_assets()
#11 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/BlockTypes/Cart.php(34): Automattic\WooCommerce\Blocks\BlockTypes\AbstractBlock->initialize()
#12 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/BlockTypes/AbstractBlock.php(71): Automattic\WooCommerce\Blocks\BlockTypes\Cart->initialize()
#13 /wordpress/plugins/woocommerce/9.3.1/src/Blocks/BlockTypesController.php(153): Automattic\WooCommerce\Blocks\BlockTypes\AbstractBlock->__construct(Object(Automattic\WooCommerce\Blocks\Assets\Api), Object(Automattic\WooCommerce\Blocks\Assets\AssetDataRegistry), Object(Automattic\WooCommerce\Blocks\Integrations\IntegrationRegistry))
#14 /wordpress/core/6.6.2/wp-includes/class-wp-hook.php(324): Automattic\WooCommerce\Blocks\BlockTypesController->register_blocks('')
#15 /wordpress/core/6.6.2/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)
#16 /wordpress/core/6.6.2/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#17 /wordpress/core/6.6.2/wp-settings.php(700): do_action('init')
#18 /srv/htdocs/wp-config.php(73): require_once('/wordpress/core...')
#19 /wordpress/core/6.6.2/wp-load.php(55): require_once('/srv/htdocs/wp-...')
#20 /wordpress/core/6.6.2/wp-admin/admin-ajax.php(22): require_once('/wordpress/core...')
#21 {main}
thrown
]]>
I received an email with this error message:
WordPress has a built-in feature that detects when a plugin or theme causes a fatal error on your site, and notifies you with this automated email.
In this case, WordPress caught an error with one of your plugins, Braintree for WooCommerce Payment Gateway.
Error Details:
An error of type E_ERROR was caused in line 51 of the file /home2/dineshh/public_html/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-blocks-support.php. Error message: Uncaught Error: Call to a member function is_available() on null in /home2/dineshh/public_html/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-blocks-support.php:51
Our site cannot take credit cards at this time.
]]>Hey Team,
As raised in previous topics, this plugin creates deprecation notices when run in PHP8.
PHP message: PHP Deprecated: Creation of dynamic property WC_Gateway_Braintree_PayPal::$button_appearance_title is deprecated in wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/vendor/skyverge/wc-plugin-framework/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php on line 374;
PHP message: PHP Deprecated: Creation of dynamic property WC_Gateway_Braintree_PayPal::$enable_paypal_credit is deprecated in wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/vendor/skyverge/wc-plugin-framework/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php on line 374;
PHP message: PHP Deprecated: Creation of dynamic property WC_Gateway_Braintree_PayPal::$button_preview is deprecated in wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/vendor/skyverge/wc-plugin-framework/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php on line 374;
PHP message: PHP Deprecated: Creation of dynamic property WC_Gateway_Braintree_PayPal::$connection_settings is deprecated in wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/vendor/skyverge/wc-plugin-framework/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php on line 374
The previous issues 7 months back said this would be fixed in the next release – it is still not fixed in 3.2.0.
Can we please get a timeline for a fix? Deprecation notices cause performance issues on large sites.
Thanks,
Jason
Hi
I was using this plugin on my site for enabling payment option on site’s checkout but currently plugin is not in use & I want to delete it from my dashboard.
Is it safe to delete? Any problem that can be caused by this action? My previous orders which came through this payment gateway will be unaffected & I still be able to access those order & relevant data?
Please let me know what’s best to do.
Thanks
Hi,
Sometime in the past couple of weeks, the PayPal payment option shows on the checkout page, but as soon as it is selected, the popup tries to load, then fails and gives the error message:
Currently unavailable. Please try a different payment method.
The PayPal popup tries to load, then fails and gives the error message. Based on the browser logs errors, my feeling is this is an issue with the connection between the website and Braintree.
POST https://api.braintreegateway.com/merchants/4qvxkkvbxbfnwzv2/client_api/v1/paypal_hermes/create_payment_resource 422 (Unprocessable Content)
Error: PayPal payment options are invalid.
WordPress, theme and plugins are up-to-date, including a new 3.2.0 version of the Braintree for WooCommerce Payment Gateway plugin. Version 3.17 was also affected and rollback to v3.1.6 did not fix the issue.
Any suggestions on what is causing this and a fix? Thank you.
]]>Hi.
It has just been noticed that all of our WooCommerce Subscriptions transactions using PayPal Braintree are failing with this error (translated from french) :
Braintree (PayPal) payment failed (Subscription renewal: Payment token is missing/invalid). Order status changed from Pending payment to Failed.
I’ve tried changing my API credentials, but so far it’s still not working… One-time purchase with Paypal is still available, the issue is only with the recurring payments of old subscribers (which is still working with Stripe).
I don’t see any errors or failed transaction in my Braintree/paypal admin panel, how can I resolve this ?
Thanks
]]>The payment options window is very large now. This is on laptop and mobile interfaces. This started right after recent Braintree plugin update from 3.1.6 to 3.1.7. I was able to fix this by rolling back to version 3.1.6. This is a bug. Please fix it as soon as possible, so I can update to the latest version for other bug and security fixes.
]]>Hello,
We recently upgraded to the Checkout Block and have no intention of going back to Classic Checkout. We use the Braintree plugins for both Credit Cards and PayPal. We’ve noticed much fewer Credit Card orders coming through. One customer forwarded us a screenshot of an error that they received. The error was “Cannot read properties of null (reading ‘verifyCard’)”.
We don’t have exact steps to reproduce this one at this time, but it’s pretty clear that customers are having a tough time running credit cards on the site. Nearly all of our orders are coming through AmazonPay and PayPal currently.
We ask that you check to ensure that the current plugin works with Credit Cards and the Checkout Block, now default on all Woo sites and being upgraded on preexisting sites.
Thanks, and I’ll update this card if I get any further details. We’re planning to try Stripe and PayPal Payments for the Express Checkout buttons, which is why we have no intentions of leaving the newer Checkout Block technology.
]]>Hi.
It has just been noticed that all of our WooCommerce Subscriptions transactions using PayPal Braintree are failing with this error:
Braintree (PayPal) Payment Failed (Authorization Failed, please verify the user for the API credentials provided can perform transactions and that the request data is correct.) Order status changed from Pending payment to Failed.
We have had this setup working for more than 5 years, and this only started happening a few days ago.
There are no errors in PayPal logs, please, how can we resolve this?
]]>Hello
Site url – https://myicbrsttaging.wpenginepowered.com/
When we updated the latest version on this plugin then payment option section ui does not appear proper.We can not fix this from css because this appears from iframe.How to fix the ui issue of this section.
Please see attached screenshot
Hi friends,
I was working on my checkout page, and I noticed that the styling for the credit card section is in this horrible grayish-purple call-out box, and the padding between the card number, expiry, and CSC sections is gigantic.
I was wondering if you could please help me with the code I’d use to adjust the colors and padding.
If I could put the actual fields in white so the numbers would pop, that would be fabulous, too.
Thank you so much for your help.
]]>Since the last update, the checkout boxes for the credit card number, Expiration date and CSC code are missing.
When both of these plugins are enabled at the same time, it creates a fatal error when trying to login or out of a customer account.
Error log says:
2024-07-21T12:45:41+00:00 Critical Uncaught Error: Call to a member function is_available() on null in /chroot/home/ade85b9a/68aa9f21fa.nxcli.io/html/wp-content/plugins/woocommerce-gateway-paypal-powered-by-braintree/includes/class-wc-gateway-braintree-blocks-support.php:51
]]>Can you please provide some up to date instructions for enabling Apple Pay via this plugin?
I have ticked the enable box under Woocommerce Settings \ Payments and have completed the domain registration in the Braintree portal, but not the certificate — yet I am seeing customers complete checkout using Apple Pay as their payment method. How is this possible?
Thanks,
Jason