iPro Integration Guide
Overview
This guide deals with the integration of the Pay Offline payment system into a merchant site using the iPro integration method. To be able to generate the PayOffline barcode invoice for a customer order, certain parameters need to be sent to the PayOffline transaction server. This document will specify the mandatory and optional parameters as well as how to send the parameters to the PayOffline transaction server.
The iPro integration methods gives merchants complete flexibility in the layout and style of the invoice that is presented to the customer.
Using the iPro method, merchants can use the SOAP protocol to make remote procedure calls to the PayOffline server.
The information that is returned can be saved to file or to a database. This gives
merchants the ability to regenerate the invoice without having to communicate with the
PayOffline server.
PayOffline also makes use of callbacks to inform merchants of an orders payment
status, the Callback Guide discusses
all the different types of callbacks sent by PayOffline.
It is possible, if required, to sign all data sent to the PayOffline server, this
gaurantees that the information you sent to us is the data that we process. The
Security Guide discusses the data signing
technique in more detail.
What is SOAP?
SOAP stands for "Simple Object Access Protocol" (or more recently for "Service Oriented
Architecture Protocol") and is a protocol designed for exchanging data across computer
networks, such as the internet.
There are a few different types of messaging patterns in SOAP but the most common
is the Remote Procedure Call (RPC). RPC allows your server to send a request message
to the PayOffline server, the PayOffline server immediately sends a response message
back to your server.
SOAP Services are defined using the Web Services Definition Language (WSDL) and
are accessible via a URL which is known as a SOAP Endpoint.
A Typical iPro order flow overview
PayOffline WebService Information
Available Operations
Operation Name: InsertTransaction
|
Parameter |
Type |
Description |
|
mid |
alpha numeric (255) |
This is your PayOffline merchant ID, you will be assigned a merchant id after we
have approved your application.
|
|
oid |
alpha numeric (255) |
A unique order ID created by yourself. This can be used to refer to a transaction
at a later date.
Example: ABC12345
|
|
amt |
decimal |
This is the total amount of the customer order. This should contain no currency
symbols or formatting. A decimal point must be used as in the example below: 50.00
= £50
Example: 50.00
|
|
expdays |
numeric |
This is the number of days in which the invoice will expire. If payment is not received
before the expiry date you will be sent an email to inform you that payment was
not received. If a Callback URL is provided then a payment expiry message is also
sent to the Callback URL (see below)
|
|
callbackurl |
alpha numeric (255) |
This is the url of a server side script on your server that will process callback
messages from PayOffline.
|
|
sign |
alpha numeric (32) |
This is the MD5 signature of the form data. The MD5 signature is used to ensure
the validatity of the data recieved by PayOffline, The MD5 signature is generated
by concatenating all the form parameter values with a secret key known only to you
and PayOffline. Please see the security guide for more information on MD5 signatures.
|
Result values: InsertTransaction
|
result |
description |
explanation |
|
1 |
Transaction successful |
The transaction was processed successfully. Barcode and Order details are returned.
|
|
2 |
Transaction error |
There was a problem adding the transaction to the PayOffline system. Barcode and Order details are not returned.
|
|
3 |
Error generating barcode |
This error indicated that PayOffline had a problem generating the barcode. Barcode and Order details are not returned.
|
|
4 |
Authentication error |
Problem found with the merchant ID. Either the merchant ID does not exist or the merchant account is not active. Barcode and Order details are not returned.
|
|
5 |
Data error |
This indicates that the MD5 signature could not be validated. Ensure that you are using the correct Secret Key, see the security guide for more information. Barcode and Order details are not returned.
|
|
6 |
This order id already exist |
The order ID you supplied was already found in the PayOffline system stored against your account. This will not create a new transaction in the PayOffline system. Barcode and Order details are returned.
|
Example SOAP Request for InsertTransaction
TEST SOAP Header Information:
Host: test.payoffline.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://test.payoffline.com/InsertTransaction"
LIVE SOAP Header Information:
Host: secure.payoffline.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://secure.payoffline.com/InsertTransaction"
TEST SOAP Message Format:
http://test.payoffline.com/testtrans/wspotrans.asmx?op=InsertTransaction
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<InsertTransaction xmlns="http://test.payoffline.com/">
<mid>string</mid>
<oid>string</oid>
<amt>string</amt>
<callbackurl>string</callbackurl>
<expdays>string</expdays>
<sign>string</sign>
</InsertTransaction>
</soap:Body>
</soap:Envelope>
LIVE SOAP Message Format:
https://secure.payoffline.com/webservices/wspotrans.asmx?op=InsertTransaction
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<InsertTransaction xmlns="http://secure.payoffline.com/">
<mid>string</mid>
<oid>string</oid>
<amt>string</amt>
<callbackurl>string</callbackurl>
<expdays>string</expdays>
<sign>string</sign>
</InsertTransaction>
</soap:Body>
</soap:Envelope>
Example TEST SOAP Request
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<InsertTransaction xmlns="http://test.payoffline.com/">
<mid>6C6545AC2</mid>
<oid>123456789</oid>
<amt>165.32</amt>
<expdays>30</expdays>
<callbackurl>http://www.yoursite.com/proc.php</callbackurl>
<sign>a20bf0fe8e530adf9c5e3b9f35c32ce2</sign>
</InsertTransaction>
</soap:Body>
</soap:Envelope>
Example SOAP Response for InsertTransaction
TEST Result Schema:
Test:
http://test.payoffline.com/testtrans/wspotrans.asmx?schema=dsBarcode
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:mstns="http://tempuri.org/dsBarcode.xsd" xmlns="http://tempuri.org/dsBarcode.xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://tempuri.org/dsBarcode.xsd" id="dsBarcode" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element msdata:IsDataSet="true" msdata:UseCurrentLocale="true" name="dsBarcode">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Barcode">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="BarcodeNumber" type="xs:string" />
<xs:element minOccurs="0" name="BarcodeImage" type="xs:base64Binary" />
<xs:element minOccurs="0" name="BarcodeURL" type="xs:string" />
<xs:element minOccurs="0" name="BarcodeExpiry" type="xs:dateTime" />
<xs:element minOccurs="0" name="sign" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Results">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="Result" type="xs:short" />
<xs:element minOccurs="0" name="Description" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Order">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="mid" type="xs:string" />
<xs:element minOccurs="0" name="oid" type="xs:string" />
<xs:element minOccurs="0" name="amt" type="xs:decimal" />
<xs:element minOccurs="0" name="expdays" type="xs:string" />
<xs:element minOccurs="0" name="callbackurl" type="xs:string" />
<xs:element minOccurs="0" name="sign" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
LIVE Result Schema:
Live:
https://secure.payoffline.com/webservices/wspotrans.asmx?schema=dsBarcode
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:mstns="http://tempuri.org/dsBarcode.xsd" xmlns="http://tempuri.org/dsBarcode.xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://tempuri.org/dsBarcode.xsd" id="dsBarcode" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element msdata:IsDataSet="true" msdata:UseCurrentLocale="true" name="dsBarcode">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Barcode">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="BarcodeNumber" type="xs:string" />
<xs:element minOccurs="0" name="BarcodeImage" type="xs:base64Binary" />
<xs:element minOccurs="0" name="BarcodeURL" type="xs:string" />
<xs:element minOccurs="0" name="BarcodeExpiry" type="xs:dateTime" />
<xs:element minOccurs="0" name="sign" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Results">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="Result" type="xs:short" />
<xs:element minOccurs="0" name="Description" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Order">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="mid" type="xs:string" />
<xs:element minOccurs="0" name="oid" type="xs:string" />
<xs:element minOccurs="0" name="amt" type="xs:decimal" />
<xs:element minOccurs="0" name="expdays" type="xs:string" />
<xs:element minOccurs="0" name="callbackurl" type="xs:string" />
<xs:element minOccurs="0" name="sign" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Example Result - SOAP Response
<?xml version="1.0" encoding="utf-8" ?>
<dsBarcode xmlns="http://tempuri.org/">
<xs:schema id="dsBarcode" targetNamespace="http://tempuri.org/dsBarcode.xsd" xmlns:mstns="http://tempuri.org/dsBarcode.xsd" xmlns="http://tempuri.org/dsBarcode.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified">
<xs:element name="dsBarcode" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Results">
<xs:complexType>
<xs:sequence>
<xs:element name="Result" type="xs:short" minOccurs="0" />
<xs:element name="Description" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Barcode">
<xs:complexType>
<xs:sequence>
<xs:element name="BarcodeNumber" type="xs:string" minOccurs="0" />
<xs:element name="BarcodeImage" type="xs:base64Binary" minOccurs="0" />
<xs:element name="BarcodeURL" type="xs:string" minOccurs="0" />
<xs:element name="BarcodeExpiry" type="xs:dateTime" minOccurs="0" />
<xs:element name="sign" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Order">
<xs:complexType>
<xs:sequence>
<xs:element name="mid" type="xs:string" minOccurs="0" />
<xs:element name="oid" type="xs:string" minOccurs="0" />
<xs:element name="amt" type="xs:decimal" minOccurs="0" />
<xs:element name="expdays" type="xs:string" minOccurs="0" />
<xs:element name="callbackurl" type="xs:string" minOccurs="0" />
<xs:element name="sign" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<dsBarcode xmlns="http://tempuri.org/dsBarcode.xsd">
<Results diffgr:id="Results1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<Result>1</Result>
<Description>Transaction successful</Description>
</Results>
<Barcode diffgr:id="Barcode1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<BarcodeNumber>6335554007001000602</BarcodeNumber>
<BarcodeImage>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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==</BarcodeImage>
<BarcodeURL>http://secure.payoffline.com/Common/BarCodeDisplay.aspx?skey=FSi/Dn58Lic=</BarcodeURL>
<BarcodeExpiry>2007-08-04T00:00:00+01:00</BarcodeExpiry>
<sign>ec02a3ccb0458a286acfb27d174e6d4</sign>
</Barcode>
<Order diffgr:id="Order1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
<mid>6C6545AC2</mid>
<oid>123456789</oid>
<amt>165.32</amt>
<expdays>30</expdays>
<callbackurl>http://www.yoursite.com/proc.php</callbackurl>
<sign>a20bf0fe8e530adf9c5e3b9f35c32ce2</sign>
</Order>
</dsBarcode>
</diffgr:diffgram>
</dsBarcode>
Payments of amount greater than £999
payzone cannot take in payments greater than £999. For invoices greater than £999 payzone can take multiple payments to make up the full amount.
With iPro integration, you will need additonal information informing the client of this arrangement. With iBasic this text is provided, show below, you should insert this extra information or something similar for invoices that are greater than £999.
"For invoice values greater than £999, you will need to make multiple payements adding up to the total value of the invoice. All payments can be made simultaneously using this invoice. You will not be charged for this nor will it affect the successful completion of the order."