Woocommerce orders not being received by PayPal, but email suggests otherwise - wordpress

Having a nightmare with this and cannot find a solution anywhere - the only similar issues I find are the exact opposite problem!
Placing an order using PayPal (standard) at checkout puts the order 'On hold' in wp, but completes on the front end and the user even receives the PayPal receipt so are none the wiser. In the PayPal business account there is nothing.
Interestingly, PayPal express checkout works fine! So the account is definitely setup correctly. Something I have noticed is that the receipt from the express checkout transaction and from the standard have different Merchant names - the standard one (the one not working)has the name#emailaddress.com rather than the merchant name. This would suggest that this is the issue, but I've been into the business settings and checked this as well as the Woocommerce settings and everything is in order.
Any ideas? Thanks in advance!

For Woocommerce PayPal standard you have to enable Auto return url and Notification url(Instant payment notification) which will update the order status on your woocommerce. Refer the following URL link: https://docs.woocommerce.com/document/paypal-standard/ and enable both Auto return & Instant payment notification settings on the Merchant/Business PayPal account. Please note that Merchant PayPal account is not linked with any other website.
PayPal Express checkout is recommended: https://woocommerce.com/products/woocommerce-gateway-paypal-express-checkout/

I would recommend you just stick with Express Checkout. It has many more features and options than PayPal Standard. I would recommend the PayPal for WooCommerce, though, which is the one PayPal reps would recommend as well if you talk to them.

Related

Problems with PayPal in WooCommerce

I have correctly configured payments with PayPal in WooCommerce, sometimes I get orders and pay for PayPal and everything is fine, but sometimes some customers pay and WooCommerce does not change the status of the order to "Paid", and for that reason customers contact me to tell me that they already paid and yes.
Does anyone feel the same?
PS: This error is occasional, I do not know what it could be.
You could always just log in to your PayPal account and see if the transactions that show an incorrect status in WooCommerce do actually exist in your PayPal transaction log with the correct status. If so, then you should contact WooCommerce support for them to explain why those same transactions do not show up with the correct status in their portal. If WooCommerce tells you that it's an issue with PayPal (and thus, there is nothing to be corrected at their side), then open a case with PayPal support and they can look into the logs being sent from WooCommerce's API calls into PayPal to confirm whether or not they are doing it properly.
PayPal Standard that comes with WooCommerce uses IPN to update the order status. Unfortunately, their IPN integration is not great, and it often fails.
If you use my PayPal for WooCommerce instead, and setup Express Checkout, this problem will not happen. Also, you'll have a lot more features and functionality.

How can I force Guest Checkout in Woocommerce using PayPal Express?

I'm trying to launch an online store using Wordpress, WooCommerce and the "Paypal for Woocommerce" Plugin.
On Paypal, Guest Checkout is only available on mobile, but it's not an option on desktop. I read somewhere that you need to add this lines to your SetExpressCheckout API Call but I don't know where to put them:
SOLUTIONTYPE=Sole
LANDINGPAGE=Billing
Can anyone using this plugin help me? Thank you.
it is true that if you add those parameters to the SetEC API call it will enable guest checkout and present the credit card form on the hosted page. To add these parameters, however, you have to alter the source code of the plugin. If you are using Angelleye's plugin there is a setting:
PayPal Account Optional – If your PayPal account is setup with PayPal Account Optional enabled (available in your PayPal account profile) then setting this option here will provide a better checkout flow for non-PayPal users. It will be more obvious that you do not need a PayPal account in order to complete payment, and this will typically increase conversion rates.
you can see complete documentation here.

Cant enable checkout without a PayPal account

I have setup a woocommerce on website with Paypal chekout. The Paypal account is Business and settings are changed to "Paypal Account Optional" - on.
But the checkout still forces to create Paypal account without simple credit card checkout. Why?? What could be possible wrong here? Thank you!
Be sure the merchant account email address is confirmed.
When using Payments Standard it's all based on browser session cookies. If you've signed in to a PayPal account with that browser it assumes that's what you'll be doing in the future so it hides the guest checkout option a little more.
If you clear the browser cache/cookies, or use a fresh browser, you should see the guest checkout option more prominently displayed during checkout.
Express Checkout handles this a little better where rather than completely working from cookies you can make adjustments in your API calls. The PayPal for WooCommerce plugin provides Express Checkout so you could utilize this benefit. There are options in the plugin settings to adjust that accordingly.
It still looks a little different depending on your browser cache/cookies and the version of PayPal they've got you on, but in general the guest checkout (credit card) option is much more obvious to people when using Express Checkout with those options enabled.

WooCommerce IPN Notification

I need some help typing to figure out what im doing wrong.
My site is setup to manage orders using WooCommerce. the site is a public site, but my Perl Script needs to be implemented as im testing a few things out and displaying some messages. The public site is called 'publicwebsite.com'. But the other site im displaying all this information and proccess it is called 'mywebsite.com'
I have setup my API credentials and setup my IPN for paypal payment. To direct the IPN to my website i have gone into the 'My Selling Tools' on the sandbox side of Paypal, and set the IPN to http://mywebsite.com/test_pl.html
when i place and order, somehow the IPN is not being directed to the URL. I went to the IPN tabe again on the Paypal side, and clicked on history, and i see that the 'Notification URL' is still set to http://publicwebsite.com/WC_Gateway_Paypal, whereas it should have been http://mywebsite.com/test_pl.html.
I cannot seem to find the place where i can change the preferences such that Woocommerce pushes the information onto the site.
Please Help.
Thanks in advance
WooCommerce will set the IPN location of each transaction so that it can be notified when an item is paid for and continue its process.
Not knowing your data flow, I would suggest looking into woocommerce available hooks and hook into the IPN notification and then send the data (and user) to your perl script.
This way you satisfy WooCommerce's condition that it needs to know about payments, and you satisfy your need to have your perl script called so that it can do additional processing.
One possible solution is to update your IPN settings in your PayPal Account. If you have a standard PayPal account here are the instructions directly from PayPal Documentation:
Go to the PayPal website and log in to your account.
Click Profile at the top of the page.
Click My selling tools.
Click Update beside "Instant payment notifications" in the "Getting paid and managing risk" section.
Enter the notification URL and select "Receive IPN messages."
Click Save.
Just in case you need it below is the PayPal Instant Payment Notification Guide. It includes an IPN simulator.
PayPal Instant Payment Notification Integration Information

Paypal discount code with buy now button

I've created a paypal buy now button and integrated it successfully. When testing I notice that once I reach the paypal site there's an option to redeem a "voucher, reward or other discount".
How do I create the voucher/discount codes?
The instructions I've seen so far seem to relate to handling the coupon codes on your own website i.e. you have to allow users to enter the code on your site. I'm looking for a solution where my customers can redeem a coupon code on the paypal website using the option I mentioned earlier.
You cant create vouchers. Only paypal or ebay users can create those.
You're gonna have to create a script that calculates the discounts on your website before sending the total amount to paypal checkout.
Check a script i posted on my profile for more info.
If you are using V2 of the PayPal API, add it as part of the breakdown.
https://developer.paypal.com/docs/api/orders/v2/#definition-amount_breakdown

Resources