Referral Transaction

In this section you will learn how to process a referral transaction

Referral Overview

The merchant may receive a "referred" response to an online sale authorization request; the merchant is requested to contact the card issuer for approval.

The purpose of a referral transaction is to authorize a transaction when the authorization code has been obtained by contacting the card issuer (voice authorization). A merchant may decide to decline a referred transaction in accordance with business policy.

How to process a TokenReferralRequest message

The merchant's system sends a TokenReferralRequest message to ANYpay POS in order to update the original transaction record stored by the ANYpay Gateway with the authorization code and receives a response containing information for receipt printing related to the card data capture method.

Section TokenReferralRequest Element describes the elements required to build an IccTransactionRequest message.

📘

Key elements of a TokenReferralRequest message

AuthorizationConnectionType MUST be set to [OfflineAuthorizationWithAuthorityCode]
AuthorityMethod MUST be set to [Manual]
AuthorityCode MUST be set to the Authority Code manually gained

An example of a TokenReferralRequest message can be seen below.

<?xml version="1.0" encoding="utf-16" standalone="yes"?>
<TokenReferralRequest xmlns="http://servebase.com/2009/06/pedframework">
  <TransactionConfig>
    <CustomerCode>PXP</CustomerCode>
    <Site>PXP000000001</Site>
    <Culture>en</Culture>
    <Workstation>001</Workstation>
    <MerchantId>2100112262</MerchantId>
    <Username>PxpUser1</Username>
    <Password>PxpPassword</Password>
    <IpAddress>127.0.0.1</IpAddress>
  </TransactionConfig>
 <AuthorizationConnectionType>OfflineAuthorizationWithAuthorityCode</AuthorizationConnectionType>
  <AuthorityCode>ABC123</AuthorityCode>
  <AuthorityMethod>Manual</AuthorityMethod>
  <Token>1AF2F704-6219-4FFB-8401-66C25FC7B782</Token>
</TokenReferralRequest >

Handling an IccTransactionResponse message

Section IccTransactionResponse Element describes the elements that are returned in an IccTransactionResponse message. An example of a IccTransactionResponse message for a TokenReferralRequest can be seen below.

<IccTransactionResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://servebase.com/2009/06/pedframework">
  <Language>en</Language>
  <ResponseCode>Approved</ResponseCode>
  <FaultResponseCode>0</FaultResponseCode>
  <ResponseMessage>Approved</ResponseMessage>
  <ReceiptInfo xsi:type="IccReceiptInfo">
    <CardNumber>541333******0185</CardNumber>
    <ExpiryDate year="49" month="12" />
    <StartDate year="96" month="12" />
    <TransactionAmount currency="GBP">20.00</TransactionAmount>
    <TransactionReference>Sale</TransactionReference>
    <MerchantId>2100112262</MerchantId>
    <TerminalId>210011226201</TerminalId>
    <CardScheme code="MSC" creditDebitIndicator="CREDIT">Mastercard</CardScheme>
    <CaptureMethod>Icc</CaptureMethod>
    <Dcc xsi:nil="true" /> 
    <Signature>
      <Format>Bitmap</Format>
    </Signature>
    <BelowSignatureLimit>false</BelowSignatureLimit>
    <CardHolderName>RDIR 03</CardHolderName>
    <BalanceOnCard xsi:nil="true" />
    <AuthorizedTransactionAmount currency="GBP">20.00</AuthorizedTransactionAmount>
    <ApplicationId>A0000000041010</ApplicationId>
    <ApplicationLabel>MasterCard</ApplicationLabel>
    <PreferredName>Mastercard</PreferredName>
    <PanSequenceNumber>00</PanSequenceNumber>
    <CvmResults>410302</CvmResults>
    <TransactionDateTime>2018-02-07T16:20:16.3964394+00:00</TransactionDateTime>
    <TransactionType>Sale</TransactionType>
    <AuthorisationResponseCode>3030</AuthorisationResponseCode>
  </ReceiptInfo>
  <Token>684d8145-afef-4366-8d0a-1684ca5a84af</Token>
  <TokenisedCardNumber>9946000000000150185</TokenisedCardNumber>
  <AuthorityCode>ABC123</AuthorityCode>
  <AuthorityMethod>Manual</AuthorityMethod>
  <TfsEligible>false</TfsEligible>
</IccTransactionResponse>