Versions Compared

Key

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

Description

...

  1. Transaction levelMandatory - Contains all the basic transaction information
  2. Services level – Mandatory - Contains all the information regarding the services sold in the transaction – must contain at-least one service
  3. Allocations level – Contains all the information regarding the allocation of money received from transaction to be paid to other providers in Direct Pay Online system. If this level is not sent, the system will allocate all the money from this transaction to the provider
  4. Additional level – Contains an option to block specific payment options in the transaction (for example, on an application which needs fast payment, block off Direct Pay Online bank payment)
  5. Travelers level – Contains information regarding travelers (passengers / guests) which will a process in Direct Pay Online system to verify that one of the payers name matches the name of one of the travelers


URL: https://secure1secure.sandbox3gdirectpay.directpay.onlinecom/API/v6/

Response

The method will respond with the result of your request.

...

Parameter

Data type

Description


 CompanyToken

 Token

Token you got from 3G to operate this API

Mandatory

RequestTextcreateTokenMandatory

...

Parameter

Data type

Description


PaymentAmount

Money

Total amount in the selected currency. No more than 2 digits after the comma

Mandatory

PaymentCurrency

Text

From table of options as accepted from DPO

Mandatory

CompanyRef

Text

Company reference number, i.e also referred to as Booking ref

Optional

RedirectURL

Text

URL to redirect the customer after the payment.
The customer will be redirected to this URL with the below variables in GET method.
You can send your link with additional variables, the system will recognize it and the additional variables will be sent out with “&” instead of “?” in the beginning.
Variables:

  • TransID - Transaction ref.
  • CCDapproval - Approval number
  • PnrID - Customer ref
  • TransactionToken - Transaction ref. (repeated)
  • CompanyRef - Customer ref. (repeated)

Optional

BackURL

Text

URL to let the customer go back from the payment page.

The customer will be redirected to this URL with "TransactionToken" and "CompanyRef" variables in GET method. You can send your link with additional variables, the system will recognize it and the additional variables will be sent our with "&" instead of "?" in the beginning

Optional

DeclinedURL

Text

URL to return the client if payment is declined. You can send your link with additional variables, the system will recognize it and the additional variables will be sent out with “&” instead of “?” in the beginning

Optional

CompanyRefUnique

Boolean

Tells the system to verify if the company reference number (transaction ID given by the provider) given is already in the system and paid, if so, returns error to API result.This is to prevent double payments

Optional.

Default: False

PTL

Number

Number of hours to payment time limit

Optional.

Default: 96 hours

PTLtype

Text

Define if “PTL” tag is hours or minutes. options: “hours” or “minutes”

Optional.

Default: hours

TransactionChargeType

Number

Type of transaction:

  • 1 for Charge - immediate charge
  • 2 for Authorize-Manual - for an authorization process and then manual charge using “chargeToken”
  • 3 for Authorize-Auto - for authorization process and then automatically charge on chosen date

Optional.

Default: 1 (Charge)

TransactionAutoChargeDate

DateTime

Date and time of automatic charge of transaction, if authorized by that date.
Formats: YYYY/MM/DD HH:MM(:SS), YYYY/MM/DD, YYYY-MM-DD HH:MM(:SS), YYYY-MM-DD

Optional/Mandatory if TransactionChargeType=”Authorize-Auto”

customerEmail

Text

E-mail of the customer to send the link

Optional

customerFirstName

Text

Customer name

Optional

customerLastName

Text

Customer last name

Optional

customerAddress

Text

Customer address

Optional

customerCity

Text

Customer city

Optional

customerCountry

ISO code

Customer country ISO 2 letter code
http://en.wikipedia.org/wiki/ISO_3166-1

Optional

customerDialCode

ISO code

Customer country ISO 2 letter code

Optional

customerPhone

Number

Customer Phone number

Optional

customerZip

Text

Customer zip code

Optional

DemandPaymentbyTraveler

Boolean (1/0)

If marked as 1, the system will require one of the travelers which are included in the travelers tag to be the payer.

Optional

EmailTransaction

Boolean (1/0)

If marked as 1, the system will send the customer an e-mail about the transaction with a link to pay

Optional

CompanyAccRef

Text

Internal accounting reference number

Optional

userToken

Token

To define who created the transaction

Optional

DefaultPayment




Text

The code of the default payment option (the one to be displayed first in the payment page), options:

  • CC – Credit card
  • MO – Mobile
  • PP – PayPal
  • BT – Bank transfer
  • XP – xPay
Optional
DefaultPaymentCountry

Text



Should be used only for Mobile default payment.

Name of the default country for the payment option (DefaultPayment will work without this option too)

Ex.: <DefaultPaymentCountry>kenya</DefaultPaymentCountry>

Optional

DefaultPaymentMNO




Text

Should be used only for Mobile default payment.

Name of the default MNO (mobile network operator) for the payment option (DefaultPayment will work without this option too)

Ex.: <DefaultPaymentMNO>mpesa</DefaultPaymentMNO>

Optional
TransactionToPrepBoolean (1/0)Will mark the transaction as Marketplace PrepOptional
AllowRecurrent
Boolean (1/0)Will allow payment via recurrentOptional
FraudTimeLimitNumberSet fraud time limit in minutes (from current date)Optional
VoidableBoolean (1/0)If this tag sent, transaction will be checked in scoring process, if 0 and scoring above high risk/very high risk then will be blocked, if 1 then will go to a check by DPO support teamOptional
ChargeTypeText
Optional
TRANSmarketplaceNumberIf this tag is sent, allocation amount will be update based on the API_GetCCTclientprecentage stored procOptional
TRANSblockCountriesBoolean (1/0)transaction block countriesOptional
MetaDataText(2000)Some custom data, that need store for specify transaction (Max allowed 2000 symbols)Optional
SMSTransactionBoolean (1/0)sms transactionOptional
TransactionTypeTextIf set, update the transaction status id based on itOptional
DeviceIdTextIn use if transaction type is duma directpayOptional
DeviceCountryTextIn use if transaction type is duma directpayOptional
TransactionSource
Text

This field will indicate the source of the transaction. If none provided the default source will be applied (default = API).

Available sources (more can be added if needed):

  • Computer
  • Mobile
  • API
  • Website
  • Catalogue
  • Realtime Settlement
  • DPO Card
  • DPO Store
  • Lite Portal
  • Marketplace
  • Pay My Bills
  • Shopify
  • Wordpress
  • Magento
  • Whcms
  • Wix
  • Ecwid 
  • Android SDK
  • IOS SDK
  • DPO Pay mobile Android
  • DPO Pay mobile IOS
  • POS
  • sPOS
Optional



Service level (Mandatory):

...

Parameter

Data type

Description


ServiceDescription

Text

The description of the payment made

Mandatory

ServiceType

Number

Service type number according to the options accepted from DPO

Mandatory-Optional (Need send ServiceType or ServiceTypeName)

ServiceTypeNameTextService type name according to the options accepted from DPOMandatory-Optional (Need send ServiceType or ServiceTypeName)

ServiceDate

DateTime

Service date of the booked service
Format: YYYY/MM/DD HH:MM

Mandatory

ServiceFrom
Iata3 letters departure airport codeOptional
ServiceTo
Iata3 letters destination airport codeOptional
ServiceRefTextService ReferenceOptional

...

Allocations must be wrapped in <Allocations> tag and each allocation in <Allocation> tag. The limit for an allocation must be the 95% 89% of the total of the transaction. Some fields are mandatory for each allocation sent.

...

Parameter

Data type

Description


BlockPayment

Text

The code of the payment options to be blocked, options:
CC – Credit card

MO – Mobile

PP – PayPal

BT – Bank transfer

XP – xPay

SE - SID-EFT

CP - USSD(coral Pay)

Optional

Travelers level (Optional):

...

Parameter

Data type

Description

Is Mandatory

TicketType

DocumentType

DateIssued

IATACarrierCode

IATATravelAgencyNbr

TicketCarrierName

TicketIssuerCityName

PassengerCount

ConjTicketIndicator

ElecTicketIndicator

TicketNumber

FlightLegDetails

Travelers

Text

Text

DateTime

Text

Text

Text

Text

Numeric

Text

Text

Text

XML (String)

XML (String)

Ticket Type

Document Type

Date Issued

IATA Carrier Code

IATA Travel Agency Number

Ticket Carrier Name

Ticket Issuer City Name

Number of Passengers

Conjunction Ticket Indicator

Electronic Ticket Indicator

Exchanged/Original Ticket No or PNR

Flight Leg Details

Traveler Details

Optional

Optional

Mandatory

Mandatory

Optional

Optional

Optional

Optional

Optional

Optional

Mandatory

Optional

Optional

Traveler Details Prams:

Parameter

Data type

Description

Is Mandatory

TravelerFirstName

Text

First name

Mandatory

TravelerLastName

Text

Last name

Mandatory

TravelerPhone

Text

Phone number

Optional

TravelerPhonePrefix

Numeric

Phone number prefix (without +)

Optional

TravelerDateOfBirthDateTimeTraveler Date Of BirthOptional
TravelerCountryCodeTextTraveler Country CodeOptional

...

Parameter

Data type

Description

Is Mandatory

FlightDescription

Text

The description of the payment made

Mandatory

FlightType

Number

Service type number according to the options accepted from DPO

Mandatory

FightDate

DateTime

Service date of the booked service
Format: YYYY/MM/DD HH:MM

Mandatory

FlightFrom

Text

3 letters departure airport code

Mandatory

FightTo

Text

3 letters destination airport code

Mandatory

FlightRef

Text

Service Reference

Optional

CarrierCode

Text

IATA carrier code 

Mandatory

ServiceClass

Text

Service Class

Mandatory

FlightNumber

Text

Flight Number

Mandatory

FareBasisCode

Text

Fare Basis Code

Mandatory

StopOverCode

Text

Stop Over Code

Mandatory

...

NOTE; Payment page URL is: https://secure1secure.sandbox.directpay.online3gdirectpay.com//payv2.php?ID={{TransToken}}

For example: https://secure1secure.sandbox.directpay.online3gdirectpay.com//payv2.php?ID=72983CAC-5DB1-4C7F-BD88-352066B71592

...