Transaction Processing Web Services

ProcessSignature

 

Service Location:

For SOAP connections:

 https://<assigned domain>/ws/transact.asmx?op=ProcessSignature

For standard HTTPS connections:

 https://<assigned domain>/ws/transact.asmx/ProcessSignature?

 

Description:

The ProcessSignature web service allows you to capture customer signatures from an input device.


This web service is used to capture a customer signature electronically and store that data on the virtual terminal. Transactions with captured signatures appear in the Payment Server with a small icon to the left of the transaction ID.

 

Developer Notes:

It is possible to send a receipt image file through the ProcessSignature web service operation from a client-side application in order to associate it with a transaction.  Due to the overall complexity of creating a receipt image with ProcessSignature, here is a general list of steps your client-side application must perform in order to send images to the payment server.

1.     Get image file from hardware device, etc. and convert image to TIFF image format, if it isn’t already in that format.

2.     Perform an LZW compression on the image data to reduce the file size (the payment server will only accept image data up to 25KB). 

Note: LZW compression decompresses and decompresses without information loss, achieving compression ratios up to 5:1. It may be somewhat slower to compress and decompress than the PackBits scheme.

3.     Compress the file itself with Zip compression to reduce the file size. Any PKZip-compatible Zip compressor and decompressor will work. 

Note: IPWorks (www.ipworks.com) is a third-party provider of software tools and they have a product called “IPWorks! Zip” that can simplify the programmatic compression.

4.     Base64 encode the image. This ensures that the binary-based information transported can be converted properly into text-based characters to send in the SignatureData parameter of ProcessSignature

5.     Input the compressed/base64 encoded image data into the SignatureData parameter of ProcessSignature, and send it to the Payment Server

 

Input Parameters:

O = Optional, R = Required

Parameter Name

Opt/Req

Description

UserName

R

User name assigned in the payment server. The user must have an appropriate level of access in order to utilize the web service.

Password

R

Password associated with the user name provided.

SignatureType

R

Identifies the format of the signature data being provided. Valid values are:

      Signature1 – Lipman credit

      Signature2 – Lipman check

      Signature3 – no longer used

      Signature4 – signature provided in a vector string

      Receipt1 – TIFF file (compressed and encoded Base64)

SignatureData

R

This parameter holds the data string containing the signature data.

If SignatureType = Signature4, the SignatureData will contain a string value of vector coordinates, delimited with a ^ character in the following format:

x1,y1^x2,y2^xN,yN^~

Where ^ is the coordinate delimiter, ~ is the ending delimiter, and a comma (,) is the vector delimiter.

If there is a pen up event, use the coordinate 0,65535 to signal a break in the line.

If SignatureType = Receipt1, you must compress and Base64 encode the image data. For additional information on compression and encoding, see the ‘Developer Notes’.

PNRef

R

Unique payment reference number used to identify a single transaction within the system. The payment reference number (PNRef) is assigned by the payment server at the time the transaction is created.

Result

O

Indicator that specifies whether the transaction was approved. Valid entries are:

      1 (true) – transaction was approved

      0 (false) – transaction was not approved

AuthCode

O

The approval code is a 6-character string (alphanumeric) generated by the issuing bank. The code is used the card issuer to verify the specific authorization when transactions are being settled.

ExtData

O

The ExtData parameter allows you to pass additional information to the web service that is not covered under the input parameters. ExtData values need not be placed in any particular order; however, they must be properly formatted using XML tags.

The following information may be added via the ExtData parameter:

Training Mode: This is an indicator that specifies whether transactions will be processed for local loop back testing or treated normally. Valid formats are:

      <TrainingMode>T</TrainingMode> where T (true) indicates that training mode is active and transactions are processed for local loop back testing.

      <TrainingMode>F</TrainingMode> where F (false) indicates that training mode is inactive and transactions should be treated normally.