{"id":21525808,"url":"https://github.com/bkwld/craft-importable-shopify-feeds","last_synced_at":"2026-05-17T12:04:44.516Z","repository":{"id":39876110,"uuid":"455332139","full_name":"BKWLD/craft-importable-shopify-feeds","owner":"BKWLD","description":"A Craft plugin that maps Shopify data into feeds that are more easily consumed by FeedMe.","archived":false,"fork":false,"pushed_at":"2024-04-08T19:02:31.000Z","size":69,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-05T10:02:03.797Z","etag":null,"topics":["craft-plugin","shopify"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BKWLD.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-03T21:18:44.000Z","updated_at":"2023-10-11T15:27:32.000Z","dependencies_parsed_at":"2025-01-24T05:39:07.082Z","dependency_job_id":null,"html_url":"https://github.com/BKWLD/craft-importable-shopify-feeds","commit_stats":{"total_commits":20,"total_committers":3,"mean_commits":6.666666666666667,"dds":"0.19999999999999996","last_synced_commit":"8773095b53d46fcb7f9c966cd1f9e7f995630fd2"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BKWLD%2Fcraft-importable-shopify-feeds","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BKWLD%2Fcraft-importable-shopify-feeds/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BKWLD%2Fcraft-importable-shopify-feeds/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BKWLD%2Fcraft-importable-shopify-feeds/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BKWLD","download_url":"https://codeload.github.com/BKWLD/craft-importable-shopify-feeds/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244085008,"owners_count":20395523,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["craft-plugin","shopify"],"created_at":"2024-11-24T01:38:31.747Z","updated_at":"2026-05-17T12:04:44.404Z","avatar_url":"https://github.com/BKWLD.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Importable Shopify Feeds\n\nA Craft plugin that maps Shopify data into feeds that are more easily consumed by FeedMe.\n\n## Setup\n\nThis expects that your Craft .env file has:\n\n```env\nSHOPIFY_URL=https://your-store.myshopify.com\nSHOPIFY_ADMIN_API_ACCESS_TOKEN=xxxxxxxxxxx\n```\n\nIn addition, you'll need to give your Custom App the following permissions:\n\n- Product listings\n  - `read_product_listings`\n- Products\n  - `read_products`\n\n## Usage\n\nSet up FeedMe to query either of the following routes.  We're only exposing a minimum set of data that can be used to create matching Craft products.  It's assumed that Shopify is the source of truth for all other fields and their data shouldn't be cached in Craft.\n\n#### Products\n\n`https://cms-domain.com/actions/importable-shopify-feeds/feeds/products`\n\n```json\n[\n  {\n    \"title\": \"Product Title\",\n    \"handle\": \"product-title\"\n  },\n]\n```\n\n#### Variants\n\n`https://cms-domain.com/actions/importable-shopify-feeds/feeds/variants`\n\n```json\n[\n  {\n    \"title\": \"Variant Title\",\n    \"sku\": \"413071\",\n    \"product\":{\n      \"title\": \"Product Title\",\n      \"handle\": \"product-title\"\n    },\n    \"dashboardTitle\": \"Product Title - Variant Title (413071)\"\n  },\n]\n```\n\n#### Collections\n\n`https://cms-domain.com/actions/importable-shopify-feeds/feeds/collections`\n\n```json\n[\n\t{\n\t\t\"title\": \"Collection Title\",\n\t\t\"handle\": \"collection-title\"\n\t},\n]\n```\n\n#### Multiple Shopify stores\n\nIf you have multiple Shopify stores but one Craft instance (like if you are using Craft's multi-site feature to manage multiple Shopify stores), you can should can specify the Shopify ENV credentials using an arbitrary namespace suffix.  Like:\n\n```env\nSHOPIFY_URL=https://your-store.myshopify.com\nSHOPIFY_ADMIN_API_ACCESS_TOKEN=xxxxxxxxxxx\nSHOPIFY_URL_CANADA=https://your-canadian-store.myshopify.com\nSHOPIFY_ADMIN_API_ACCESS_TOKEN_CANADA=xxxxxxxxxxx\n```\n\nThen, you can use that namesapce in all of the feed URLs like so:\n\n`https://cms-domain.com/actions/importable-shopify-feeds/feeds/products?store=CANADA`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbkwld%2Fcraft-importable-shopify-feeds","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbkwld%2Fcraft-importable-shopify-feeds","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbkwld%2Fcraft-importable-shopify-feeds/lists"}