All pages
Powered by GitBook
1 of 2

Loading...

Loading...

Prima Solutions (prebuilt connector)

Description

Prima Solutions provide multi-channel enterprise resource planning software including order management, stock control, product development, retail & eCommerce.

Authentication

When adding connector instances for Prima Solutions, the following authentication methods are supported:

Prima no auth

When a user chooses to using Prima No Auth authentication, the credentials below are prompted:

Credential
Required?
Notes

Additional setup

The Prima Solutions connector has some specific behaviour that must be considered when you work with this connection in process flows. For further information please see our page.

Instance URL

Enter the URL provided to you by Prima Solutions, excluding the final /wsdl section. For example: http://websvc2.dubarry.com:8080/wsadevtest/wsadevtest/wsdl would be entered as: http://websvc2.dubarry.com:8080/wsadevtest/wsadevtest

Company ID

Your Prima Solutions company ID is only required if you will be using the COMWSOMHANDLER endpoint - it is not required if you are only using the WSOMHANDLER endpoint.

Prima No Auth
add a connector instance
Setting up a Prima Solutions connection

Setting up a Prima Solutions connection

Introduction

Typically, connectors are defined with endpoints which determine exactly what data is being requested (pull customer records, post product details, etc.). However, the Prima Solutions connector works in a different way, with two generic endpoints:

  • comwsomhandler

  • wsomhandler

The actual data required for a request must be passed into the Prima Solutions connection shape, as part of your process flow. You do this via a shape.

Whatever is defined for the manual payload is passed into the body of the subsequent Prima Solutions connection request.

Finally - once a successful connection is made - the response must be converted from XML to JSON, ready for onward processing.

With this in mind, a process flow that needs to pull data from Prima Solutions will usually require three shapes in the following sequence:

  1. Manual payload shape, which includes the required in an XML string

  2. Connection shape, configured with a Prima Solutions endpoint

  3. Script shape, configured with an

For example:

Request data

Request data to be passed into a Prima Solutions connection shape must be based on the Prima Web Services XML Schema Definition. Some examples are shown below.

Example: NewOrder

The example below shows a NewOrder request (XML string):

Example: ProductAvailableToSell

The example below shows a ProductAvailableToSell request (XML string):

The response would be in the form below:

Notice that the response is returned as an XML string. For onward processing you must .

Converting response XML to JSON

Before the response from a Prima Solutions request can be be processed, it must be converted to a JSON payload. To do this, you should create an XML to JSON conversion script and add this to a in your process flow.

manual payload
request data
XML to JSON conversion script
convert this to a JSON payload, using a custom script
script shape
With HTML entities
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request RequestType="NewOrder">
  <Data Customer="&quot;&quot;" CustDef="&quot;&quot;" VatInclusive="&quot;&quot;" TPGUID="&quot;&quot;" CustomerRef="&quot;&quot;" CustomerForename="&quot;&quot;" CustomerSurname="&quot;&quot;" CustomerPhone="&quot;&quot;" CustomerEmail="&quot;&quot;" AddrLine1="&quot;&quot;" AddrLine2="&quot;&quot;" AddrLine3="&quot;&quot;" AddrLine4="&quot;&quot;" AddrLine5="&quot;&quot;" AddrLine6="&quot;&quot;" Country="&quot;&quot;" PostCode="&quot;&quot;">
    <OrderInvoiceData InvoiceTitle="&quot;&quot;" InvoiceForename="&quot;&quot;" InvoiceSurname="&quot;&quot;" InvoicePhone="&quot;&quot;" InvoiceEmail="&quot;&quot;" InvoiceAddrLine1="&quot;&quot;" InvoiceAddrLine2="&quot;&quot;" InvoiceAddrLine3="&quot;&quot;" InvoiceAddrLine4="&quot;&quot;" InvoiceAddrLine5="&quot;&quot;" InvoiceAddrLine6="&quot;&quot;" InvoiceCountry="&quot;&quot;" InvoicePostCode="&quot;&quot;"/>
    <OrderHeaderData Currency="&quot;&quot;" OrderEmail="&quot;&quot;" OrderStatus="&quot;&quot;" OrderCategory="&quot;&quot;" OrderDate="&quot;&quot;" SendToApproval="&quot;&quot;" SourceMedia="&quot;&quot;" Carrier="&quot;&quot;" CarrServ="&quot;&quot;"/>
    <OrderChargeData Charge="&quot;&quot;" ChargeValue="&quot;&quot;"/>
    <OrderPaymentData TranAmount="&quot;&quot;" PayMethod="&quot;&quot;" SubPayMethod="&quot;&quot;" PayAuthRef="&quot;&quot;" AuthRef="&quot;&quot;" AuthDate="&quot;&quot;" AuthTime="&quot;&quot;"/>
    <OrderLineData Product="&quot;&quot;" Quantity="&quot;&quot;" Price="&quot;&quot;" MtrxCode1="&quot;&quot;" MtrxCode2="&quot;&quot;"/>
  </Data>
</Request>
Without HTML entities
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request RequestType="NewOrder">
  <Data Customer="" CustDef="" VatInclusive="" TPGUID="" CustomerRef="" CustomerForename="" CustomerSurname="" CustomerPhone="" CustomerEmail="" AddrLine1="" AddrLine2="" AddrLine3="" AddrLine4="" AddrLine5="" AddrLine6="" Country="" PostCode="">
    <OrderInvoiceData InvoiceTitle="" InvoiceForename="" InvoiceSurname="" InvoicePhone="" InvoiceEmail="" InvoiceAddrLine1="" InvoiceAddrLine2="" InvoiceAddrLine3="" InvoiceAddrLine4="" InvoiceAddrLine5="" InvoiceAddrLine6="" InvoiceCountry="" InvoicePostCode=""/>
    <OrderHeaderData Currency="" OrderEmail="" OrderStatus="" OrderCategory="" OrderDate="" SendToApproval="" SourceMedia="" Carrier="" CarrServ=""/>
    <OrderChargeData Charge="" ChargeValue=""/>
    <OrderPaymentData TranAmount="" PayMethod="" SubPayMethod="" PayAuthRef="" AuthRef="" AuthDate="" AuthTime=""/>
    <OrderLineData Product="" Quantity="" Price="" MtrxCode1="" MtrxCode2=""/>
  </Data>
</Request>
With HTML entities
&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;
   &lt;Request RequestType=&quot;ProductAvailableToSell&quot;&gt;
   &lt;Data ProductFrom=&quot;&quot; ProductTo=&quot;&quot; WareHouse=&quot;&quot; IncludeDisallowed=&quot;&quot; IncludeProhibited=&quot;&quot;/&gt;
   &lt;/Request&gt;
Without HTML entities
<?xml version="1.0" encoding="ISO-8859-1"?>
<Request RequestType="ProductAvailableToSell">
   <Data ProductFrom="" ProductTo="" WareHouse="" IncludeDisallowed="" IncludeProhibited=""/>
</Request>
With HTML entities
<?xml version="1.0" encoding="ISO-8859-1" ?> <Result Company="1" RequestStatus="OK" RequestType="ProductAvailableToSell"><Data><sku AvailableDate="" AvailableQuantity="0" FTSQty="0" MtrxCode1="" MtrxCode2="" MtrxCode3="" MtrxCode4="" Product="1000"/><sku AvailableDate="" AvailableQuantity="0" FTSQty="0" MtrxCode1="" MtrxCode2="" MtrxCode3="" MtrxCode4="" Product="1001"/></Data></Result>