Account Funding Transactions (AFT)
Account Funding Transaction
Description
Since Account Funding Transactions (AFTs) are not purchase transactions, they require additional data from the cardholder and are strictly scrutinised by the banks and as such use specific Merchant Category Codes (MCCs).
Action
Style
Document
Input (Literal)
The input of this method is the document element AuthorizeRequest or PaymentRequest having the structure defined by the following table.
|
ELEMENT |
TYPE |
SIZE(MAX) |
DESCRIPTION |
|
Amount |
long |
The authorization amount in the lowest monetary unit. |
|
|
OrderNumber |
string |
50 |
The transaction order or reference number. Note: Only Alphanumeric characters i.e. [a..z], [A..Z], [0..9] are allowed. NO spaces or special characters are allowed. |
|
PaymentService |
|
For AFT's this will be CardNotPresentAFT |
|
|
BussAppId |
string |
For Visa - The Business Application Identifier. |
|
|
SenderFirstName |
string |
50 |
The first name of the funds sender. |
|
SenderLastName |
string |
50 |
The last name of the funds sender. |
|
ReceiverFirstName |
string |
50 |
The first name of the funds receiver. |
|
ReceiverLastName |
string |
50 |
The last name of the funds receiver. |
|
SenderAddress |
The address of the funds sender.
|
||
|
ReceiverAddress |
The address of the funds receiver.
|
||
|
PurposeOfPayment |
string | 12 |
This tag will contain the purpose of payment code. |
|
CardAcceptorName |
string |
40 |
The CardAcceptorName is the merchant name which will appear on the customer's bank statement. |
|
MerchantCategoryCode |
string |
4 |
Used when a merchant wishes to pass a unique MCC (MerchantCategoryCode) eg: 4829 |
Sample Message
Request
Body
Body
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="http://www.ecentricswitch.co.za/paymentgateway/v1">
<soapenv:Header>
<MessageHeader></MessageHeader>
</soapenv:Header>
<soapenv:Body>
<PaymentRequest>
<AuthCode></AuthCode>
<MerchantID>XXXXXXXXXXXXXXXXXXX</MerchantID>
<MerchantCategoryCode>9311</MerchantCategoryCode>
<TransactionID>XXXXXX</TransactionID>
<Amount>222</Amount>
<CurrencyCode>ZAR</CurrencyCode>
<OrderNumber>AFTPayment132</OrderNumber>
<Card>
<CardholderName>AFT Test</CardholderName>
<CardNumber>4111111111111111</CardNumber>
<ExpiryMonth>01</ExpiryMonth>
<ExpiryYear>30</ExpiryYear>
<SecurityCode>123</SecurityCode>
</Card>
<PaymentService>CardNotPresentAFT</PaymentService>
<SenderFirstName>SenderFirstName</SenderFirstName>
<SenderLastName>SenderLastName</SenderLastName>
<SenderAddress>
<AddressLine1>456 Street</AddressLine1>
<AddressLine2></AddressLine2>
<City>CapeTown</City>
<Neighbourhood>Rondebosch</Neighbourhood>
<PostCode>7700</PostCode>
<Region>WC</Region>
<CountryCode>710</CountryCode>
</SenderAddress>
<ReceiverFirstName>ReceiverFirstName</ReceiverFirstName>
<ReceiverLastName>ReceiverLastName</ReceiverLastName>
<ReceiverAddress>
<AddressLine1>123 Street</AddressLine1>
<AddressLine2></AddressLine2>
<City>CapeTown</City>
<Neighbourhood>Rondebosch</Neighbourhood>
<PostCode>7700</PostCode>
<Region>WC</Region>
<CountryCode>710</CountryCode>
</ReceiverAddress>
<PurposeOfPayment>ISACCT</PurposeOfPayment>
<BussAppId>WT</BussAppId>
</PaymentRequest>
</soapenv:Body>
</soapenv:Envelope> Response
Body
<s:Envelope
xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:MessageHeader
xmlns:h="http://www.ecentricswitch.co.za/paymentgateway/v1"
xmlns="http://www.ecentricswitch.co.za/paymentgateway/v1"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<MessageDateTime>2024-11-14T12:14:19.197</MessageDateTime>
<MessageID>FCB16C75-21C1-495A-8E21-49A6CA1C83EE</MessageID>
<Channel xsi:nil="true"/>
</h:MessageHeader>
</s:Header>
<s:Body
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<PaymentResponse xmlns="http://www.ecentricswitch.co.za/paymentgateway/v1">
<TransactionID>d51a062c-8789-435c-9669-3f02440f4f37</TransactionID>
<TransactionDateTime>2024-11-14T12:14:17.63</TransactionDateTime>
<SaleReconID xsi:nil="true"/>
<ReconID/>
<AuthCode>609134</AuthCode>
<TransactionStatus>Success</TransactionStatus>
<ResponseDetail>
<Source>Acquirer</Source>
<Code>00</Code>
<Description>Approved or completed successfully</Description>
<ClientMessage>Approved.</ClientMessage>
</ResponseDetail>
<AuthAmount>222</AuthAmount>
</PaymentResponse>
</s:Body>
</s:Envelope>