Comments (3)
This issue is something that's been affecting us for some time as well. This is available from Shopify's API, so it seems like a bug in the tap.
I'd like to contribute, but I think this is something that needs a decision by the product team before any code is written, to consider historical context and backwards incompatibilities. If it's something Stitch would be willing to merge in, let me know if it'd be helpful for us to make a PR. My main hesitation is building something backwards incompatible and not knowing the internal processes around that.
There seem to be two ways to address this:
Method 1
Fix
orders__fulfillments__line_items._sdc_source_key_id
so that it referencesorders__fulfillments.id
This has great implications:
- All users of SaaS or open source platforms that use this tap, such as Stitch Data or Singer would need to refresh their data from the beginning of time
- All users of this tap could potentially need to update their database queries
This would be in-line with the standardized setup of most of this tap, however bears heavy risk.
Method 2
Add a new field of
orders__fulfillments__line_items.fulfillment_id
that referencesorders__fulfillments.id
This is safer, and while not the intended way to approach it, we can see a case made for it with refund order adjustments, which have these:
orders__refunds__order_adjustments._sdc_source_key_id
=orders.id
orders__refunds__order_adjustments.refund_id
=orders__refunds.id
@singer-io if method 2 something that would be accepted if a pull request was made?
I've also reached out to Stitch support and on the Slack workspace, but haven't made definitive progress through those channels. I'd be happy to help here if it's something that would be accepted and used in Stitch.
from tap-shopify.
i believe this affects refunds and refunds__line_items as well
gl getting a response from stitch about this LOL
we "fixed" this by writing our own etl for an index table.
but if you end up forking the repo to fix this lmk
from tap-shopify.
Yep, we ended up doing something similar, using the Shopify APIs and building a table of created_at from the fulfillment with fulfillment_line_item_id (that's mainly what we needed) as the second column, but it would be awesome to move away from that.
I'll definitely keep you posted if I hear anything!
from tap-shopify.
Related Issues (20)
- Feature Request - Add support for draft orders
- Many Numeric Fields Processed as Text - Intentional?
- Request rate limit (exceeding 2 calls in a second) using Shopify Tap HOT 1
- Schema is wrong within Orders HOT 1
- Support events endpoint
- Add duties
- JsonDecodeError
- Shopify API 2022-07 is no longer supported HOT 4
- Shopify API version is outdated
- Repetitive error with large shops
- Add http request metrics
- Syncing always "Skipping stream" HOT 5
- tap-shopify does not support the gift card endpoint HOT 2
- device_type not being extracted
- add 'accepts_marketing_updated_at' to customer schema
- (1) Incremental issue (2) start_date and end data can be added ?
- ModuleNotFoundError (No module named 'tap_tester') HOT 2
- Empty schema {} causes validation failure HOT 1
- Metafield json_string as string.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tap-shopify.