Paypal Express Module Doesn't Store Correct Country in magento 1.7 - paypal

Don't know if anyone else has seen this one, but we've had some orders come through where a customer has their paypal default shipping address set to another country (India for example), and when they try to check out with Paypal Express it will take them to the order review page that lets them choose their shipping address. If they change this to be the UK (where we're based) the order will apparently go through fine, but in Magento it'll store the shipping for the country as being the default country for the Paypal account.
All the other fields seem to update fine, and if the billing address is tied to the shipping address then it seems to work fine too, but it's causing issues with the shipping label generation because it's creating shipping labels which say they're to be an international order. Site's running 1.7.0.2, any help you could give would be really appreciated

Related

Force customers to manually enter shipping address

I get at least five customers a week asking me to rectify their incorrect shipping address (and I have to deal with several non-receipt disputes per month).
I don't use any kind of shopping cart software to handle addresses on my site - it all happens over at PayPal.
What's happening is this: customers are directed to PayPal's checkout page and WITHOUT REALIZING they assign an old shipping address (which PayPal has kept on file since their last purchase).
Is there a way to force the customer to MANUALLY enter their shipping address when they arrive at PayPal's checkout?
Many thanks for your help.

Delivery to specific postcodes

I'm trying to figure out how to set different shipping charges dependent on different post code areas at paypal checkout?
At the moment the courier company I use for delivery from my website charge a flat rate for most of the UK, but some islands and outlying areas are charged more for postage.
These areas are identified via their postal code, however I cant seem to find how to change the postal charges in relation to the postcode entered by the customer.
At the moment someone from an Island could easily buy and pay for something without paying extra for postage as specified on my website.
Thanks for your help......
Look into Standard implementation of PayPal Express checkout (no callback). This way after the user completes the transaction on PayPal, he is taken back to your site and you can charge him whatever you need to based on the address from PayPal.

How do I prevent the user to change the shipping address? Or instant update callback for Payflow Pro Express Checkout

I'm using Payflowlink Pro Express Checkout
Flow:
User select items on merchant site.
User clicks buy and fill shipping address.
Server get rates from USPS and FedEx for selected items.
User selects desired postal service with defined rate.
Server calls paypal to setup transaction with selected shipping rate.
User on paypal where he or she able to change shipping address, but shipping rate is already calculated for address what he inputted on merchant site.
I've found a solution of my problem only for classic API (Instant update callback), but not for Payflow Pro Express Checkout
Like a part of solution, user'll be warned about this situation on merchant site, but.. How do I prevent the PP user to change the shipping address or tell me please if it is possible to use instant update callback for Payflow Pro Express Checkout?
Try using the ADDROVERIDE variable with a value of 1. Doing that tells PayPal to use the shipping address you provided and not the address the buyer has set in their PayPal account.
The ADDROVERIDE and the shipping variables are available in the Express Checkout for Payflow Pro guide.
Sorry, I wanted to add this as a comment to the above, but my reputation is < 50
For some reason I couldn't get NOSHIPPING=1 and ADDROVERIDE=1 to prevent paypal asking for the shipping address; It may be due to me not supplying the address to PayPal in the first place.
However, 'no_shipping=1' does prevents PayPal asking the user for the shipping address (for me at least)
I think there may be two different solutions based on certain scenarios, so if one is not working try the other.

Let PayPal Express Checkout verify the Address

We are using PayPal Express checkout (it's API) to let customers checkout products in our shop and add the delivery address at the same time.
We only ship to Germany and when a customer checks out, returns to our page and we get to know vie the PayPal API his address is not in Germany, we don't capture the authorized payment. Sometimes however, customers try to trick us and write AT-1234 in the zip field, to indicate they want shipping to austria. They let the country field with the "Germany" value.
Is it possible to let PayPal validate the Address during Express Checkout, such that invalid zip codes cannot be added?
You could the AddressVerify API to check the postal code and postal address. You can find more on this in the developers guide at https://www.x.com/sites/default/files/pp_nvpapi_developerguide.pdf on page 25. Another option that I have seen merchants implement is the Callback API along with Express Checkout. Information on this is found in the same guide on page 55. This allows you to update the PayPal Review page with shipping options, insurance, and tax information during the checkout. You can also generate a message that gets displayed that states you do not ship to that location. Some merchants will also tie this in with 3rd party shipping provider API, so that they can calculate real time shipping charges based on the type of shipping the buyer selected.
Hope this helps you out!

Paypal: Billing & Shipping addresses in different countries?

I think these are pretty close to being non-coding question, but it has everything to do with my current efforts to implement express checkout using paypal NVP API and X.com is absolutely garbage compared to stackoverflow.
So here's what I know, followed by some questions:
If you are a USA paypal user (which means - you have a USA Billing address), you can only set a shipping address to USA. Even if the website tries to force an international address via NVP during "SetExpressCheckout", it will ignore it and use a USA address within the users paypal account. If the user wants to manually put in a non-USA address, he can't - it's stuck to USA only.
If you are NOT a USA paypal user (i tested with germany & canada), you can have your shipping and billing be in 2 different countries. Instead of being locked in, there is a dropdown field allowing you to select a different country.
Questions:
1) Why is this for USA... but not for places like germany and cananda (what's the politics/laws/paypalpolicies)?
2) Does this mean that germany & canada is less protected by paypal than USA? I'm assuming the tigher requirements must mean that paypal has "safer" policies in the USA and therefore better protection?
3) My store is an international gift store, so the shipping & billing being in different countries happens 100% of the time. Can I turn off shipping addresses in paypal by making it a digital purchase, and when I do, am i still using paypal safely?
Thanks
1 and 2: Two words: Risk analysis. Another two words: historical data I'd imagine.
I don't have any idea of PayPal's inner workings when it comes to that, but I presume it's something along those lines.
3: Yes, set NOSHIPPING=1 in your SetExpressCheckout API call and a shipping address won't be collected. Note that you won't be eligible for PayPal Seller Protection in this case though.