Hello @samliew,
Thanks for your support with that.
I just created a test scenario to illustrate what I try to do.
Context detail: I sell different products from different providers in my e-commerce. In an order I can have products from different providers, and to ship them I need one delivery slip per provider.
The ordered product are in the result of the “Get and Order” module, and the provider info is in the “Get a Product” module.
My idea was to create an Array with all the ordered product info (product id, name, and quantity) AND the provider (represented by the attribute shippingClass). Then I will parse this Array, group result by shippingClass and send the sub-array to the next module to create one delivery slip per shippingClasse.
This is the lineItems returned by the “Get an Order” module (full export bellow)
"lineItems": [
{
"id": 70,
"name": "Collier EM en Céramique",
"quantity": 1,
"subtotal": "25.90",
"total": "25.90",
"taxes": [
{
"id": 1,
"total": "2.098057",
"subtotal": "2.098057"
}
],
"sku": null,
"price": 25.901943,
"image": {
"id": 1786,
"src": "https://drvictoria.vet/wp-content/uploads/2024/10/gerigodis-collier-grand.webp"
},
"productId": 1785,
"variationId": 2600,
"taxClass": null,
"subtotalTax": "2.10",
"totalTax": "2.10",
"metaData": [
{
"id": 519,
"key": "pa_collier_taille",
"value": "taille_moyen",
"displayKey": "Taille de collier",
"displayValue": "Moyen"
},
{
"id": 520,
"key": "pa_couleur-collier",
"value": "noir",
"displayKey": "Couleur de collier",
"displayValue": "Noir"
}
],
"parentName": "Collier EM en cordelette et Céramique"
},
{
"id": 71,
"name": "Collier EM en Céramique",
"quantity": 1,
"subtotal": "32.38",
"total": "32.38",
"taxes": [
{
"id": 1,
"total": "2.622572",
"subtotal": "2.622572"
}
],
"sku": null,
"price": 32.377428,
"image": {
"id": 1786,
"src": "https://drvictoria.vet/wp-content/uploads/2024/10/gerigodis-collier-grand.webp"
},
"productId": 1785,
"variationId": 2591,
"taxClass": null,
"subtotalTax": "2.62",
"totalTax": "2.62",
"metaData": [
{
"id": 530,
"key": "pa_collier_taille",
"value": "taille_grand",
"displayKey": "Taille de collier",
"displayValue": "Grand"
},
{
"id": 531,
"key": "pa_couleur-collier",
"value": "bleu",
"displayKey": "Couleur de collier",
"displayValue": "Bleu"
}
],
"parentName": "Collier EM en cordelette et Céramique"
}
],
The shipping class returned by the “Get a Product” module is the following
"shippingClass": "gerigodis-colliers",
Idealy I would need the to create the following Array (one line per lineItems):
OrderID, productID, ProductName, Quantity, ShippingClass
2946, 70, “Collier EM en Céramique”, 1,“gerigodis-colliers”
…
Here bellow the full output bundle export
[
{
"id": 2946,
"status": "completed",
"currency": "CHF",
"version": "9.7.1",
"total": "66.31",
"billing": {
"company": null,
"city": "TEST",
"state": "VD",
"postcode": "11111",
"country": "CH",
"email": "XXXXX@gmail.com",
"phone": "0000000",
"firstName": "XXXXX",
"lastName": "XXXXX",
"address1": "XXXXXX",
"address2": null
},
"shipping": {
"company": null,
"city": "XXXXX",
"state": "VD",
"postcode": "111",
"country": "CH",
"phone": null,
"firstName": "XXXXX",
"lastName": "XXXXX",
"address1": "XXXXX",
"address2": null
},
"number": "2946",
"refunds": [],
"parentId": 0,
"pricesIncludeTax": true,
"dateCreated": "2025-03-28T09:36:12.000Z",
"dateModified": "2025-03-28T10:11:15.000Z",
"discountTotal": "0.00",
"discountTax": "0.00",
"shippingTotal": "3.06",
"shippingTax": "0.25",
"cartTax": "4.72",
"totalTax": "4.97",
"customerId": 0,
"orderKey": "wc_order_zyBYBmOjvnuXb",
"paymentMethod": "stripe",
"paymentMethodTitle": "Carte de crédit/débit",
"transactionId": "XXXXX",
"customerIpAddress": "XXXXX",
"customerUserAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_3_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3.1 Mobile/15E148 Safari/604.1",
"createdVia": "checkout",
"customerNote": null,
"dateCompleted": "2025-03-28T10:11:15.000Z",
"datePaid": "2025-03-28T09:36:16.000Z",
"cartHash": "653de466378e8e5ffd65d5098425ed6d",
"metaData": [
{
"id": 575,
"key": "is_vat_exempt",
"value": "no"
},
{
"id": 593,
"key": "_stripe_charge_captured",
"value": "yes"
},
{
"id": 596,
"key": "_stripe_currency",
"value": "CHF"
},
{
"id": 589,
"key": "_stripe_customer_id",
"value": "cus_RsIi6PBgwY6Nj9"
},
{
"id": 594,
"key": "_stripe_fee",
"value": "2.22"
},
{
"id": 592,
"key": "_stripe_intent_id",
"value": "pi_3R7ZKjK5Sw8YM6VO0HFQ4TSe"
},
{
"id": 595,
"key": "_stripe_net",
"value": "64.09"
},
{
"id": 588,
"key": "_stripe_source_id",
"value": "pm_1R7ZKhK5Sw8YM6VO4r6TwMBc"
},
{
"id": 590,
"key": "_stripe_upe_payment_type",
"value": "card"
},
{
"id": 587,
"key": "_wc_order_attribution_device_type",
"value": "Mobile"
},
{
"id": 579,
"key": "_wc_order_attribution_referrer",
"value": "https://www.google.com/"
},
{
"id": 585,
"key": "_wc_order_attribution_session_count",
"value": "1"
},
{
"id": 582,
"key": "_wc_order_attribution_session_entry",
"value": "https://drvictoria.vet/"
},
{
"id": 584,
"key": "_wc_order_attribution_session_pages",
"value": "6"
},
{
"id": 583,
"key": "_wc_order_attribution_session_start_time",
"value": "2025-03-28T08:31:10.000Z"
},
{
"id": 578,
"key": "_wc_order_attribution_source_type",
"value": "organic"
},
{
"id": 586,
"key": "_wc_order_attribution_user_agent",
"value": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_3_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3.1 Mobile/15E148 Safari/604.1"
},
{
"id": 581,
"key": "_wc_order_attribution_utm_medium",
"value": "organic"
},
{
"id": 580,
"key": "_wc_order_attribution_utm_source",
"value": "google"
}
],
"lineItems": [
{
"id": 70,
"name": "Collier EM en Céramique",
"quantity": 1,
"subtotal": "25.90",
"total": "25.90",
"taxes": [
{
"id": 1,
"total": "2.098057",
"subtotal": "2.098057"
}
],
"sku": null,
"price": 25.901943,
"image": {
"id": 1786,
"src": "https://drvictoria.vet/wp-content/uploads/2024/10/gerigodis-collier-grand.webp"
},
"productId": 1785,
"variationId": 2600,
"taxClass": null,
"subtotalTax": "2.10",
"totalTax": "2.10",
"metaData": [
{
"id": 519,
"key": "pa_collier_taille",
"value": "taille_moyen",
"displayKey": "Taille de collier",
"displayValue": "Moyen"
},
{
"id": 520,
"key": "pa_couleur-collier",
"value": "noir",
"displayKey": "Couleur de collier",
"displayValue": "Noir"
}
],
"parentName": "Collier EM en cordelette et Céramique"
},
{
"id": 71,
"name": "Collier EM en Céramique",
"quantity": 1,
"subtotal": "32.38",
"total": "32.38",
"taxes": [
{
"id": 1,
"total": "2.622572",
"subtotal": "2.622572"
}
],
"sku": null,
"price": 32.377428,
"image": {
"id": 1786,
"src": "https://drvictoria.vet/wp-content/uploads/2024/10/gerigodis-collier-grand.webp"
},
"productId": 1785,
"variationId": 2591,
"taxClass": null,
"subtotalTax": "2.62",
"totalTax": "2.62",
"metaData": [
{
"id": 530,
"key": "pa_collier_taille",
"value": "taille_grand",
"displayKey": "Taille de collier",
"displayValue": "Grand"
},
{
"id": 531,
"key": "pa_couleur-collier",
"value": "bleu",
"displayKey": "Couleur de collier",
"displayValue": "Bleu"
}
],
"parentName": "Collier EM en cordelette et Céramique"
}
],
"taxLines": [
{
"id": 73,
"label": "TVA8.1",
"compound": false,
"rateCode": "CH-TVA8.1-1",
"rateId": 1,
"taxTotal": "4.72",
"shippingTaxTotal": "0.25",
"ratePercent": 8.1,
"metaData": []
}
],
"shippingLines": [
{
"id": 72,
"total": "3.06",
"taxes": [
{
"id": 1,
"total": "0.24786",
"subtotal": null
}
],
"methodTitle": "Forfait",
"methodId": "flat_rate",
"instanceId": "2",
"totalTax": "0.25",
"taxStatus": "taxable",
"metaData": [
{
"id": 537,
"key": "Articles",
"value": "Collier EM en Céramique × 1, Collier EM en Céramique × 1",
"displayKey": "Articles",
"displayValue": "Collier EM en Céramique × 1, Collier EM en Céramique × 1"
}
]
}
],
"feeLines": [],
"couponLines": [],
"paymentUrl": "https://drvictoria.vet/checkout/order-pay/2946/?pay_for_order=true&key=wc_order_zyBYBmOjvnuXb",
"isEditable": false,
"needsPayment": false,
"needsProcessing": true,
"currencySymbol": "CHF"
}
]
Get An Order:
[
{
"id": 1785,
"name": "Collier EM en cordelette et Céramique",
"slug": "collier-anti-parasites-gerigodis",
"permalink": "https://drvictoria.vet/shop/collier-anti-parasites-gerigodis/",
"type": "variable",
"status": "publish",
"featured": false,
"description": "<h1>Collier EM en Céramique : Bienfaits et Propriétés Anti-tique</h1>\n<p>Le collier EM (Effective Microorganisms) en céramique est un accessoire innovant qui gagne en popularité auprès des propriétaires d'animaux soucieux du bien-être naturel de leurs compagnons. Ce collier, conçu avec des micro-organismes bénéfiques encapsulés dans une matrice en céramique, est particulièrement apprécié pour ses effets anti-tique, contribuant ainsi à la protection des animaux contre les infestations de parasites.</p>\n<h2>Qu'est-ce que le collier EM ?</h2>\n<p>Le collier EM est fabriqué à partir de céramique contenant des micro-organismes, tels que des bactéries lactiques, des levures et des photosynthétiques. Ces micro-organismes sont sélectionnés pour leurs propriétés bénéfiques, favorisant un environnement sain pour l'animal. Lorsqu'ils sont portés, les céramiques EM émettent des ions et des ondes qui interagissent avec le champ électromagnétique de l'animal, créant une ambiance favorable pour sa santé.</p>\n<h2>Effets Anti-tique</h2>\n<p>Les recherches sur les effets des céramiques EM indiquent qu'elles peuvent influencer positivement la biodiversité microbienne et créer un environnement défavorable aux parasites, y compris les tiques. Une étude publiée dans la revue <em>Journal of Vector Ecology</em> souligne que les micro-organismes bénéfiques peuvent réduire l'attraction des tiques sur les hôtes en modifiant leur odeur corporelle, ce qui rend les animaux moins susceptibles d'être infestés.</p>\n<p>En outre, les ions émis par les céramiques peuvent également renforcer le système immunitaire de l'animal, rendant son organisme moins accueillant pour les parasites. Des études ont montré que des animaux bénéficiant d'un soutien immunitaire accru sont moins vulnérables aux infestations.</p>\n<p>Avantages supplémentaires</p>\n<p>En plus de ses propriétés anti-tique, le collier EM en céramique offre d'autres bienfaits :</p>\n<ol>\n<li>Amélioration de la santé générale : Les micro-organismes bénéfiques peuvent favoriser un équilibre microbiologique sain, essentiel pour la digestion et la santé intestinale.</li>\n<li>Réduction du stress : Le collier contribue à apaiser les animaux en créant une ambiance harmonieuse, réduisant ainsi le stress et l'anxiété.</li>\n<li>Durabilité : Fabriqué à partir de matériaux naturels, ce collier est non seulement efficace mais également respectueux de l'environnement.</li>\n</ol>\n<p>Le collier EM en céramique représente une approche holistique et naturelle pour protéger votre animal des tiques et d'autres parasites. En intégrant ce produit dans le quotidien de votre compagnon, vous lui offrez une protection renforcée tout en favorisant son bien-être général. Pour plus d'informations sur les produits naturels et holistiques pour vos animaux, n'hésitez pas à consulter notre site, où un vétérinaire holistique se tient à votre disposition pour vous conseiller.</p>\n<h2 data-start=\"0\" data-end=\"51\"><strong data-start=\"4\" data-end=\"49\">Instructions d’utilisation et d’entretien</strong></h2>\n<p data-start=\"53\" data-end=\"87\"><strong data-start=\"53\" data-end=\"69\">Durée de vie</strong> : Jusqu'à 5 ans</p>\n<p><strong data-start=\"89\" data-end=\"104\">Utilisation</strong> : Placez simplement le collier autour du cou de votre chien et laissez-le agir en continu.</p>\n<p><strong data-start=\"201\" data-end=\"214\">Entretien</strong> :</p>\n<ul>\n<li data-start=\"53\" data-end=\"87\">Rincez-le à l’eau claire toutes les 1 à 2 semaines.</li>\n<li data-start=\"53\" data-end=\"87\">Séchez-le à l’air libre, de préférence à l’extérieur : les rayons UV rechargent naturellement les perles.</li>\n</ul>\n<h2></h2>\n<h2>Références</h2>\n<ul>\n<li>\"The role of effective microorganisms in the reduction of tick attraction\", Journal of Vector Ecology, 2021.</li>\n<li>\"Microbial Balance and Animal Health: Implications for Veterinary Practice\", Journal of Veterinary Medicine, 2022.</li>\n</ul>\n<p> </p>\n<p>Adoptez une approche naturelle et laissez votre animal bénéficier des vertus du collier EM en céramique !</p>\n",
"sku": null,
"price": "20",
"purchasable": true,
"virtual": false,
"downloadable": false,
"downloads": [],
"backorders": "no",
"backordered": false,
"weight": null,
"dimensions": {
"length": null,
"width": null,
"height": null
},
"categories": [
{
"id": 69,
"name": "Antiparasitaires",
"slug": "antiparasitaires"
}
],
"tags": [],
"images": [
{
"id": 1786,
"src": "https://drvictoria.vet/wp-content/uploads/2024/10/gerigodis-collier-grand.webp",
"name": "gerigodis collier grand",
"alt": null,
"dateCreated": "2024-10-13T12:50:33.000Z",
"dateModified": "2024-10-13T12:50:33.000Z"
},
{
"id": 1787,
"src": "https://drvictoria.vet/wp-content/uploads/2024/10/gerigodis-collier-moyen.webp",
"name": "gerigodis collier moyen",
"alt": null,
"dateCreated": "2024-10-13T12:50:35.000Z",
"dateModified": "2024-10-13T12:50:35.000Z"
},
{
"id": 1788,
"src": "https://drvictoria.vet/wp-content/uploads/2024/10/gerigodis-collier-petit.webp",
"name": "gerigodis collier petit",
"alt": null,
"dateCreated": "2024-10-13T12:50:37.000Z",
"dateModified": "2024-10-13T12:50:37.000Z"
}
],
"attributes": [
{
"id": 1,
"name": "Taille de collier",
"slug": "pa_collier_taille",
"position": 0,
"visible": true,
"variation": true,
"options": [
"Grand",
"Moyen",
"Petit"
]
},
{
"id": 8,
"name": "Couleur de collier",
"slug": "pa_couleur-collier",
"position": 1,
"visible": true,
"variation": true,
"options": [
"Bleu",
"Jaune",
"Noir",
"Orange",
"Rose",
"Rouge",
"Vert"
]
}
],
"variations": [
2591,
2592,
2593,
2594,
2595,
2596,
2597,
2598,
2599,
2600,
2601,
2602,
2603,
2604,
2605,
2606,
2607,
2608,
2609,
2610,
2611
],
"brands": [
{
"id": 103,
"name": "GeriGodis",
"slug": "gerigodis"
}
],
"dateCreated": "2025-02-27T11:55:13.000Z",
"dateModified": "2025-03-30T09:47:29.000Z",
"catalogVisibility": "visible",
"shortDescription": "<p>Voici une solution naturelle, sans insectiside ou chimie pour réduire le risque que votre chien attrape des tiques.</p>\n",
"regularPrice": null,
"salePrice": null,
"dateOnSaleFrom": null,
"dateOnSaleTo": null,
"onSale": false,
"totalSales": 10,
"downloadLimit": -1,
"downloadExpiry": -1,
"externalUrl": null,
"buttonText": null,
"taxStatus": "taxable",
"taxClass": null,
"manageStock": false,
"stockQuantity": null,
"backordersAllowed": false,
"lowStockAmount": null,
"soldIndividually": false,
"shippingRequired": true,
"shippingTaxable": true,
"shippingClass": "gerigodis-colliers",
"shippingClassId": 101,
"reviewsAllowed": false,
"averageRating": "0.00",
"ratingCount": 0,
"upsellIds": [],
"crossSellIds": [],
"parentId": 0,
"purchaseNote": null,
"defaultAttributes": [
{
"id": 1,
"name": "Taille de collier",
"option": "taille_moyen"
},
{
"id": 8,
"name": "Couleur de collier",
"option": "bleu"
}
],
"groupedProducts": [],
"menuOrder": 1,
"priceHtml": "<span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">CHF</span> 20.00</bdi></span> – <span class=\"woocommerce-Price-amount amount\"><bdi><span class=\"woocommerce-Price-currencySymbol\">CHF</span> 35.00</bdi></span> <small class=\"woocommerce-price-suffix\">TTC</small>",
"relatedIds": [
2402,
2399,
2948,
2411
],
"metaData": [
{
"id": 5821,
"key": "oec_total_stock_quantity",
"value": null
},
{
"id": 5822,
"key": "oec_special_deal_notice_text",
"value": null
},
{
"id": 5840,
"key": "_aioseo_keywords",
"value": []
},
{
"id": 5843,
"key": "_aioseo_og_article_section",
"value": null
},
{
"id": 5844,
"key": "_aioseo_og_article_tags",
"value": []
},
{
"id": 5847,
"key": "_mepr_unauthorized_message_type",
"value": "default"
},
{
"id": 5848,
"key": "_mepr_unauthorized_message",
"value": null
},
{
"id": 5849,
"key": "_mepr_unauth_login",
"value": "default"
},
{
"id": 5850,
"key": "_mepr_unauth_excerpt_type",
"value": "default"
},
{
"id": 5851,
"key": "_mepr_unauth_excerpt_size",
"value": "100"
},
{
"id": 5852,
"key": "ocean_both_sidebars_content_width",
"value": null
},
{
"id": 5853,
"key": "ocean_both_sidebars_sidebars_width",
"value": null
},
{
"id": 5854,
"key": "ocean_sidebar",
"value": "0"
},
{
"id": 5855,
"key": "ocean_second_sidebar",
"value": "0"
},
{
"id": 5856,
"key": "ocean_center_header_left_menu",
"value": "0"
},
{
"id": 5857,
"key": "ocean_custom_header_template",
"value": "0"
},
{
"id": 5858,
"key": "ocean_custom_logo",
"value": null
},
{
"id": 5859,
"key": "ocean_custom_retina_logo",
"value": null
},
{
"id": 5860,
"key": "ocean_custom_logo_max_width",
"value": null
},
{
"id": 5861,
"key": "ocean_custom_logo_tablet_max_width",
"value": null
},
{
"id": 5862,
"key": "ocean_custom_logo_mobile_max_width",
"value": null
},
{
"id": 5863,
"key": "ocean_custom_logo_max_height",
"value": null
},
{
"id": 5864,
"key": "ocean_custom_logo_tablet_max_height",
"value": null
},
{
"id": 5865,
"key": "ocean_custom_logo_mobile_max_height",
"value": null
},
{
"id": 5866,
"key": "ocean_header_custom_menu",
"value": "0"
},
{
"id": 5867,
"key": "ocean_menu_typo_font_family",
"value": "0"
},
{
"id": 5868,
"key": "ocean_menu_typo_font_size",
"value": null
},
{
"id": 5869,
"key": "ocean_menu_typo_line_height",
"value": null
},
{
"id": 5870,
"key": "ocean_menu_typo_spacing",
"value": null
},
{
"id": 5871,
"key": "ocean_post_title_background",
"value": null
},
{
"id": 5872,
"key": "ocean_post_title_height",
"value": null
},
{
"id": 5873,
"key": "ocean_post_title_bg_overlay",
"value": "0.5"
},
{
"id": 5874,
"key": "ocean_custom_footer_template",
"value": "0"
},
{
"id": 5875,
"key": "osh_custom_sticky_logo",
"value": null
},
{
"id": 5876,
"key": "osh_custom_retina_sticky_logo",
"value": null
},
{
"id": 5877,
"key": "osh_custom_sticky_logo_height",
"value": null
},
{
"id": 5958,
"key": "_monsterinsights_sitenote_active",
"value": "0"
},
{
"id": 7899,
"key": "_wp_page_template",
"value": "default"
},
{
"id": 18769,
"key": "fb_brand",
"value": null
},
{
"id": 18770,
"key": "fb_product_group_id",
"value": "9720053731360671"
},
{
"id": 19499,
"key": "_wp_old_date",
"value": "2024-10-12T22:00:00.000Z"
}
],
"stockStatus": "instock",
"hasOptions": true,
"postPassword": null,
"globalUniqueId": null
}
]
Hope this is clearer and thanks a lot for your help !