5

I have looked at Paypal's HTML Variables for PayPal Payments Standard very closely and looked all over the web for an answer. And I'm pretty sure I already know the answer to my own question, but it seems too absurd. So I'm asking just to make sure I'm not missing anything.

I realize this is basically a duplicate to this question, but he was given one stupid answer.
(Update: The stupid answer has been removed, and now there is a very good answer by another user)

I am collecting the customer's billing and shipping addresses on my site. I can send the billing address, but not the shipping address to PayPal.

The reason I want to send the shipping address is to use PayPal's shipping label service.

I realize that I could set the no_shipping variable to 2 to have PayPal prompt for and require a shipping address, but I am using the address they input on my site to calculate shipping costs with USPS' API. So I need to prompt on the site, and I don't want to make the customer fill in their address a SECOND time on PayPal.

So is there a way to make this work?

I need to:

  • Calculate shipping costs
  • Print labels
  • Keep the checkout process simple and fast
Community
  • 1
  • 1
Joshua Goossen
  • 1,714
  • 1
  • 17
  • 36
  • I have been looking into this further, and the most promising option seems to be to pass the customer info collection on to PayPal, then use PayPal's Instant Update API to update the shipping and taxes. Will post more when I figure this out for sure. – Joshua Goossen Jan 07 '15 at 22:17
  • It took a lot of work, but I eventually ended up using Paypal's Express Checkout: https://developer.paypal.com/docs/classic/express-checkout/integration-guide/ECGettingStarted/ I collect only the customer's shipping address so that I can calculate my shipping, and send that to PayPal. I leave the billing address up to PayPal, since anyone that has PayPal, already has their billing address in their account. I have now only had 2 real sales with my new checkout, but so far I am very happy with it. It's fast and easy for the user, and faster for me now that I can print labels from PayPal. – Joshua Goossen Apr 27 '15 at 16:03

1 Answers1

3

The document you reference does actually answer your question, although admittedly it is hard to pull out the specific answer you are looking for from all the possibilities. Look specifically here:

https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/formbasics/#id08A6F0SJ04Y

... under the heading "Overriding Addresses Stored With PayPal."

Or at least, that is the section for passing in a shipping address for PayPal account holders. If you are using PayPal account optional then it's even more complicated, see here:

https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/Appx_BillingShippingAddress/#id08A9BM00A5Z

Short answer: you can't pass in two separate addresses, but the address you pass is (usually, depending upon several related variables & conditions) treated as shipping address.

Part of the reason this is so complicated is that there are so many variants of checkout flows. PayPal recommends/prefers that you let them collect the buyer's shipping (and billing, where/if required) on their page and they will pass it back to you. (And this is by far the best for PayPal accountholders since they probably have the address(es) on file already with PayPal and thus don't have to type them at all.) But PayPal knows that isn't how every merchant wants to do it so the product is flexible -- to the point of being so complex it is almost incomprehensible at times.

geewiz
  • 2,206
  • 1
  • 10
  • 16
  • Ya, your basically verbalizing what I had figured out already. But I'm not so sure about Paypal treating the address passed as shipping address. When I look at the transactions in PayPal, it says there is no shipping address on file so I can't print a shipping label without filling it in myself. I really would be all for passing on the address collection to PayPal for the very reasons you mentioned, except that there is no way for me to calculate shipping costs. – Joshua Goossen Jan 06 '15 at 23:10
  • Oh, and the average age of my customers is far above average, so making the PayPal account mandatory is probably not a good option for me as I'm guessing Paypal accounts are less common among the older folks. So I get the "more complicated" to figure out. – Joshua Goossen Jan 06 '15 at 23:17
  • Yes, shipping cost calculation is a stumbling block for address collection via website payments standard. There are workarounds (e.g. paypal offers a shipping calculator) but may not work for you. You might be surprised on the demographics of paypal accounts, though. Yes it's higher among younger groups, but a large percentage of people whoa re willing to pay on the web have PP accounts. Still, more flexibility= more customers. – geewiz Jan 07 '15 at 00:45
  • I was just seeing that paypal has a shipping calculator. Looks like that might be my only decent option. It's a shame I didn't realize all this before I set up all my checkout forms...they were actually looking pretty good. Now I have to throw them out and start over...I'll just save them till I get enough traffic to make it worth upgrading to PayPal Pro. – Joshua Goossen Jan 07 '15 at 13:22