This is my first message here; I am a beginner data analyst (retraining from a biology background!) and I started an internship at a Shopify shop in which I am asked to do a job that is more of a data engineer one:
- Set up data analytics warehouse --> data pipeline
- ETL (Extract-Transform-Load) from the Shopify data software tools (API) to xls/csv (Excel)
- Track KPIs (defined thereafter) monthly then weekly (and daily?) --> schedule jobs
- Create dataviz dashboards & reports using Google Data Studio
(+ CRM Customer Relation Management?)
- # mailing list subscribers
- # website visits
- # orders
- # returns
- # customers placing 2+ orders
- # orders per brand --> trends
- profitability = order value €
- products on wishlists (desired/populars)
I suppose I need to connect to the Shopify Admin API then do the ETL process, but I never did that and I am self-taught so I feel a bit lost.
I already asked the shop to create a private app and got its credentials, but is it the right option or should I create a custom app instead?
I don't have direct access to the shop, and I have a partner account, not a staff one...
How do I proceed from there? Where can I find the relevant information?
I found some documentation but this is a bit overwhelming, there is a lot, it is quite technical and I am not sure which option applies to my case:
I am stuck at step 4, probably because I've not yet figured out what to put as 'request_params':
NameError Traceback (most recent call last)
<ipython-input-5-fba5ce29d6d1> in <module>
1 session = shopify.Session(shop_url, api_version)
----> 2 access_token = session.request_token(request_params) # request_token will validate hmac and timing attacks
3 # you should save the access token now for future use.
NameError: name 'request_params' is not defined
You are on the right track - a private app with the right read access rights is the right way to access the data, and a partner account should suffice.
We've worked with multiple clients to setup the ETL flow & transformations from Shopify to a sheet, you can email me at email@example.com, happy to help.