ethercreative / web-payments

Web Payments for Craft Commerce
Other
5 stars 7 forks source link

Setting delivery address #8

Open peteeveleigh opened 4 years ago

peteeveleigh commented 4 years ago

Hi

Is it possible to set the delivery address for an Apple Pay transaction using the address info from the cart?

We have a situation where we have to collect billing and shipping addresses prior to showing the Apple Pay button. The addresses get set fine on the cart, but then the delivery address is getting overridden by whatever is set on the user's device. Consequently we are getting orders where the order ends up with the wrong delivery address.

I feel something like this must be possible given how services like Deliveroo and JustEat work. i.e. you can set a delivery address during the checkout process and this gets passed to Apple Pay.

alexjcollins commented 4 years ago

Hi,

From what I understand, the delivery address is set by the user in the Apply Pay dialogue where they can interact with addresses they've defined for use with Apple Pay and add more.

However, we'll look through the docs to see if there is a way to define the address in the Payment Request. I haven't used Deliveroo in a long while, but could be a good excuse to test this out!

If that's not possible, how would you feel about a setting in the plugin that ignored the delivery address returned by Apple Pay, so the cart retained the shipping address defined during the checkout process?

peteeveleigh commented 4 years ago

Hi

I did a test with Just-Eat and it looks like they only offer Apple Pay via the native app. From the website, even when used with a phone, Apple Pay isn’t an option. So it might be something that’s only possible with native apps.

Being able to ignore the address returned might be an option. I’d considered this earlier today but think it might make the UX a bit weird. We’re looking at changing our checkout flow a bit to present the Web Payments button before we ask for any addresses. This does, however, present us with problems as we need to validate the delivery address is in a certain area.

But any option is worth considering.

On 8 Apr 2020, at 17:21, Alex Collins notifications@github.com wrote:

Hi,

From what I understand, the delivery address is set by the user in the Apply Pay dialogue where they can interact with addresses they've defined for use with Apple Pay and add more.

However, we'll look through the docs to see if there is a way to define the address in the Payment Request. I haven't used Deliveroo in a long while, but could be a good excuse to test this out!

If that's not possible, how would you feel about a setting in the plugin that ignored the delivery address returned by Apple Pay, so the cart retained the shipping address defined during the checkout process?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ethercreative/web-payments/issues/8#issuecomment-611054868, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGJ5OLERC6BOS6PTIERNUDRLSP7NANCNFSM4MD6ZNUQ.

Tam commented 4 years ago

@fantasticmachine Have you tried setting requestShipping to false when outputting the payment button? As per the docs: https://github.com/ethercreative/web-payments#requestshipping