[Bug]: Shopify Connector – Fulfillment "Delivered At" timestamp is not imported
Nobody has claimed this yet.
- Dominant language
- AL
- Stars
- 683
- Forks
- 459
- Avg merge
- 3d 26m
- Merged PRs (30d)
- 633
Description
Describe the issue
The Shopify GraphQL query used to fetch order fulfillments (GetOrderFulfillment.graphql) and the Shpfy Order Fulfillments codeunit don't capture the fulfillment's deliveredAt timestamp from Shopify. The Shpfy Order Fulfillment table (30111) has no field to store it — even though the test mock data in ShpfyOrderFulfillmentsTest.Codeunit.al already adds a deliveredAt property to its generated fulfillment JSON, suggesting this was anticipated but never finished. Separately, ShpfyExportShipments.Codeunit.al already queries deliveredAt inline for a different flow but discards it without parsing it into anything.
Expected behavior
When a fulfillment is imported from Shopify, its deliveredAt value should be parsed and stored on the Shpfy Order Fulfillment record — the same way createdAt/updatedAt already are — and shown on the Order Fulfillment pages so users can see when a shipment was actually delivered.
Steps to reproduce
- Fulfill and deliver an order in Shopify so the fulfillment has a deliveredAt value set.
- Sync the order's fulfillment into Business Central via the Shopify connector.
- Open the Order Fulfillment page/table for that fulfillment in Business Central.
- There's no field showing when it was delivered — the data exists in Shopify but the connector never requests or stores it.
Additional context
- GetOrderFulfillment.graphql doesn't request deliveredAt.
- Shpfy Order Fulfillment (table 30111) has no matching field; next available field number is 19.
- ImportFulfillment in ShpfyOrderFulfillments.Codeunit.al parses createdAt/updatedAt via JsonHelper.GetValueIntoField but not deliveredAt.
- I have a fix ready (query, table field, parsing, page display, and an updated unit test) and intend to submit it as a linked PR.
I will provide a fix for a bug
- I will provide a fix for a bug
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with GetOrderFulfillment.graphql, ShpfyOrderFulfillments.Codeunit.al, the Shpfy Order Fulfillment table and page, and ShpfyOrderFulfillmentsTest.Codeunit.al. Compare deliveredAt with the existing createdAt and updatedAt handling, then run the fulfillment test. Done means the value is requested, stored, displayed, and covered by the updated test.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- graphql
- Domain
- api, backend, database
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 72/100