Join us for an upcoming Shopify Partner webinar on February 27, 2024. Discover the latest Checkout Extensibility features, and deep dive on improvements to Shopify Functions and Web Pixels. Register now for either the 10am EST or 2pm EST sessions.
Solved

Complete checkout via Alexa or Google Assistant

DavidKDel2
Shopify Partner
3 0 4

I'm working on a voice assistant (Alexa / Google Assistant) for Shopify stores and wondering what are the options to complete checkout with voice only (using Amazon Pay for Alexa or Google Transaction for Actions)?

 

The Checkout Complete Admin REST api gives "Cannot complete the checkout without any transactions", since I'm not using any Shopify payment gateways.

 

Is using DraftOrder my only option to manually complete checkout / create order and complete it?

Accepted Solution (1)

Busfox
Shopify Staff (Retired)
628 49 110

This is an accepted solution.

Hi @DavidKDel2,

 

You can only complete free checkouts without transactions. Any checkout that is being paid through a gateway would need to use either Stripe or Spreedly for card vaulting. In your case, Spreedly would need to be used, as it support third party gateways. One thing to note is that you would need to apply for the ability to processing payments this way. Your app would need to be a sales channel app (think marketplace) in order to be approved. You can apply within your partner dashboard, under the app setup tab for your app.

 

You can use the DraftOrder API to create orders, but you are going to run into the same issue where adding payment programatically is reserved to sales channels with payment processing access. You could manually tag the order as paid without collecting funds, or generate a checkout url for the customer to complete, but that doesn't sound like what you're looking for.

 

Let me know if you have any questions about any of this!

To learn more visit the Shopify Help Center or the Community Blog.

View solution in original post

Replies 3 (3)

Busfox
Shopify Staff (Retired)
628 49 110

This is an accepted solution.

Hi @DavidKDel2,

 

You can only complete free checkouts without transactions. Any checkout that is being paid through a gateway would need to use either Stripe or Spreedly for card vaulting. In your case, Spreedly would need to be used, as it support third party gateways. One thing to note is that you would need to apply for the ability to processing payments this way. Your app would need to be a sales channel app (think marketplace) in order to be approved. You can apply within your partner dashboard, under the app setup tab for your app.

 

You can use the DraftOrder API to create orders, but you are going to run into the same issue where adding payment programatically is reserved to sales channels with payment processing access. You could manually tag the order as paid without collecting funds, or generate a checkout url for the customer to complete, but that doesn't sound like what you're looking for.

 

Let me know if you have any questions about any of this!

To learn more visit the Shopify Help Center or the Community Blog.

DavidKDel2
Shopify Partner
3 0 4

Hi @Busfox,

 

Thanks for the reply and the suggestions. The current Shopify apis seem to be tied to mobile/web interfaces making the voice assistant payment integration a bit more challenging.

 

Since Amazon Pay and Google Transaction are my only options, I need a way to handle payments outside of Shopify.

 

In order to do that, I ended up using a mixture of Storefront checkout and Admin DraftOrders, and manually tagging orders as paid as you suggested.

undercovegeek
Shopify Partner
1 0 0

Running into the same issue here. I'm developing an Alexa skill for one of the Shopify merchants and I'm using the storefront APIs, Admin APIs and Amazon Pay for payments (built in with Alexa).

The only way I was able to make it happen is to create a checkout, pay with Amazon pay, and create an order using admin APIs, but can't find a way to complete the checkout.

Thus payments are processed outside Shopify Checkout and my customer merchant  is worried that this is not compliant.

Is there a compliance issue with this implementation?
Is there a way after all to complete the checkout with Amazon Pay?