XML integration

XML integration - import information to tFlow with Automation Hub.

General information

Automation Hub supports two basic scenarios for XML integration.

External FTP server


The FTP server will be placed on customer’s computer.
Automation Hub access external ftp by schedule, download xml files and artworks and generates processes for each file.

Automation Hub needs read and write access to ftp folder.

 

Local FTP server

In this case we provide to customer login/password to our ftp server (on AH server)
Artwork must be uploaded before xml ticket, otherwise we can't guarantee that we process correct file.

XML Fields description

General information

<Name>

Required element that represents order number

<Description>

Optional element that represents order description

<CreationDate>

Required element that represents order creation date

<RepName>

Optional element that represents order REP Name

<RepEmail>

Optional element that used to identify REP user.

<PMName>

Optional element that represents order PMName

<PMEmail>

Optional element that used to identify PM user.

<Attributes>

    
List of additional option information related to order:

            <WorkflowName>: User defined name for assigned workflow

            <WorkflowID>: System internal value for assigned workflow

 

<Contacts>

List of Users which will be assigned to order. If user is not exists in system, it will be created under Customer’s company and assigned to the order. User will be created with default password “changeme”. Each entry contains contact information:

    <FirstName>: Required element that represents user first name

    <LastName>: Required element that represents user last name

    <Email>: Required element that represents user email


Here is an example of contacts structure:
 

<Contacts>
  <Contact>
     <FirstName>George</FirstName>
     <LastName>Washington</LastName>
     <Email>someemail@company.com</Email>
  </Contact>
  <Contact>
     <FirstName>Abraham</FirstName>
     <LastName>Lincoln</LastName>
     <Email>anotheremail@company.com</Email>
  </Contact>
</Contacts>

<Customer>

Required element that represents company and user which created the order

<Type>

Optional element that represents type of customer. Possible values:

        B2C - For each user Automation Hub will create it’s own company. Element <Company> is optional

        B2B - Element <Company> required, Automation Hub will create a company with such name and assign users related to current order (and all next orders) to that company

    <Company>

Required for B2B/optional for B2C element that represents company name

 

    <LastName>

Required element if user is not exists in tFlow. Used for User’s Last name.

    <FirstName>

Required element if user is not exists in tFlow. Used for User’s First name.

    <Email>

Required element which is used to identify “Created By” user. If user with such email is not exists, Automation Hub will create it

 

<OrderLines>

Order could consist of one or more order lines. Each order line is mapped to order item in tFlow.

<LineNum>

Required element that represents order line seq number

<Name>

Optional element that represents order item name. If blank, Automation Hub will generate name by pattern {Order name}-{OrderLine.LineNum}

<Description>

Optional element that represents order item description

<RequiredDate>

Optional/Required (depends on tFlow system settings) element that represents Ship Date

<Quantity>

Required element that represents job quantity

<Jobs>

Each order line could consists of one or more jobs. Each job in XML mapped to job in tFlow.

<Name>

Optional element that represents job name. If blank, Automation Hub will take name from order line level

<Description>

Optional element that represents job description

<Notes>

Optional element that represents job notes

<RepName>

Optional element that represents job REP Name. If blank, Automation Hub will take value from order level

<PMName>

Optional element that represents job PMName. If blank, Automation Hub will take value from order level

<ProductName>

Required element that represents tFlow product assigned to the job

<ArtworkName>

Optional element that represents artwork name. If blank, Automation Hub will search artwork on FTP server with name equal to xml ticket file name and extension “pdf”.

<ArtworkURL>

Optional element that represents link to artwork. If blank, Automation Hub will search artwork on FTP server with name equal to xml ticket file name and extension “pdf”. Artwork file will be deleted after successful import to destination system.

    <Attributes>

Optional element that represents list of custom variables which could be assigned to the job. Full list of variables is here: http://support.aleyant.com/kb/a1344/tflow-documentation-07a_-variables.aspx
 

Here is an example of attributes structure:
 

<Attributes>
  <Attribute>
     <tfall_job_print_width>800</tfall_job_print_width>
     <tfall_job_print_height>200</tfall_job_print_height>
     <tffin_bleed_method>Bleed generation method</tffin_bleed_method>
     <tffin_bleed_allsides>Bleed size (at full scale)</tffin_bleed_allsides>
  </Attribute>
</Attributes>

XML example

Here is an example of xml ticket:

<?xml version="1.0" encoding="UTF-8"?>
<Order>
  <Name>SO-123</Name>
  <Description>Test order</Description>
  <CreationDate>02/09/2018</CreationDate>
  <Attributes>
     <Attribute>
        <WorkflowName>One-step approval</WorkflowName>
     </Attribute>
  </Attributes>

  <Customer>
     <Company>Google</Company>
     <FirstName>John</FirstName>
     <LastName>Smith</LastName>
     <Email>j.smith@google.com</Email>
  </Customer>
  <OrderLines>
     <OrderLine>
        <LineNum>1</LineNum>
        <Name>Banner</Name>
        <Description>My first banner</Description>
        <RequiredDate>09/27/2020</RequiredDate>
        <Quantity>1</Quantity>
        <Jobs>
           <Job>
              <ProductName>Banner</ProductName>
              <ArtworkName>Banner.pdf</ArtworkName>
              <ArtworkURL>http://uploads.google.com/banner.pdf</ArtworkURL>
              <Attributes>
                 <Attribute>
                    <print_width>800</print_width>
                    <print_height>200</print_height>
                    <tffin_bleed_method>Bleed generation method</tffin_bleed_method>
                    <tffin_bleed_allsides>12</tffin_bleed_allsides>
                 </Attribute>
              </Attributes>
           </Job>
        </Jobs>
     </OrderLine>
  </OrderLines>
</Order>