If you use PayPal with WooCommerce and you have setup to allow buyers to ship to different addresses to the billing address, you may wish to use the delivery address in the PayPal side, rather than the billing address, for your labeling and order identification purposes, or some other reason.
There is an option for this in WooCommerce, which can be found by following the process below:
How to make WooCommerce Send Shipping Details to PayPal (and prevent user overriding this)
- Open WordPress Admin, then visit : WooCommerce > Settings > Checkout > PayPal
- Scroll down, and select “Send shipping details to PayPal instead of Billing” then
- Select “Enable “address_override” to prevent address information from being changed.” (this prevents user then changing that address at PayPal)
- Hit “Save Changes”.
This should complete that fix. For your help, below is a screenshot with those select boxes highlighted by some of my red boxes…
Important note – only PayPal Standard
Please note that this tutorial is for the “normal” PayPal standard gateway which ships with WooCommerce on install.
Leave a comment or question
Leave a comment below if this worked or did not work for you and help others to learn WooCommerce!
5 thoughts on “How to make WooCommerce Send Shipping Details to PayPal”
Customer checked out last night with an order. The total woocommerce invoice was 53.98. Paypal payment to me was 48.95 . Paypals payment to was 5.05 short of the total woocommerce invoice. Woocommerce has a shipping charge of 8.00 which was correct but paypals payment invoice to me had only showed a 2.95 shipping charge? Don’t know what happened here. Could it have been due to the wrong code I had in the shipping flat rate quantity formula. I originally had 6+(2*[qty]) I found the correct code to be 6+(2*([qty]-1)
This new code stops adding 2.00 to the first item in the cart. Don’t know what to do now. I am not a developer and I don’t know how to configure sandbox. But at the same time I don’t want to keep loosing money on shipping. I did what you said in the above.
I checked the send shipping detail to paypal instead of billing…This was already checked in the above example but I did not have the enable address override checked as it said it could cause error. But on your advise I checked it. What should I do now? And how do I make sure the amt charged for shipping on the woocommerce invoice matches the amt on the paypal payment to me invoice?
Sorry for the slow reply. It sounds like your issue is your shipping prices, not the item mentioned in this post. I’d recommend to have a look at the Table Rates Shipping plugin which allows you a little more control over the amounts you charge for shipping per item.
thanks this made for a quick fix!
one note, on recent versions of woo the Checkout tab was changed to “Payments” ie.: WooCommerce > Settings > Payments > PayPal
So I only just knew about this and a customer has ordered an item from my website for £180 and paypal are refusing my funds back as the shipping address wasn’t on paypal.
I have only check selected the two options you had advised so thank you.
However my question is:
If I’ve only just selected them two options is there any way to now transfer the delivery details of a prior order on my website to paypal so I can claim my funds back for this item.
Any help is much appreciated
I have the following problem that is strongly related to this. We use a PSP (Mollie), but customers can pay us with PayPal through Mollie. Now for some time, when people pay with PayPal, the address in our Woocommerce shop is synchronized with the address they use in PayPal. This causes several problems for us. Sometimes this address or the name used is different from the delivery address. Sometimes the house number in their PayPal account is on the next line, causing problems in Woocommerce (the house number is essentially removed in Woocommerce). Where can I turn off this synchronization? I cannot find the options you mentioned (WooCommerce > Settings > Checkout > PayPal). It would be great if you could help me out.