MIS Export Module
Technote on how to integrate Apogee StoreFront or Asanti StoreFront with an MIS or ERP system
Being able to automatically exchange order information between a web-to-print solution and an MIS system, billing application or reporting tool is essential for handling a high daily volume of orders. Automation eliminates double data entry and costly typos. There are a number of ways in which this type of data exchange can be achieved in the Apogee StoreFront and Asanti StoreFront e-commerce platforms of Agfa. This page describes the MIS Export module, which is one of the integration options that are available to StoreFront customers.
The MIS Export module generates a customized XML, TXT or HTML data file for each new order item. It exports this file to a folder on the network of the print service provider where the third party application can pick it up to import the data. The module is part of the JDF importer of Apogee Prepress (version 8 and later) and Asanti Production (version 2 and later), so it is the prepress workflow that exports all of the order data coming from StoreFront.
How it works
- A customer places a new order in a web shop.
- For each order item StoreFront automatically generates a so-called Intent JDF file that contains all of the administrative data.
- At regular intervals the Apogee or Asanti workflow connects to StoreFront and downloads the Intent JDF files for all the new order items. Each order item is processed separately.
- The MIS Export module extracts variables from the downloaded Intent JDF and inserts them into a target data file that it generates.
The target data file is exported to a hotfolder, where the MIS, billing or reporting tool can pick it up for processing. This system is responsible for deleting any files that have already been processed. - Once its work is done, the MIS Export module passes the unchanged Intent JDF file on to the JDF Server of Apogee Prepress or Asanti Production.
- This JDF Server analyzes the Intent JDF file to determine if the job needs to be printed or not. If the order item is a non-print product or one that will be delivered from stock, the Intent JDF is discarded. If it is an order item that needs to be processed by the workflow, a new prepress job is generated based on the target job ticket template.
Getting started
The MIS Export module is a chargeable option which requires a separate license. Please contact your Agfa sales representative or dealer for pricing information. If you are interested in deploying the MIS Export module, please provide them with the following information:
- The name of the MIS solution or other application that will process the exported data.
- One or more sample data files that this solution can import. These are needed by the StoreFront team to analyze the integration and write a transformation stylesheet for the MIS Export module.
- Ideally a document is provided that describes all of the data variables of the target file and their expected syntax, as well as listing which ones are mandatory and which ones are optional.
Based on the supplied data, the StoreFront team will analyze how to map StoreFront data to the target data file. If not all of the required data are available, the team will examine if an update of StoreFront can address your needs.
- If the mapping is straightforward, the StoreFront team will create the required transformation stylesheet and the standard price for the MIS Export module applies.
- If complex data transformations need to be configured and tested, the StoreFront team will provide an estimate for the additional cost.
The StoreFront team will provide sample data files for the print service provider to validate. Upon approval a service engineer can configure and activate the MIS Export module. Â The screen capture below shows the setup. Once configured the MIS Export module requires no additional operator intervention.
Specifications
- A data file is generated for each order item, including non-print products and stock print products. The MIS Export module doesn’t do any processing or exporting of the print-ready data – it only deals with the order related administrative data.
- For each order item a separate data file is generated, with the filename matching the order item ID number. The MIS Export module does not aggregate order items.
- The data file can be an XML, TXT or HTML file. The MIS Export does not export PDF content data (but Apogee Prepress and Asanti Production can be configured to do this if needed).
- A configurable stylesheet defines how the data from the Intent JDF are mapped to the data file. The Microsoft XSL engine is used for this.
- The data file can obviously only contain data that are present in the Intent JDF generated by StoreFront. The list below gives a general overview of the variables that are available:
- Order item data: order ID, descriptive name, product type (e.g. upload), SKU
- Print buyer data: name, company, address, contact details
- Billing data: price, currency, shipping cost, billing name, billing address
- Shipping data: delivery method, delivery address
- Order processing data: requested quantity, number of pages, product part(s), media type, binding order, width & height, number of colors
- The data file is stored on the local network in a folder for which the path is configurable.
- The MIS Export module requires an Apogee Prepress (version 8 or later) or Asanti Production (version 2 or later) workflow that is configured to download StoreFront orders.
Variables
Below is a list of the available variables for StoreFront v5.0.
Variable | Type | Content |
---|---|---|
JDFJobID | Char | Order ID number Example: 31396 |
SFOrderIDItem | Char | Order item ID number Example: 31396-001 |
JDFDescriptiveName | Char | Order item ID number and descriptive name Example: 31396-001 Business cards |
SFSKU | Char | SKU number |
SFMISTemplate | Char | MIS template ID specified for the product template |
SFJobTemplate | Char | MIS ID specified for the product template |
JDFCompAmount | Number | Quantity ordered |
SFCreationDateTime | Char | Date and time when the order was created Example: 2013-10-29T13:45:07.149+01:00 |
ArtworkDate_DD-MM-YY | Char | Date when the order was created Example: 23-02-14 |
SFCustomerOrderID | Char | Custom order ID provided by the shopper |
UserComment | Char | Comment the shopper may have added to the item in the shopping cart |
JDFJobComment | Char | Full order description in a single long paragraph |
Variable | Type | Content |
---|---|---|
JDFPricingPrice | Real | Total price of the entire order |
JDFPricingItemTotalCost | Real | Total price of the order item |
JDFPricingShippingCost | Real | Shipping cost of the overall order (not limited to this item) |
JDFPricingCurrency | Char | Currency used in the store Example: EUR |
SFOrderTotalItems | Integer | Total number of items in the order |
SFStoreName | Char | Name of the store in which the order was generated |
JDFAccountingCompany | Char | Company that the order should be billed to |
JDFAccountingCompanyID | Char | ID number |
JDFAccountingAddressStreet | Char | Street & Number |
JDFAccountingAddressPostalCode | Char | Postal code |
JDFAccountingAddressCity | Char | City |
JDFAccountingAddressCountry | Char | Country |
JDFAccountingPersFirstName | Char | First name of contact person |
JDFAccountingPersLastName | Char | Last name of contact person |
JDFAccountingPersPhoneFix | Char | Fixed phone number of contact person |
JDFAccountingPersPhoneMobile | Char | Mobile phone number of contact person (not yet implemented) |
JDFAccountingPersEmail | Char | E-mail address of contact person |
Variable | Type | Content |
---|---|---|
JDFCustCompany | Char | Company that placed the order |
JDFCustCompanyID | Char | ID number |
JDFCustAddressStreet | Char | Street & Number |
JDFCustAddressStreetName | Char | Street |
JDFCustAddressStreetNumber | Char | Street number |
JDFCustAddressPostalCode | Char | Postal code |
JDFCustAddressCity | Char | City |
JDFCustAddressCountry | Char | Country |
JDFCustPersFirstName | Char | First name of contact person |
JDFCustPersLastName | Char | Last name of contact person |
JDFCustPersName | Char | Full name of contact person |
JDFCustPersPhoneFix | Char | Fixed phone number of contact person |
JDFCustPersPhoneMobile | Char | Mobile phone number of contact person (not yet implemented) |
JDFCustPersEmail | Char | E-mail address of contact person |
Variable | Type | Content |
---|---|---|
JDFDeliveryMethod | Char | Shipping service Example: DHL |
JDFDeliveryCompany | Char | The company that should receive the delivery |
JDFDeliveryCompanyID | Char | ID number |
JDFDeliveryAddressStreet | Char | Street & Number |
JDFDeliveryAddressStreetName | Char | Street |
JDFDeliveryAddressStreetNumber | Char | Street number |
JDFDeliveryAddressPostalCode | Char | Postal code |
JDFDeliveryAddressCity | Char | City |
JDFDeliveryAddressCountry | Char | Country Example: GB |
JDFDeliveryPersFirstName | Char | First name of the person that should receive the delivery |
JDFDeliveryPersLastName | Char | Last name of the person that should receive the delivery |
JDFDeliveryPersName | Char | Full name of the person that should receive the delivery |
JDFDeliveryPersPhoneFix | Char | Fixed phone number of the person that should receive the delivery |
JDFDeliveryPersPhoneMobile | Char | Mobile phone number of the person that should receive the delivery (not yet implemented) |
JDFDeliveryPersEmail | Char | E-mail address of the person that should receive the delivery |
Variable | Type | Content |
---|---|---|
PagesCover | Integer | Number of pages for the cover |
PagesBody | Integer | Number of pages for the body |
JDFPageCount1 | Integer | Number of pages (e.g. 2 in case of a business card printed double sided) |
JDFPartProductType1 | Char | Body or Cover |
ModelHeight | Real | Height of the pages Example: 297 |
ModelWidth | Real | Width of the pages Example: 210 |
JDFBindingOrder | Char | How the pages will be bound, ‘None’ if no binding is needed |
PaperCover | Char | Paper type used for the cover |
PaperBody | Char | Paper type used for the body |
JDFMediaType1 | Char | The substrate that is printed on Example: Paper |
JDFMediaBrand1 | Char | Brand |
JDFMediaWeight1 | Integer | Weight of the substrate, specified in gsm Example: 400 |
JDFMediaThickness1 | Char | Thickness of the substrate |
JDFMediaGrade1 | Char | Grade |
ColorFrontCover | Char | Colors used to print the front of the cover |
ColorFrontBody | Char | Colors used to print the front of the body |
ColorBackCover | Char | Colors used to print the back of the cover |
ColorBackBody | Char | Colors used to print the back of the cover |
AgfaTicketTemplate | Char | Job ticket template defined for the product template Example: SF_BusinessCards_Impo_iGen |
SFOrderIDItemType | List | Type of product: Editable, Uploadable, Nonprint,… |
SFVersion | Char | Version of StoreFront software used to generate the order Example: 1.0.0-sprint-29.3 |
Special cases
If a store is configured for charging shipping costs, the full shipping cost for the entire order is by default added as an extra field to the exported data file for each separate order item. Optionally it is possible to export the shipping cost as a separate item. This means that the MIS Export option can export five XML files for an order of four items with the fifth XML file containing the shipping costs.
Orders for kit products can also be handled by the MIS Export option: separate files are created for the kit and all of the kit items. For a kit product that contains four items the Export module will generate five files. If the kit price is based on that of its items, the exported file for the kit itself specifies the price difference.
Product discounts are processed automatically: it is the final price that gets exported by the MIS Export module. For an item that costs 100 euros or dollar and is sold at a 10% discount, the exported XML-file will include a sales price of 90 euros or dollar.
Promo codes are treated similarly to shipping costs: either the discount information is included in the exported file for each order item or the MIS Export module can be configured to generate an additional XML-file that specifies the discount that was applied to the order.
For items that contain over 100 variations, such as a poster for which the customer uploads a PDF file containing 150 different versions that all have a different address on them, StoreFront may split the item into separate items that each contain up to 100 variations. This is done to correctly process the order in Apogee or Asanti. The splitting is also applied for VDP orders. For such split items the MIS Export module exports duplicate XML files, one for each split order item. It is up to the MIS system or the person managing orders to discard the duplicate data.
Sample data
A set of sample files can be downloaded here.