Saving additional data when checkout is completed on shopify - shopify

I'm not entirely sure how to go about this so i thought i'd ask here.
Context
I have a quiz that people take on my site and when the quiz is completed, a product is recommended based on their quiz results. A customer is now able to buy this recommended product.
What i want to do is to be able to save the quiz response to my external database with the order id as a unique id for quick retrieval later. How would i go about this in Shopify?
Question
Is there a way i can make a POST request when the checkout button is pressed on the checkout page?
Would i have to create a custom checkout to get access to that area?
Thank you

If you're attempting to save to an external database then you'll need to figure out a way to send data from your Shopify frontend to an external app or API, one that will capture the product data and add it to the DB.
To answer your first question, no, you can not hijack the functionality of the checkout button (unless you do so via Javascript).
As for your second question, I don't know what you mean by 'custom checkout' but I'd say you're probably looking in the wrong area for the solution to this.
Shopify's backend is not able to be edited by the merchant themselves and can only be accessed via its various APIs.
How I would do it if I were you is to create that external app, create an endpoint that accepts the product data / adds to the DB and write code on your Shopify front-end to send the data to that endpoint.
Keep in mind that you won't be able to easily identify the customer to whom the product is recommended to unless they are logged in.

Related

How do I integrate third party APIs with Shopify to find and create products?

I have created a Shopify Store which needs to contact another outside web service to send a query and then build the products based on the query response data.
Is it possible to do with Shopify?
If yes, then how should I go about implementing it?
I have tried looking into the docs but it seems like the only option is to connect with Admin API to add products. However, I don't want to store product data but instead rely on the API.
You do want to use Admin API calls. The reason is simple. They let you create products in Shopify, in bulk. Why fight the power! Using the Admin API has nothing to do with storing products, not sure why you're afraid.
So you get your product info from wherever, format it into Shopify-compatible data, inform Shopify of your data, and sit back and relax. The bulk building is really quite simple for a pattern. You can also build yourself a CSV to import where you also format the data to be compatible with Shopify. So there are two options for you right there.

Shopify app for altering the default checkout procedure

I need to create a solution for altering the checkout process.
Better said, I need to add some functionality to it with a remote app (I am not sure if this is the right way to do it).
Mainly, what is needed represents a process that calls an external API, using a private API key from a delivery company, that registers a pick-up from the buyers house and sends the product to our headquarters.The process should be started when the user completes the entire checkout system from shopify, after payment.
After that, some AWB should be returned to the users checkout page, or some response regarding the creation of the pick up.
My question is, let's say, using some language like javascript with node and Koa or express, how one can achieve that? I can't find any tutorials or something that would help me do this.

How to add a custom section / page with an embedded app in Shopify?

For a client i want to integrate a new way of renting products in Shopify which they pick right up after ordering from a pickup point. This new way is a service which can be interacted with via an API. After ordering, a code is provided which can be used to open a locker somewhere. In the shop, on a custom page or some sort of reusable block i want have a custom HTML form which can interact with this API. The customer can then choose the product, the available pickup-point, pay for his/her order and receive the code for pickup. Is this possible?
I have done research but could not find this type of customizing.
I have built some test-apps but it seems these can only be embedded in the admin and not in the storefront itself (please correct me if i am wrong). I can interact with the storefront-api so that's a plus allright.
The ideal way would be for me to develop a React/Vue app which can be added to a page for walking trough this process described above.
Anyway, is it possible one way or another?
Thanks in advance for thinking with me on this one!

Single page checkout for shopify

Kindly please suggest me the best way to single page checkout for Shopify store. As Shopify doesn't support any customization to the checkout page. Our requirement is to create a single page checkout. let me know how it is achievable.
Basic Shopify does not support customization in the checkout page. It is only available to Shopify plus Customer. Please visit here for more information.
You want a single page checkout you may need to create your own checkout process which will again require your store to be a Shopify Plus store. However, there are many Apps which can help you with single page checkout. You may want to use one of them if you don't want to build the whole functionality. You may want to check the below conversation - Link
You should not use Shopify if you want to make your own Checkout. Shopify is a hosted platform and they no longer want to let people play with the cash register themselves.
Of the few Apps that remain that do offer checkout outside of Shopify, you can see the hassles involved for customers. Why not just roll your own? If you can do your own checkout, hook up to an open source system instead where you can do that easier.
This is easy enough to do if you have the skills. Basically create an app that has a proxy page and change the theme's links replacing the paths to the checkout with paths to your proxied checkout.
There are a number of ways to collect payment info if you do this including using the draft_orders api to send the customer back to Shopify for final payment (not applicable for single page checkout but sometimes works well with the business reason that justifies a custom checkout in the first place)
You can also create a sales channel app that works much like the proxied app concept but has some more api capabilities.
However you really need a good business reason for doing this. Single page checkout was fashionable a few years ago but I've had as many customers go away from it as go towards it. Shopify has done quite a lot of work on their checkout and it works well (i.e. is fast and efficient) on all their supported platforms. Creating a custom checkout means your stuck maintaining it and are potentially increasing your liability if you take credit cards but have not received PCI certification.

when create Order and Customer via API Shopify data not show in Admin panel

I have a problem with Shopify API. I use python API for Shopify. When I create a new order via API, data exists (I check via API too) but it's not shown within Shopify admin panel.
It's pretty likely that you're interacting with two different stores if you're getting 200 OKs and seeing the Orders come back through the API and not through the admin.
It's worth checking shopify.Shop.current().domain to see if it matches up with the admin that you're interacting with. If you're still seeing issues, post the contents of your request (including headers) and it will be a lot easier to give you a hand :)