• Integration - EPS PrintSmith Vision via Embedded Services

Order Data Integration

The purpose of this document is to outline the structural requirements to successfully transfer order and customer information from Aleyant Pressero to a given instance of EPS PrintSmith Vision. This is a one-way integration as EPS PrintSmith does not push status update to Pressero.  

Integration Foundation

  • This integration will facilitate communication between the two platforms.

  • Pressero retrieves order information and generates Invoice, Items, Contacts and Shipment entries in EPS PrintSmith system.

  • In the event of a network error, Pressero automatically retries the last synchronization action.

Integration Features

  • All critical customer and order data are transferred to EPS PrintSmith via API.

  • Orders will honor any approval plans in Pressero; any items of an order with Request Denied will not be included in the order in EPS PrintSmith.

  • Each order line item will include shipping information. This is submitted to PrintSmith and a delivery ticket is generated for each line item.

  • All order item information and production files (if available) will transfer to EPS PrintSmith; files are added to each job as Digital Assets. For each line item a job is created to match each line item of the Pressero order. 

Integration Requirements

  • A separate API license for PrintSmith is required. This can be purchased from EPS PrintSmith.  The eCommerce API license type must be purchased.  You may not use an API license from EPS that is for another integration.
  • A stable, consistent internet connection will improve order speed and reduce order errors.
  • The PrintSmith Vision host computer must have a static IP address.
  • The PrintSmith Vision application must have a public URL address to allow external access and communications with Pressero.
  • A Job Template in PrintSmith is required to match each product in Pressero. This template should have all production notes and associated charges. The template name is inserted in the product integration ID in Pressero and passed to PrintSmith Vision to tie the orders together. Orders with line items that do not have a corresponding template in PrintSmith will fail and error notification will be generated.
  • Kits consist of a parent item containing child products with individual item totals (quantity and cost)
    • Child items in a kit will show up as individual parts in the EPS PrintSmith order
    • Child items in a kit (static and/or inventory items) will list the associated quantity and cost
    • Child items in a kit with a quantity of zero will not be entered into the order in EPS PrintSmith

Enable Integration for Site

  • Go to Site > Embedded Services > Enable Integration

  • Select "Enable Service Integration"
 

General Workflow

Integration Parameters

  • Server URL: The URL for EPS PrintSmith instance (for example: http://PrintSmithinstance.com). Only root domain name needed
  • Key: the API key which will be used for authorization in EPS PrintSmith API
  • Email for alerts: list of email addresses, separated by ‘;’ which will be used for notifications and errors
  • Default Contact: default value for “Contact ID”; this value will be used if Pressero cannot identify customer

Customer Mapping Details

Customer Identification scenario:
  • If Pressero Store Front “Integration ID” is not empty, then this value is used for “Account ID” in EPS PrintSmith.
  • Pressero checks “Account ID” in list of EPS PrintSmith’s accounts.
  • If “Account ID” is not valid (not found in external system or inactive):
    • specified value will be ignored
    • notify user/users specified in parameter “Email for alerts” about invalid “Customer ID” in settings
  • If “Account ID” is empty, then Pressero tries to identify customer with contact information:
  • tries to identify contact by email EPS PrintSmith
  • if contact is found and it is unique, then extract “Account ID”
  • if several contacts found, then check that all of them match to the same customer.
  • if all contacts relate to the same customer, then extract “Account ID”
  • if contacts relate to different customers, then raise error and notify user/users specified in Parameter “Email for alerts” that customer could not be identified
  • if no contacts are found, then create new customer and contact (check Customer and Contact Mapping section below)
  • Identify contacts for each unique shipment location:
  • Key contain: email, all mapped address segments and shipping method
  • If contact is not found, then create new contact (check customer and contact mapping section below)
  • If contact cannot be created and parameter “Default Contact” is not null, then this value is used for “Contact ID” in EPS PrintSmith.
  • Customer and contact mapping details:
     
EPS PrintSmith field name
Source value
Customer Type
Constant: customer
Name
Pressero’s Site User > Address Book > Business. If Empty, then Pressero’s Site User > First Name + Middle Name + Last Name
Contact First Name
Pressero’s Site User > First Name
Contact Last Name
Pressero’s Site User > Last Name
Email
Pressero’s Site User > Email
Phone
Pressero’s Site User > Telephone or Pressero’s Site User > Cell Phone
Contact type
Two types, both constant: invoice and statement
Set default type
For contact with type = “invoice”, set “default” flag to true
Address type
Two types, both constant: invoice and statement
Address1
Pressero’s Site User > Address Book > Address1
Address2
Pressero’s Site User > Address Book > Address2
City
Pressero’s Site User > Address Book > City
State
Pressero’s Site User > Address Book > State
Zip
Pressero’s Site User > Address Book > Zip
External reference number
Pressero’s Site User > Id
 

Invoice Mapping Details

PrintSmith field name
Source value
Account/Contact
Value from step 3
Web reference number
Pressero’s Order Number
Status
Constant: new_invoice
Job Required by
Pressero’s Requested Ship Date. If empty, Constant: current date + 3 days
Invoice Required by
Pressero’s Requested Ship Date. If empty, Constant: current date + 3 days
Wanted By date
Pressero’s Requested Ship Date. If empty, Constant: current date + 3 days
Invoice date
Constant: Current date
Include account charges
Constant: false
User
Constant: admin
Taken By
Constant: WSF
Sales Rep
Empty
Special Instructions
Pressero’s Order + Order Notes
Ship price
Pressero’s Order ship cost
Ship Via
Pressero’s first order item shipment method
Document title
"WSF-" + Pressero’s Order 
PO Number
Pressero’s PO #
Web comments
Order Notes
Balance
Pressero’s Order total cost - Pressero’s Order ship cost
Price
Pressero’s Order total cost - Pressero’s Order ship cost - Pressero’s Order tax cost
Contact information
Contact First Name
Pressero’s Site User > First Name
Contact Last Name
Pressero’s Site User > Last Name
Email
Pressero’s Site User > Email
Phone
Pressero’s Site User > Telephone or Pressero’s Site User > Cell Phone
Shipping address
Company
Pressero’s Site User > Address Book > Business or First Name + Last Name
Address1
Pressero’s Site User > Address Book > Address1
Address2
Pressero’s Site User > Address Book > Address2
City
Pressero’s Site User > Address Book > City
State
Pressero’s Site User > Address Book > State
Zip
Pressero’s Site User > Address Book > Zip
Items (Order items split by uploaded production files)
Index
Pressero’s Order Item Seq
Template
Pressero’s Product > Integration ID
Description
Pressero’s Order Item number
Digital asset URL
URL for Pressero’s production file (https protocol is not supported)
Comment
Pressero’s Order Item notes (Value truncated to 255 symbols)
Quantity
Pressero’s Order Quantity
Price
Pressero’s Order Price
Web worksheets
List of values (one entry for each line):
- Pressero’s Order Notes
- Pressero’s Order Item Item Number + " - " + Pressero’s Order Item ShipMethod
- Pricing options
- If order item description size is more than 255 symbols, add warning: Job comment was truncated for job # {Order item Seq}
Deposits
Type
Constant: 3 (credit card)
Reference
Pressero’s Order Payment Info (Split by ‘=’ and take second part)
Amount
Pressero’s Order Payment Info Amount
Deposit number
Pressero’s Order Payment Seq # + 1
Delivery tickets
Company
Pressero’s Order item shipment address > Business or First Name + Last Name
Address1
Pressero’s Order item shipment address > Address1
Address2
Pressero’s Order item shipment address > Address2
City
Pressero’s Order item shipment address > City
State
Pressero’s Order item shipment address > State
Zip
Pressero’s Order item shipment address > Zip
First Name
Pressero’s Order item shipment address > First Name
Last Name
Pressero’s Order item shipment address > Last Name
Phone
Pressero’s Order item shipment address > Phone
Fax
Pressero’s Order item shipment address > Fax
Email
Pressero’s Order item shipment address > Email
Title
Pressero’s Order item shipment address > Title
Ship via
Pressero’s Order item shipment method
Contact
Value defined on Step 4
Job
List of order items linked to current shipment address, Value defined on Step 4
:
Job number = Order item > Seq
Quantity = Constant: 0
Description: Order item > Notes

 

Custom messages

Pressero sends special email notifications during the integration process:
1.       If Pressero creates a new contact in PrintSmith system:
SUBJ: INFORM – New Contact Created in MIS System
A new contact was created from an online order for;
"Pressero Site Name"
Online order Reference: "Pressero web_reference_number": xxx
Contact "Pressero first_name" "Pressero last_name"
Email: "Pressero email"
Ensure this contact is set up in the "Pressero Site Name" site with the correct contact Integration ID and correctly set up in the MIS system.
2.       If Pressero creates new account and contact in PrintSmith system:
SUBJ: INFORM – New Account and Contact created in MIS System
A new Account and Contact was created from an online order for;
"Pressero Site Name" 
"Pressero Contact Name" 
Online order Reference: "web reference number": xxx
because no matching account, contact, or email was found in the MIS System.
Ensure the account has the MIS Account ID setup in Pressero for the Site Integration ID. Verify the Contact Integration ID is assigned in Pressero, and setup in the MIS.
3.       If Pressero can’t identify company or contact in PrintSmith system:
SUBJ: ORDER ERROR – Missing Contact Integration ID, or Missing Contact
"Pressero Site Name"
Online Order Reference: "web reference number": XXX
Contact Name: "Pressero Contact Name"
Your online system was not able to match the contact referenced in the order. This is most likely because the Pressero Contact Integration ID field was blank, or the contact is missing from PrintSmith. Please resolve this and reprocess the order.
4.       If Pressero cannot retrieve list of companies or contacts from PrintSmith system:
SUBJ: ORDER ERROR – Cannot connect with MIS Platform
Online Order Reference: "web reference number": XXX from "Pressero Site Name"
Pressero was not able to connect to the MIS platform and get the contact list to process the order. This may be temporary. Recommend you resubmit the order from Pressero again.

Technical specification

Pressero uses HTTP REST API to communicate with EPS PrintSmith; it needs direct access to both systems.

EPS Support
Please note that EPS does not officially support this integration.  The integration was created by referencing documentation and the support of mutual customers.