Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

These parameters will be sent in the request body. (POST method)

Parameter

Data Type

Description

 

Request

Text

verifyToken

Mandatory

CompanyToken

Text (Token - UUID)

Token you got from 3G to operate this API

Mandatory

TransactionToken

Text (Token - UUID)

Transaction token as accepted from the URL redirected

Mandatory or Optional if CompanyRef is sent

CompanyRef

Text

Company reference number

Mandatory or Optional if TransactionToken is sent

VerifyTransaction

Boolean (1/0)

Default - 1

By default, the system will verify the transaction and mark it as “website verified” in 3G systems.This option should be set to false if you only want to verify the transaction was made, process the details and then you can send the verifyToken again with this parameter set to true to let 3G systems know that you have successfully processed the client.Send 1 to verify, 0 if you don't need.

Optional

ACCref

Text

Internal accounting reference number.

Optional

customerPhone

Text

Customer phone number can be updated

Optional / Mandatory if customerPhonePrefix sent

customerPhonePrefix

Number

Customer phone prefix (without +)

Optional / Mandatory if customerPhone sent

customerEmail

Text

Customer E-mail address can be updated

Optional

The Flow

  • After the user will send the relevant fields, the fields will be validated

  • If all the fields will pass the validations, the transaction’s details will be responded back to the user as an XML response.

  • If one of the fields will fail the validation, an error will be responded accordingly as an XML response with the proper error message

...

Code Block
<?xml version="1.0" encoding="utf-8"?>
<API3G>
    <Request>verifyToken</Request>
    <CompanyToken>{CompanyToken}</CompanyToken>
    <TransactionToken>{transToken}</TransactionToken>
    <CompanyRef>{CompanyRef}</CompanyRef>
    <VerifyTransaction>{VerifyTransaction}</VerifyTransaction>
    <ACCref>{ACCref}</ACCref>
    <customerPhone>{customerPhone}</customerPhone>
    <customerPhonePrefix>{customerPhonePrefix}</customerPhonePrefix>
    <customerEmail>{customerEmail}</customerEmail>
</API3G>

for example:

Code Block
<API3G>
  <CompanyToken>90EC1DA4-A7C5-432C-930C-098715D3130E</CompanyToken>
  <Request>verifyToken</Request>
  <TransactionToken>6253BFCA-848B-4884-A5FA-68E425643BD1</TransactionToken>
</API3G>

Response (XML)

Success

Code Block
<?xml version="1.0" encoding="UTF-8"?>
<API3G>
    	<Result>000</Result>
    	<ResultExplanation>Transaction paid<Paid</ResultExplanation>
    <TransactionCreatedDate>2019-12-25 12:45:49</TransactionCreatedDate>
    <TransactionSettlementDate>2013/12/31</TransactionSettlementDate>
    <TransactionRollingReserveAmount>5</TransactionRollingReserveAmount>
    <TransactionRollingReserveDate>2014/12/31</TransactionRollingReserveDate>
    <TransactionExpiryDate>2020-02-03 12:00:00</TransactionExpiryDate>
    <TransactionPaymentDate>2019-12-25 12:47:30</TransactionPaymentDate>
    <CustomerName>nathan nathan</CustomerName>
    <CustomerPhone>254123456789</CustomerPhone>
    <CustomerCountry>KE</CustomerCountry>
    <CustomerAddress>Stranfe blvd.</CustomerAddress>
    <CustomerCity>Nairobi</CustomerCity>
    <CustomerZip>AH1</CustomerZip>
    <CustomerEmail>nathan@aerocrs.com</CustomerEmail>
    <CustomerPhone></CustomerPhone>
    <PaymentType>Card</PaymentType>
    <CardType>Mastercard</CardType>
    <ApprovalNumber>4444444447</ApprovalNumber
    <CardLastFour>8367</CardLastFour>
    <TransactionAmount>1.00</TransactionAmount>
    <TransactionCurrency>USD</TransactionCurrency>
    <PartPaymentRef>0</PartPaymentRef>
    <AllocationAmount>850</AllocationAmount>
    <AllocationCode>demo1</AllocationCode>
    <CompanyRef>dess</CompanyRef>
    <CompanyAccRef>ABC123REF</CompanyAccRef>
    <TransactionRef>8412B4A0</TransactionRef>
    <ServiceDescription>Test Product</ServiceDescription>
    <ServiceDate>2013/12/25 09:00</ServiceDate>
    <TransactionFraudAlert>004</TransactionFraudAlert>
    <TransactionFraudExplanation>Very high risk</TransactionFraudExplanation>
    <TransactionFinalAmount>1.00</TransactionFinalAmount>
    <TransactionFinalCurrency>USD</TransactionFinalCurrency>
    <CardFirstSix>511221</CardFirstSix>	<TransactionCreatedDate>2024/01/03 09:11:44</TransactionCreatedDate>
	<TransactionSettlementDate>2024/01/17</TransactionSettlementDate>
	<TransactionRollingReserveAmount>0.00</TransactionRollingReserveAmount>
	<TransactionRollingReserveDate>2024/01/03</TransactionRollingReserveDate>
	<TransactionExpiryDate>2024/01/04 00:11:44</TransactionExpiryDate>
	<TransactionPaymentDate>2024/01/03 09:14:52</TransactionPaymentDate>
	<CustomerName>vv vv</CustomerName>
	<CustomerPhone>203888888888</CustomerPhone>
	<CustomerCountry>Israel</CustomerCountry>
	<CustomerAddress>6666</CustomerAddress>
	<CustomerCity>ee</CustomerCity>
	<CustomerZip>e</CustomerZip>
	<CustomerEmail>ei@gmail.com</CustomerEmail>
	<PaymentType></PaymentType>
	<CardType>MASC</CardType>
	<ApprovalNumber>400309113213</ApprovalNumber>
	<CardLastFour>0008</CardLastFour>
	<CardFirstSix>51234500</CardFirstSix>
	<TransactionAmount>44.7947</TransactionAmount>
	<TransactionCurrency>AED</TransactionCurrency>
	<PartPaymentRef>0</PartPaymentRef>
	<AllocationAmount>1.3047</AllocationAmount>
	<AllocationCode>demo1</AllocationCode>
	<CompanyRef>49FYTA9009</CompanyRef>
	<CompanyAccRef>OTC9L5_992404700</CompanyAccRef>
	<TransactionRef>R4981192</TransactionRef>
	<ServiceDescription>Refill account</ServiceDescription>
	<ServiceDate></ServiceDate>
	<TransactionFraudAlert>001</TransactionFraudAlert>
	<TransactionFraudExplanation>Low Risk (Not checked)</TransactionFraudExplanation>
	<TransactionFinalAmount>44.7947</TransactionFinalAmount>
	<TransactionFinalCurrency>AED</TransactionFinalCurrency>
</API3G>

Error

Code Block
<?xml version="1.0" encoding="UTF-8"?>
<API3G>
    <Code>950</Code>
    <Explanation>Request missing transaction level mandatory fields - fieldName </Explanation>
</API3G>

 

Response Codes

Code

Explanation

000

Transaction Paid

001

Authorized

002

Transaction overpaid/underpaid

007

Pending Split Payment (Part Payment Transactions not fully paid)

801

Request missing company token

802

Company token does not exist

803

No request or error in Request type name

804

Error in XML

900

Transaction not paid yet

901

Transaction declined

902

Data mismatch in one of the fields - field (explanation)

903

The transaction passed the Payment Time Limit

904

Transaction cancelled

950

Request missing transaction level mandatory fields – field (explanation)

Fraud Alert Codes:

Code

Explanation

000

Genuine transaction

002

Suspected Fraud Alert

003

Fraud alert cleared (Merchant marked as clear)

004

Suspect Fraud Alert

005

Fraud alert cleared (Genuine transaction)

006

Black - Fraudulent transaction