xml_export_documentation:xml_format

xml_export_documentation:xml_format

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
xml_export_documentation:xml_format [2019/10/01 16:38]
lukas [usergroups]
xml_export_documentation:xml_format [2020/04/03 12:23]
pavel
Line 9: Line 9:
   * Unless you have an enterprise-contract the shop data will be imported by FINDOLOGIC automated daily at a fixed time between 01:00 CET and 06:00 CET.   * Unless you have an enterprise-contract the shop data will be imported by FINDOLOGIC automated daily at a fixed time between 01:00 CET and 06:00 CET.
  
-  * You can either write your own export ​script, provide a completely finished XML-file for the import, or use plugin provided by FINDOLOGIC.+  * Export ​script ​can be written with [[https://​github.com/​findologic/​libflexport/​wiki#​initializing-the-exporter-with-a-specific-type|FINDOLOGIC ​export library]] or by your own.
  
   * You can find a detailed description of all available tags in our XML-patterns below.   * You can find a detailed description of all available tags in our XML-patterns below.
Line 15: Line 15:
   * The latest XML scheme for validation can be found on Github: [[https://​github.com/​FINDOLOGIC/​xml-export/​blob/​master/​src/​main/​resources/​findologic.xsd|FINDOLOGIC XML-Schema]]. Check your XML against the scheme and see if your export XML is valid: [[https://​www.corefiling.com/​opensource/​schemaValidate.html]]   * The latest XML scheme for validation can be found on Github: [[https://​github.com/​FINDOLOGIC/​xml-export/​blob/​master/​src/​main/​resources/​findologic.xsd|FINDOLOGIC XML-Schema]]. Check your XML against the scheme and see if your export XML is valid: [[https://​www.corefiling.com/​opensource/​schemaValidate.html]]
  
-<​note>​The XML-export has to be provided ​as direct link to the XML-file ​in the customer login - if needed with login and password (HTML basic access authentication).</​note>​+<​note>​Link to the script-file that triggers ​XML-export has to be provided in the customer login - if needed with login and password (HTML basic access authentication).</​note>​
  
 <​note>​FINDOLOGIC supports all encodings. It just needs to get mentioned at the start of the XML e.g. ''<?​xml version="​1.0"​ encoding="​UTF-8"?>''​ </​note>​ <​note>​FINDOLOGIC supports all encodings. It just needs to get mentioned at the start of the XML e.g. ''<?​xml version="​1.0"​ encoding="​UTF-8"?>''​ </​note>​
Line 32: Line 32:
 ^ Item ^ Short Description ^ Tag required ^ Value required ^ Will be searched ^ ^ Item ^ Short Description ^ Tag required ^ Value required ^ Will be searched ^
 ^**''<?​xml version=“...” encoding=“...”?>''​**| Specifies the encoding ​ | Yes | Yes | No | ^**''<?​xml version=“...” encoding=“...”?>''​**| Specifies the encoding ​ | Yes | Yes | No |
-^**''<​[[#​item]] id="">''​**| Unique ​identification number ​ | Yes | Yes | No |+^**''<​[[#​item]] id="">''​**| Unique ​identifier ​ | Yes | Yes | No |
 ^**''<​[[#​ordernumbers]]>''​**| Article number or order number | Yes | No | Yes | ^**''<​[[#​ordernumbers]]>''​**| Article number or order number | Yes | No | Yes |
 ^**''<​[[#​names]]>''​**| Article name, as usually shown on the result page | Yes | Yes | Yes | ^**''<​[[#​names]]>''​**| Article name, as usually shown on the result page | Yes | Yes | Yes |
Line 38: Line 38:
 ^**''<​[[#​descriptions]]>''​**| Detailed article description | Yes | No | Yes | ^**''<​[[#​descriptions]]>''​**| Detailed article description | Yes | No | Yes |
 ^**''<​[[#​prices]]>''​**| Current article price including taxes | Yes | Yes | **filterable only** | ^**''<​[[#​prices]]>''​**| Current article price including taxes | Yes | Yes | **filterable only** |
-^**''<​[[#​urls]]>''​**| URL to the article page, must be absolute | Yes | No | No |+^**''<​[[#​urls]]>''​**| URL to the article page, must be absolute | Yes | Yes | No |
 ^**''<​[[#​images]]>''​**| URL to the article image, must be absolute. | Yes | No | No | ^**''<​[[#​images]]>''​**| URL to the article image, must be absolute. | Yes | No | No |
 ^**''<​[[#​keywords]]>''​**| Keywords linked to current article | Yes | No | Yes | ^**''<​[[#​keywords]]>''​**| Keywords linked to current article | Yes | No | Yes |
-^**''<​[[#​usergroups]]>''​**| Visibility of article, i.e. only visible to the exported usergroups. see [[xml_export_documentation:​xml_format#​Calculating the usergroup-hash|how to generate usergrouphashes]] ​| Yes | No | No |+^**''<​[[#​usergroups]]>''​**| Visibility of article, i.e. only visible to the exported usergroups | Yes | No | No |
 ^**''<​[[#​bonuses]]>''​**| Bonus value to rank certain articles higher than others | No | No | No | ^**''<​[[#​bonuses]]>''​**| Bonus value to rank certain articles higher than others | No | No | No |
 ^**''<​[[#​salesfrequencies]]>''​**| Amount of sold items of this article | Yes | No | No | ^**''<​[[#​salesfrequencies]]>''​**| Amount of sold items of this article | Yes | No | No |
Line 74: Line 74:
   * ''<​items>''​ gives information about the start-pointer (''​start''​),​ how many products are exported per step (''​count''​) and how many products exists in the shop in total (''​total''​). For more information see [[xml_export_documentation:​xml_request_and_response|Export]]   * ''<​items>''​ gives information about the start-pointer (''​start''​),​ how many products are exported per step (''​count''​) and how many products exists in the shop in total (''​total''​). For more information see [[xml_export_documentation:​xml_request_and_response|Export]]
   * ''<​items>''​ may contain 1+ ''<​item>''​-tags.   * ''<​items>''​ may contain 1+ ''<​item>''​-tags.
 +
 +<note important>​Due to runtime limitations the XML-export has to be [[https://​docs.findologic.com/​doku.php?​id=xml_export_documentation:​xml_request_and_response|paginated]].</​note>​
  
 <note tip>​**Using our export toolkit?** <note tip>​**Using our export toolkit?**
Line 253: Line 255:
   * ''<​images>''​ contains 1+ ''<​image>''​-tags.   * ''<​images>''​ contains 1+ ''<​image>''​-tags.
   * ''<​image>''​ contains an URL of an image.   * ''<​image>''​ contains an URL of an image.
-  * If there is no image for a product, the shop-specific "No Image Available" ​image has to be exported.+  * If there is no image for a product, the shop-specific "No Image Available" ​should ​be exported.
  
 <note tip>​**Using our export toolkit?** <note tip>​**Using our export toolkit?**
Line 304: Line 306:
   * ''<​usergroup>''​ contains 1+ ''<​usergroup>''​-tags.   * ''<​usergroup>''​ contains 1+ ''<​usergroup>''​-tags.
   * ''<​usergroup>''​ contains a usergroup to which the item is visible.   * ''<​usergroup>''​ contains a usergroup to which the item is visible.
-  * ''<​usergroup>''​ the usergroup used as a parameter in the FINDOLOGIC-Snippet has to have the exact same wording as the usergroup that is used in the datafeed.+  * ''<​usergroup>''​ the usergroup used as a third parameter in the FINDOLOGIC-Snippet ​(after shopkey) ​has to have the exact same wording as the usergroup that is used in the data feed.
  
 === Using usergroups to set the visibility of items === === Using usergroups to set the visibility of items ===
Line 332: Line 334:
 === Recommendation === === Recommendation ===
   * In case of more than 128 ''<​usergroups>'',​ please contact [[mailto:​support@findologic.com|support@findologic.com]],​ in order to adjust default settings.   * In case of more than 128 ''<​usergroups>'',​ please contact [[mailto:​support@findologic.com|support@findologic.com]],​ in order to adjust default settings.
-  * The value in the CDATA-block of the ''<​usergroup>''​-tag will be encoded as described below to prevent a manipulation of the search-requests ​(e.g. R-rating)+  * To avoid potential misunderstandings,​ preferably use alphanumeric values for usergroups ​(e.g. ''​18plus'',​ ''​B2B''​).
  
  
Line 339: Line 340:
  
 Creating an ''<​usergroup>''​ element with [[https://​github.com/​findologic/​libflexport/​wiki#​usergroup|libflexport]].</​note>​ Creating an ''<​usergroup>''​ element with [[https://​github.com/​findologic/​libflexport/​wiki#​usergroup|libflexport]].</​note>​
- 
- 
-=== Calculating the usergroup-hash === 
- 
-The usergroup-hash is composed of two components: 
- 
-  * the shopkey (e.g. ''​A6039131315BE9F868E358D5AC784405''​) 
-  * The combined usergroups (z.B. '​at_ratedR'​) 
- 
-These components are put together with ''​xor''​ and base64 and thus can be decoded. 
- 
-=== Example: === 
-  
-<code php> 
-$shopkey = '​A6039131315BE9F868E358D5AC784405';​ 
-$usergroup = '​at_ratedR';​ 
-$hash = base64_encode($shopkey ^ $usergroup);​ // = '​IEJvQVhFVlVh'​ 
- 
-$usergroup_decoded = ($shopkey ^ base64_decode($hash));​ // = '​at_ratedR';​ 
-</​code>​ 
- 
----- 
- 
 ==== bonuses ==== ==== bonuses ====