Split xml file

HI
I would like to split this file to have one line per order tag. I tried this: in a function but it doesn’t work (I’m not comfortable with js yet)

const returnCde = [];
const orderLine  = $node["XML"].json["orders"]["order"];

for (const item of orderLine) {
    
    returnCde.push({json: item});  
}

return returnCde;
<orders>
<order>
<marketplace>CDiscount</marketplace>
<order_id>1703203</order_id>
<marketplace_id>Coreptest1</marketplace_id>
<total_amount_vat_excl>14.43</total_amount_vat_excl>
<total_amount_vat_incl>17.32</total_amount_vat_incl>
<order_date>2022-03-28 17:46:00</order_date>
<shipping_cost_vat_excl>0</shipping_cost_vat_excl>
<shipping_cost_vat_incl>0</shipping_cost_vat_incl>
<billing_address>
<lastname>SAMAH</lastname>
<firstname>BENYAMINE</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</billing_address>
<delivery_address>
<lastname>LUC</lastname>
<firstname>JEAN</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</delivery_address>
<order_line_items>
<order_line_item>
<order_line_item_id>2078579</order_line_item_id>
<sku>655238</sku>
<quantity>1</quantity>
<price_unit_vat_excl>14.43</price_unit_vat_excl>
<price_unit_vat_incl>17.32</price_unit_vat_incl>
</order_line_item>
</order_line_items>
</order>
<order>
<marketplace>CDiscount</marketplace>
<order_id>1703207</order_id>
<marketplace_id>Coreptest2</marketplace_id>
<total_amount_vat_excl>13.3</total_amount_vat_excl>
<total_amount_vat_incl>15.96</total_amount_vat_incl>
<order_date>2022-03-28 17:55:00</order_date>
<shipping_cost_vat_excl>0</shipping_cost_vat_excl>
<shipping_cost_vat_incl>0</shipping_cost_vat_incl>
<billing_address>
<lastname>SAMAH</lastname>
<firstname>BENYAMINE</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</billing_address>
<delivery_address>
<lastname>LUC</lastname>
<firstname>JEAN</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</delivery_address>
<order_line_items>
<order_line_item>
<order_line_item_id>2078584</order_line_item_id>
<sku>652999</sku>
<quantity>1</quantity>
<price_unit_vat_excl>13.3</price_unit_vat_excl>
<price_unit_vat_incl>15.96</price_unit_vat_incl>
</order_line_item>
</order_line_items>
</order>
<order>
<marketplace>CDiscount</marketplace>
<order_id>1703210</order_id>
<marketplace_id>Coreptest3</marketplace_id>
<total_amount_vat_excl>65.24</total_amount_vat_excl>
<total_amount_vat_incl>78.29</total_amount_vat_incl>
<order_date>2022-03-28 17:57:00</order_date>
<shipping_cost_vat_excl>0</shipping_cost_vat_excl>
<shipping_cost_vat_incl>0</shipping_cost_vat_incl>
<billing_address>
<lastname>SAMAH</lastname>
<firstname>BENYAMINE</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</billing_address>
<delivery_address>
<lastname>LUC</lastname>
<firstname>JEAN</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</delivery_address>
<order_line_items>
<order_line_item>
<order_line_item_id>2078587</order_line_item_id>
<sku>655298</sku>
<quantity>1</quantity>
<price_unit_vat_excl>51.94</price_unit_vat_excl>
<price_unit_vat_incl>62.33</price_unit_vat_incl>
</order_line_item>
<order_line_item>
<order_line_item_id>2078588</order_line_item_id>
<sku>652999</sku>
<quantity>1</quantity>
<price_unit_vat_excl>13.3</price_unit_vat_excl>
<price_unit_vat_incl>15.96</price_unit_vat_incl>
</order_line_item>
</order_line_items>
</order>
<order>
<marketplace>CDiscount</marketplace>
<order_id>1703220</order_id>
<marketplace_id>Coreptest4</marketplace_id>
<total_amount_vat_excl>48.81</total_amount_vat_excl>
<total_amount_vat_incl>58.57</total_amount_vat_incl>
<order_date>2022-03-28 18:01:00</order_date>
<shipping_cost_vat_excl>0</shipping_cost_vat_excl>
<shipping_cost_vat_incl>0</shipping_cost_vat_incl>
<billing_address>
<lastname>SAMAH</lastname>
<firstname>BENYAMINE</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</billing_address>
<delivery_address>
<lastname>LUC</lastname>
<firstname>JEAN</firstname>
<address>120 rue r&#233;aumur</address>
<address_2></address_2>
<address_complement/>
<zipcode>75002</zipcode>
<city>Paris</city>
<country_iso>FR</country_iso>
<mobile_line>06012233455</mobile_line>
<fixed_line>+33132659865</fixed_line>
<email>[email protected]</email>
</delivery_address>
<order_line_items>
<order_line_item>
<order_line_item_id>2078606</order_line_item_id>
<sku>652999</sku>
<quantity>1</quantity>
<price_unit_vat_excl>13.3</price_unit_vat_excl>
<price_unit_vat_incl>15.96</price_unit_vat_incl>
</order_line_item>
<order_line_item>
<order_line_item_id>2078605</order_line_item_id>
<sku>PR503818</sku>
<quantity>1</quantity>
<price_unit_vat_excl>35.51</price_unit_vat_excl>
<price_unit_vat_incl>42.61</price_unit_vat_incl>
</order_line_item>
</order_line_items>
</order>
</orders>

Thanks

Hey @fporta, if you simply want to split up the order items into individual n8n items, you could use the Item Lists node for the job:

This would do the job without any code:

Is this what you had in mind? If not, could you share the output you’d like to see?

@MutedJam
Thank you, in the end it was the solution I had found. I have a new problem, I have to split the order_line_items.order_line_item tag. I have tested with this same component but I can have by order 1 to n line

[
{
"marketplace": "CDiscount",
"order_id": "1703203",
"marketplace_id": "Coreptest1",
"total_amount_vat_excl": "14.43",
"total_amount_vat_incl": "17.32",
"order_date": "2022-03-28 17:46:00",
"shipping_cost_vat_excl": "0",
"shipping_cost_vat_incl": "0",
"billing_address": {
"lastname": "SAMAH",
"firstname": "BENYAMINE",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"delivery_address": {
"lastname": "LUC",
"firstname": "JEAN",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"order_line_items": {
"order_line_item": {
"order_line_item_id": "2078579",
"sku": "655238",
"quantity": "1",
"price_unit_vat_excl": "14.43",
"price_unit_vat_incl": "17.32"
}
}
},
{
"marketplace": "CDiscount",
"order_id": "1703207",
"marketplace_id": "Coreptest2",
"total_amount_vat_excl": "13.3",
"total_amount_vat_incl": "15.96",
"order_date": "2022-03-28 17:55:00",
"shipping_cost_vat_excl": "0",
"shipping_cost_vat_incl": "0",
"billing_address": {
"lastname": "SAMAH",
"firstname": "BENYAMINE",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"delivery_address": {
"lastname": "LUC",
"firstname": "JEAN",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"order_line_items": {
"order_line_item": {
"order_line_item_id": "2078584",
"sku": "652999",
"quantity": "1",
"price_unit_vat_excl": "13.3",
"price_unit_vat_incl": "15.96"
}
}
},
{
"marketplace": "CDiscount",
"order_id": "1703210",
"marketplace_id": "Coreptest3",
"total_amount_vat_excl": "65.24",
"total_amount_vat_incl": "78.29",
"order_date": "2022-03-28 17:57:00",
"shipping_cost_vat_excl": "0",
"shipping_cost_vat_incl": "0",
"billing_address": {
"lastname": "SAMAH",
"firstname": "BENYAMINE",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"delivery_address": {
"lastname": "LUC",
"firstname": "JEAN",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"order_line_items": {
"order_line_item": [
{
"order_line_item_id": "2078587",
"sku": "655298",
"quantity": "1",
"price_unit_vat_excl": "51.94",
"price_unit_vat_incl": "62.33"
},
{
"order_line_item_id": "2078588",
"sku": "652999",
"quantity": "1",
"price_unit_vat_excl": "13.3",
"price_unit_vat_incl": "15.96"
}
]
}
},
{
"marketplace": "CDiscount",
"order_id": "1703220",
"marketplace_id": "Coreptest4",
"total_amount_vat_excl": "48.81",
"total_amount_vat_incl": "58.57",
"order_date": "2022-03-28 18:01:00",
"shipping_cost_vat_excl": "0",
"shipping_cost_vat_incl": "0",
"billing_address": {
"lastname": "SAMAH",
"firstname": "BENYAMINE",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"delivery_address": {
"lastname": "LUC",
"firstname": "JEAN",
"address": "120 rue réaumur",
"address_2": "",
"address_complement": "",
"zipcode": "75002",
"city": "Paris",
"country_iso": "FR",
"mobile_line": "06012233455",
"fixed_line": "+33132659865",
"email": "[email protected]"
},
"order_line_items": {
"order_line_item": [
{
"order_line_item_id": "2078606",
"sku": "652999",
"quantity": "1",
"price_unit_vat_excl": "13.3",
"price_unit_vat_incl": "15.96"
},
{
"order_line_item_id": "2078605",
"sku": "PR503818",
"quantity": "1",
"price_unit_vat_excl": "35.51",
"price_unit_vat_incl": "42.61"
}
]
}
}
]

Thanks