För butikspartners som vill integrera sitt produktsortiment med Tifo. Här är en komplett teknisk guide för att skapa och underhålla en produktfeed.
Vad är en produktfeed?
En produktfeed är en fil (vanligtvis XML eller CSV) som innehåller all information om era produkter:
- Produktnamn och beskrivningar
- Priser och lagerstatus
- Bilder och produktlänkar
- Specifikationer och kategorier
Vi hämtar denna fil automatiskt var 4:e timme för att hålla priserna uppdaterade.
Feedformat: XML (rekommenderat)
Grundstruktur
<?xml version="1.0" encoding="UTF-8"?>
<products>
<product>
<id>unique-product-id</id>
<name>Produktnamn</name>
<description>Produktbeskrivning</description>
<price>9995.00</price>
<currency>SEK</currency>
<url>https://dinbutik.se/produkt-url</url>
<image_url>https://dinbutik.se/images/produkt.jpg</image_url>
<category>Mobiler</category>
<brand>Samsung</brand>
<in_stock>true</in_stock>
<ean>7350123456789</ean>
<condition>new</condition>
<shipping_cost>49.00</shipping_cost>
<specifications>
<spec name="RAM">8 GB</spec>
<spec name="Lagring">256 GB</spec>
<spec name="Skärmstorlek">6.1 tum</spec>
</specifications>
</product>
<!-- Fler produkter... -->
</products>
Obligatoriska fält
| Fält | Format | Exempel | Beskrivning |
|---|---|---|---|
| id | Sträng (unik) | "SKU-12345" | Er interna produkt-ID |
| name | Sträng (max 200 tecken) | "iPhone 15 Pro 256GB Svart" | Produktnamn |
| price | Decimal | 12995.00 | Pris (inkl. moms, exkl. frakt) |
| currency | ISO 4217 | "SEK" | Valuta (alltid SEK för Sverige) |
| url | URL | "https://..." | Länk till produkten hos er |
| image_url | URL | "https://..." | Huvudbild (minst 800×800 px) |
| category | Sträng | "Mobiler" | Produktkategori |
| in_stock | Boolean | true / false | Tillgänglighet |
Rekommenderade fält
| Fält | Format | Varför viktigt |
|---|---|---|
| ean | 13 siffror | Hjälper oss matcha produkter från olika butiker |
| brand | Sträng | Filterbarhet och sökbarhet |
| description | Text (max 1000 tecken) | Visas på produktsidan |
| shipping_cost | Decimal | För korrekt totalpris-jämförelse |
| condition | new, refurbished, used | Viktig för begagnade produkter |
| model_number | Sträng | Ex: "MQ0G3KS/A" för Apple-produkter |
Frivilliga fält (berikar datan)
Specifikationer (produktspecifika)
För mobiler:
<specifications>
<spec name="RAM">8 GB</spec>
<spec name="Lagring">256 GB</spec>
<spec name="Skärmstorlek">6.1 tum</spec>
<spec name="Kamera">48 MP</spec>
<spec name="Batteri">3274 mAh</spec>
<spec name="5G">true</spec>
<spec name="Färg">Svart</spec>
</specifications>
För laptops:
<specifications>
<spec name="Processor">Intel Core i7-1255U</spec>
<spec name="RAM">16 GB</spec>
<spec name="Lagring">512 GB SSD</spec>
<spec name="Skärmstorlek">14 tum</spec>
<spec name="Grafikkort">Intel Iris Xe</spec>
<spec name="Vikt">1.4 kg</spec>
</specifications>
För TV:
<specifications>
<spec name="Skärmstorlek">55 tum</spec>
<spec name="Upplösning">4K</spec>
<spec name="Paneltyp">OLED</spec>
<spec name="HDR">Dolby Vision, HDR10</spec>
<spec name="Smart TV">webOS</spec>
<spec name="HDMI">4× HDMI 2.1</spec>
</specifications>
Flera bilder
<images>
<image>https://dinbutik.se/images/produkt-1.jpg</image>
<image>https://dinbutik.se/images/produkt-2.jpg</image>
<image>https://dinbutik.se/images/produkt-3.jpg</image>
</images>
Kampanjer
<sale_price>8995.00</sale_price>
<sale_start>2025-11-20T00:00:00Z</sale_start>
<sale_end>2025-11-30T23:59:59Z</sale_end>
Alternativ: CSV-format
Om XML känns komplext kan ni använda CSV:
Exempel CSV-struktur:
id,name,price,currency,url,image_url,category,brand,in_stock,ean,description
SKU-001,"iPhone 15 Pro 256GB",12995,SEK,https://...,https://...,Mobiler,Apple,true,0194253777489,"Beskrivning här"
SKU-002,"Samsung Galaxy S24",9995,SEK,https://...,https://...,Mobiler,Samsung,true,8806095111111,"Beskrivning här"
Viktig regel för CSV:
- UTF-8 encoding (för svenska tecken: å, ä, ö)
- Komma (,) som separator
- Citationstecken (") runt text med kommatecken
Feed-hosting: Var lägger jag filen?
Alternativ 1: Publik URL (rekommenderat)
Placera filen på er server:
https://dinbutik.se/feeds/pristifo.xmlhttps://dinbutik.se/feeds/pristifo.csv
Viktigt:
- ✅ Filen måste vara publik (ingen inloggning krävs)
- ✅ HTTPS rekommenderas starkt
- ✅ Filen får vara max 100 MB (komprimera om större)
Alternativ 2: SFTP/FTP
Vi kan hämta filen via SFTP om den inte kan vara publik.
Kontakta oss för credentials:
- E-post: partners@PrisTifo.se
- Inkludera: Filnamn, uppdateringsfrekvens
Alternativ 3: API-push
För större butiker erbjuder vi API där ni pushar produktdata till oss.
Dokumentation: Tifo Partner API
Uppdateringsfrekvens
Hur ofta ska ni uppdatera feeden?
| Typ av butik | Rekommenderad frekvens |
|---|---|
| Små butiker (< 500 produkter) | 1× per dag (t.ex. kl 06:00) |
| Medelstora (500-5000) | 2× per dag (06:00 + 18:00) |
| Stora (> 5000) | 4× per dag (06:00, 12:00, 18:00, 00:00) |
Vi hämtar: Automatiskt var 4:e timme från den URL ni angett.
Dynamiska priser? Om era priser ändras ofta (dynamic pricing), kontakta oss för realtids-API.
Validering: Testa din feed
Innan du skickar feeden till oss:
-
Kontrollera XML-syntax:
- Använd verktyg: xmlvalidation.com
- Eller: Öppna filen i webbläsare (Chrome/Firefox visar syntaxfel)
-
Kolla att alla obligatoriska fält finns:
# Exempel: Räkna produkter i XML grep -c "<product>" tifo.xml -
Verifiera URL:ar:
- Alla
urlochimage_urlmåste vara giltiga länkar - Testa några slumpmässigt i webbläsaren
- Alla
-
Prisformat:
- Använd punkt (.) som decimaltecken, inte komma
- ✅ Korrekt:
9995.00 - ❌ Fel:
9995,00eller9 995 kr
Efter integration: Vad händer?
Dag 1: Import och granskning
- Vi hämtar feeden
- Automatisk validering körs
- Manuell kvalitetsgranskning (bilder, priser, kategorier)
Dag 2-3: Publicering
- Produkterna blir synliga på PrisTifo.se
- Ni får tillgång till butikspanelen
Löpande: Automatisk synk
- Priser uppdateras var 4:e timme
- Nya produkter läggs till automatiskt
- Borttagna produkter (ej i feed) arkiveras
Vanliga fel och lösningar
❌ Fel 1: "Invalid XML syntax"
Orsak: Tecken som &, <, > i texten
Lösning: Använd CDATA eller escape:
<description><![CDATA[Text med & och <special> tecken]]></description>
❌ Fel 2: "Missing required field: ean"
Orsak: EAN är tomt för många produkter
Lösning: Om ni inte har EAN, använd ert interna ID istället (vi försöker matcha ändå)
❌ Fel 3: "Image URL returns 404"
Orsak: Bild-URL:en fungerar inte
Lösning: Kontrollera att alla bilder är tillgängliga och HTTPS
❌ Fel 4: "Price format invalid"
Orsak: Komma istället för punkt, eller valuta inkluderad (9995 kr)
Lösning: Använd bara siffror och punkt: 9995.00
Support för feed-integration
Teknisk support:
- E-post: partners@PrisTifo.se
- Slack: Vi skapar en dedikerad kanal för er (större partners)
- Telefon: 0721278366 (vardagar 9-17)
Onboarding-hjälp: Vi hjälper gärna till med:
- Feed-struktur och validering
- Mapping av kategorier
- Testning innan go-live
SLA: Svar inom 4 timmar på vardagar.
Checklist innan lansering
- Feed-fil skapad (XML eller CSV)
- Alla obligatoriska fält finns
- URL:ar testade och fungerar
- Bilder minst 800×800 px
- Prisformat korrekt (punkt som decimaltecken)
- Feed uploadad till publik URL eller SFTP
- Validering genomförd (XML-syntax, URL:ar)
- Partneransökan skickad till Tifo
