Checkout API

Highlighted
Shopify Partner
4 0 1

Is it possible to transact and take payment through the Checkout API?

 

Has anyone tried to do this? If it's not, is there a way? I'm looking to take card details on a Magento install but transact through the Shopify checkout.

 

TIA,

Brandon

1 Like
Highlighted
Shopify Staff
Shopify Staff
1555 81 284

It's possible, but you need to be a sales channel implementation to do so.

https://help.shopify.com/en/api/guides/sales-channel-sdk/completing-a-payment

Otherwise you're going to have to defer to the checkout object's web_url where card details are captured and processed on Shopify.

2 Likes
Shopify Partner
4 0 1

Thanks Alex. 

 

That link says you can use the web url to send users to the Shopify checkout. So can I in effect generate a link with a given product on one site then pass to the Shopify checkout to transact on my Shopify site?

 

TIA

0 Likes
Highlighted
Shopify Staff
Shopify Staff
1555 81 284

Hey Brandon.

Correct. You can create a checkout whch includes specific product variants as line items and other information which would comprise a checkout, and then use that checkout object's web_url to pass the customer to Shopify to process the payment.

You'd want to do so with the storefront API: https://help.shopify.com/en/api/custom-storefronts/storefront-api/guides/checkout-guide

0 Likes
Highlighted
Shopify Partner
2294 117 357

 

. So can I in effect generate a link with a given product on one site then pass to the Shopify checkout 

Depending on situation see if cart permalinks fit the need.

 

@Alex Richter

 you need to be a sales channel implementation to do so

kinda of let down to land on something like:

api/custom-storefronts/storefront-api/reference/object/creditcard or

api/custom-storefronts/storefront-api/reference/input_object/creditcardpaymentinput

and not immediately knowing processing, card vaulting , can only happen via shopifys checkout. And trying to use them just leads to dead ends .

The graphql| reference should be updated to reflect when elevated permissions are needed for thing like plus and sale channels and gateways. The great features are piling up so it is getting a bit confusing, Maybe a guide on how all these features now flow together to educate developers where the red lines are expanding on the /sell-through-the-checkout-api image

Problem Solved? ✔️Accept and ? Like the solution so you can help others.
Buy me a coffee ☕ paypal.me/paulnewton or donate to eff.org
Confused? Busy? Buy a custom solution paull.newton+shopifyforum@gmail.com
0 Likes
Highlighted
Shopify Partner
1840 177 720

@Alex Richter what are the conditions to be accepted as a Sales Channel implementation? i.e. specific app approval or a specific Shopify plan?

Liked this post? You might also like our fantastic upsell apps Candy Rack and Candy Cart or offer free gifts with Gift Box. All made with ❤️  and care by Digismoothie
0 Likes
Highlighted
Shopify Staff
Shopify Staff
1555 81 284

@Paul: That's some really good objective feedback, thanks. I understand there's a few weaker areas in the docs where things aren't as clear as they can be, especially sales-channel related subject matters. First and foremost I'll look into some docs improvements when I can.

@Karl: The first and foremost requirement is that it makes business sense for your app to be a sales channel integration. You need to essentially function as a marketplace. You cannot request access to payment processing for the sake of access, though. Channel requirements are summarized here: https://help.shopify.com/en/api/guides/sales-channel-sdk/overview

You can mark your app as a sales channel in your partner dashboard (this is not reversible). Once that's done, you can request payment processing.

1 Like
Highlighted
Shopify Partner
1840 177 720

So just to be clear @Alex Richter

  • A storefront owner cannot complete a checkout payment using any of the API's available to private apps
  • A storefront owner can create a checkout using Storefront API that essentially takes you up to the payment step
  • A storefront owner cannot modify the checkout process or checkout template (unless on Plus plan) and has no means to do so on their own behalf using Shopify API's unless they create, offer and maintain a full-blown marketplace app that can access Sales Channel SDK

What options do store owners have that need to accommodate regional e-commerce customs such with common scenarios such as:

  • in-store pickup - customers in some countries are accustomed to various in-store pickup networks where they can have their order delivered. They usually pick that shipping method and choose from a list of locations nearby or on a map widget.

    As is, this scenario is entirely impossible using Shopify because you cannot add custom widgets to checkout, cannot enforce a billing address be added but shipping address be disabled (can only be set by picking a in-store location)
  • many GDPR discussions have been published in documentation, blogs and forums regarding Shopify and GDPR compliance, however, many European merchants still feel we could up the ante a little, but cannot do so because of a very constrained checkout process

I understand many of these scenarios are perfectly fine using a Plus subscription, but considering the price and annual commitment it is _completely_ out of reach for home based startups, small merchants etc.

Are there any other options how small merchants using Shopify could take control of their shipping and checkout process to accomodate country specific customs and meet customer expetations even if that means running the entire storefront on their own but still using the Shopify backend?

Liked this post? You might also like our fantastic upsell apps Candy Rack and Candy Cart or offer free gifts with Gift Box. All made with ❤️  and care by Digismoothie
1 Like
Highlighted
Shopify Staff
Shopify Staff
1555 81 284

Hey Karl,

You are correct in all three of your initial points.

To address your other two points:

  • In-store pickup: you definitely won't be able to get a widget onto the checkout as you know. You could use the carrier services API to present a list of location-specific in-store pickup rates (if not free) perhaps if you need to do this on the checkout.
  • I'm not entirely sure what you mean here. What exactly would you want to do here that you can't due to checkout contraints in the name of GDPR compliance?

At the end of the day, the checkout is a walled garden for the most part to non-plus merchants. There isn't much of a way around that.

Small merchants can definitely take control of their shipping with the carrier services API and manual rates if tehy need to be more granular. I don't know specific reasoning for the checkout being restricted because that admittedly is not my area of expertise.

You can use the entire Shopify backend without a storefront essentially without Shopify's payment processing. In this case you would be processing orders externally and creating orders in Shopify using the orders API, or perhaps creating a hosted payments SDK integration (offsite payment gateway) if you do want a storefront, etc (to name a few).

1 Like
Highlighted
Shopify Partner
1840 177 720

@Alex Richter

Thanks a bunch for answering all my questions and helping clarify a lot.

I was aware of the Carrier Service API, but again, this one is only available to Advanced subscriptions which are still way out of reach for very small merchants if you consider the monthly subscription is equal to the monthly revenue of such a business - not to mention this need be paid annually upfront. As is, I accept that limitation and suppose it is more of an issue for marketing and sales to pick up upon than having a few techies squabble over why's and why not's :-)

As for GDPR, with no way to customize the checkout process / template, even if only with static code (not counting the little bit you can add in the checkout completion summary) we feel we do not advise our European customers sufficiently about whom they are providing data to with each step. Yes, there are links to privacy / data protection in the footer, but a more visible means would be far more in-line with GDPR best practices as opposed to GDPR bare-bones requirements. Alas, it is picking cherries, I know.

Once again, thanks for your help!

Liked this post? You might also like our fantastic upsell apps Candy Rack and Candy Cart or offer free gifts with Gift Box. All made with ❤️  and care by Digismoothie
2 Likes