The typical scenarios for reversals happen when terminal cannot receive the transaction response or when the end user requests a product, it is printed at the terminal but for some reason the end user refuses to accept the PIN.
Client can also use this function to reverse a Pinless transaction if it is supported by the product provider.
Each PSInet operator has implemented specific procedures for returning and refunding the eVouchers. These procedures typically involve:
The API functionality provides automated PIN return and refund. It must be enabled by the PSInet administrator for your account by adding a special product code to your configuration.
The message type is PinlessRequest which is a flexible packet to allow specifying the original transaction number for the PIN purchase. The method is to send the TransNo that requires reversal and then the PIN transaction will be reversed and the merchant will be refunded.
Not all products are reversible.
Certain parameters must be in all API calls, view all the parameters below:
This field is part of the Common Request Parameters.
The value for this call is PinlessRequest
*Note: this refers to the message type and is used for all reversals including PIN reversals
Receipt number from Station. If the actual receipt number contains more than five characters, the last 5 characters (from the right) are recorded in the e-Fresh table.
An unique number identifying the transaction request.
This is the original TransNo of the transaction that needs reversal. Or the original OrderNo of the Order that needs reversal.
In the event of a timeout where you don’t know the TransNo or OrderNo, you should issue a Query of the transaction using the RefNo of the original transaction request or RequestNo of the original Order request. This will return the TransNo or OrderNo and the transaction result so you can determine if you need to do the reversal.
Fixed “0”.
6 character code used to identify a pin return Code is in the product file. Typically RETURN is used.
<RequestXml> <Type>PinlessRequest</Type> <TerminalId>Assigned</TerminalId> <Password>Assigned</Password> <ReceiptNo>12345</ReceiptNo> <CardData>0070000200641</CardData> <Amount>0</Amount> <ClerkId>1</ClerkId> <RefNo>67141630</RefNo> <ProdCode>RETURN</ProdCode></RequestXml>NOTE: Some fields returned in the response can be viewed as optional by the Client, such as: MerchantId, Company, CompanyCity, CompanyPhone, TransDate & TransTime. This data can be ignored if the Client has similar data already. Settlement or reconciliation should be based on the unique PSInet transaction number and not these fields.
Certain fields are returned from all API calls, view all the fields below:
PSInet generated unique transaction number.
Authorization code for successful transaction.
<ResponseXml> <StatusCode>0</StatusCode> <StatusDescription>Successful refund</StatusDescription> <TransNo>0070000200642</TransNo> <AuthorizationCode>testing8946</AuthorizationCode> <MerchantId>WenchengTesting</MerchantId> <Company>Lego Works Inc.</Company> <CompanyCity>Toronto</CompanyCity> <CompanyPhone>6049449330</CompanyPhone> <CompanyDbaName>PaymentSource</CompanyDbaName> <TransDate>2015-01-20</TransDate> <TransTime>11:17:03</TransTime> <ProductVer>0340217</ProductVer> <PromoVer>0340009</PromoVer> <SoftVer /> <InvoiceNumber /> <NSM /></ResponseXml>