Versions Compared

Key

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

doTransaction (Enterprise API)

------------------------------------------------------------------------------

 

A doTransaction can be done to initiate any of the following processes:

  • RESERVE
  • RESERVE_CANCEL
  • PAYMENT
  • FINALIZE
  • CREDIT
  • RESERVE_RECURRING
  • RESERVE_RECURRING_CANCEL
  • PAYMENT_RECURRING
  • FINALIZE_RECURRING
  • CREDIT_RECURRING

Recurring transactions see section on real-time recurring business rules.

Request Parameters

...

Parameter Name

...

Description

...

Data type

...

DoTransactionRequest

...

Api

...

Version of the API. Current Version: 1.0

...

VarChar(4)

...

Safekey

...

PayU Merchant Identifier. Provided to merchant upon integration

...

Char(38)

...

TransactionType

...

The type of transaction being performed

RESERVE
RESERVE_CANCEL
PAYMENT
FINALIZE
CREDIT
RESERVE_RECURRING
RESERVE_RECURRING_CANCEL
PAYMENT_RECURRING
FINALIZE_RECURRING
CREDIT_RECURRING

...

String

...

AuthenticationType

...

The method of authentication used if a payment is being made that requires a user’s permission

NA

HANDSHAKE

TOKEN * (2nd call and subsequent calls)

...

String

...

storePaymentMethod

...

Indicates if PayU must save this card and provide the merchant with a token to use for subsequent payments for the customer - True or False * (Only required for the first call, do not resend on subsequent calls for the customer)

...

 

...

Additional Information

...

MerchantReference

...

Unique merchant identifier for transaction

...

VarChar (64)

...

PayUReference

...

PayU unique reference number for transaction

...

VarChar(24)

...

DemoMode

...

To determine if the API request should be handled as a demo transaction Values: True/False

...

Boolean

...

NotificationURL

...

URL where the merchant would like to be notified of transaction result via IPN (Instant Payment Notification).

...

String

...

Basket

...

Description

...

Basket description that will show on PayU

...

VarChar (64)

...

AmountInCents

...

Total amount of the basket in cents. Format as 1000 for R10.00

...

Integer

...

CurrencyCode

...

Currency code defined by PayU. Example: ZAR

...

VarChar(2)

...

Customer

...

FirstName

...

Customer first name

...

VarChar (64)

...

LastName

...

Customer last name

...

VarChar (64)

...

RegionalId

...

Regional identifier for customer such as RSA ID

...

String

...

Mobile

...

Customer Mobile Number in international format without +( eg 27827891248)

...

String

...

Email

...

Customer Email Address

...

VarChar (64)

...

MerchantUserId

...

*Unique Customer ID in merchant system (Required for Token payment)

...

VarChar (64)

...

DOB

...

Customer Date of Birth. Format 1970-07-30

...

VarChar (10)

...

Payment Methods – Credit Card (No handshake)

...

CardNumber

...

The credit card number that appears on the credit card

...

VarChar(24)

...

CardExpiry

...

The expiry month and year of the credit card. Format required: 042002 where the first two digits represents the month and the last four represents the year in the following format MMYYYY. For recurring transactions see here.

...

VarChar(6)

...

CVV

...

The credit card CVV number. Maximum length is 4 and the numbers must be positive integer. For recurring transactions see here.

...

VarChar(4)

...

NameOnCard

...

The full names that appears on the credit card, e.g. John Doe

...

VarChar(64)

...

BudgetPeriod

...

The budget term of payment. This indicates whether buyer wishes to pay once off, or spread the period of payment over several months. The period of payment starts at 0 (once off payment), 6 months, 12 months etc. Maximum 60 months

...

Integer

...

AmountInCents

...

Amount in cents for payment method. Format as 1000 for R10.00

...

Integer

...

Payment Methods – Credit Card (with handshake/token authentication)

...

pmID

...

The time-expired unique reference for the payment method of the user

...

VarChar (64)

...

CVV

...

The credit card CVV number. Maximum length is 4 and the numbers must be positive integer

...

VarChar(4)

...

AmountInCents

...

Amount in cents for payment method. Format as 1000 for R10.00

...

Integer

...

Payment Methods - EFT

...

BankName

...

Name of the bank the customer is paying into

...

VarChar (64)

...

Payment Methods - Loyalty

...

Information

...

Payment method name (example: Loyalty program name)

...

VarChar (64)

...

MembershipNumber

...

Membership number of a loyalty scheme

...

VarChar (64)

...

AmountInCents

...

Amount in cents for payment method. Format as 1000 for R10.00

...

Integer

...

Payment Methods – PayU Wallet (with handshake/token authentication)

...

pmID

...

The token obtained for the user from the LookupTransaction (PAYMENT_METHODS) call.

...

VarChar (64)

...

AmountInCents

...

The value of the transaction. Set to zero if you wish to only accept loyalty as payment

...

Integer

...

LoyaltyAmountInCents

...

The value of the transaction that may be paid for using loyalty

...

Integer

...

Custom Fields

...

Key

...

Identification for custom field

...

VarChar (64)

...

Value

...

Value for custom field

...

VarChar (64)

Required Fields for Request

...

 

...

RESERVE

...

RESERVE_CANCEL

...

PAYMENT

...

FINALIZE

...

CREDIT

...

DoTransaction Request

...

Api

...

Y

...

Y

...

Y

...

Y

...

Y

...

Safekey

...

Y

...

Y

...

Y

...

Y

...

Y

...

TransactionType

...

Y

...

Y

...

Y

...

Y

...

Y

...

AuthenticationType

...

N(3)

...

N

...

N(3)

...

N

...

N

...

storePaymentMethod

...

N

...

N

...

N(4)

...

N

...

N

...

Additional Information

...

MerchantReference

...

Y

...

Y

...

Y

...

Y

...

Y

...

PayUReference

...

NA

...

Y

...

NA

...

Y

...

Y

...

DemoMode

...

N

...

NA

...

N

...

NA

...

NA

...

NotificationURL

...

N

...

N

...

N

...

N

...

N

...

Basket

...

Description

...

Y

...

NA

...

Y

...

NA

...

NA

...

AmountInCents

...

Y (1)

...

Y

...

Y(1)

...

Y (1,2)

...

Y (1,2)

...

CurrencyCode

...

Y

...

Y

...

Y

...

Y

...

Y

...

Customer

...

FirstName

...

N

...

N

...

N

...

N

...

N

...

LastName

...

N

...

N

...

N

...

N

...

N

...

RegionalId

...

N

...

N

...

N

...

N

...

N

...

Mobile

...

N

...

N

...

N

...

N

...

N

...

Email

...

N

...

N

...

N

...

N

...

N

...

MerchantUserId

...

N

...

N

...

N(4)

...

N

...

N

...

DOB

...

N

...

N

...

N

...

N

...

N

...

Payment Methods – Loyalty

...

Information

...

NA

...

NA

...

NA

...

Y

...

NA

...

MermbershipNumber

...

NA

...

NA

...

NA

...

Y

...

NA

...

AmountInCents

...

NA

...

NA

...

NA

...

Y

...

NA

...

Payment Methods - Credit Card

...

CardNumber

...

Y

...

NA

...

Y

...

NA

...

NA

...

CardExpiry

...

Y

...

NA

...

Y

...

NA

...

NA

...

CVV

...

Y

...

NA

...

Y

...

NA

...

NA

...

NameOnCard

...

Y

...

NA

...

Y

...

NA

...

NA

...

BudgetPeriod

...

N

...

NA

...

N

...

NA

...

NA

...

AmountInCents

...

Y

...

Y

...

Y

...

Y

...

Y

...

Custom Fields

...

Key

...

N

...

N

...

N

...

N

...

N

...

Value

...

N

...

N

...

N

...

N

...

N

...

Y - Mandatory

...

N - Optional

...

NA - Not Allowed

...

 

...

(1) Basket Amount must equal sum of PaymentMethod Amount's

...

(2) Amount must equal to or less than the original transaction amount

(3) Field is required to be set to HANDSHAKE if payment is being made with PayU wallet or stored credit card

(4) Field is required when doing a transaction with a TOKEN or to generate a TOKEN

...

 

 

...

Reason Code

Definitions / Master card international

01  Requested transaction data Not received
02     Requested/Required item illegible or missing
07      Warning Bulletin file
08      Requested/Required authorization  Not  obtained
12    Account number Not on file
31      Transaction amount differs
34    Duplicate processing
35      Card not valid or Expired
37    No cardholder authorization
40     Fraudulent processing of transactions
41      Cancelled recurring transaction
42     Late presentment
46      Correct transaction Currency code not provided
47    Exceeds floor limit- Not  authorized  and fraudulent transaction
49      Questionable merchant activity
50 Credit Posted as a Purchase
53      Cardholder dispute – Defective/ Not as described
55     Non-receipt of  Merchandise
57     Card-activated Telephone transaction
59     Services Not rendered
60     Credit not processed
62    Counterfeit transaction magnetic stripe POS fraud
63     Cardholder does not recognize – Potential fraud
4870 Chip Liability Shift
Reason CodesDefinitions / Visa international and local banks
60  Illegible fulfilment
75Requested transaction data Not received
79 Requested transaction data Not received
57    Fraudulent multiple transactions
62     Chip liability Shift / Counterfeit transaction
81    Fraud – card Present environment ( Will request edc voucher)
83   Fraud – card Absent environment ( manual transactions, will request zip –zap voucher )
93     Risk identification service
70   Card recovery bulletin
71    Declined authorization
72    No authorization
73    Expired card
78  Service code violation
74     Late Presentment
76      Incorrect currency or Transaction code or Domestic transaction processing violation
77     None –matching account number
80    Incorrect transaction amount or account number
82    Duplicate Processing
84   Unsigned slip
86      Paid by other means
88     Split sales
89    Unauthorised signature/ card not signed
96     Transaction exceeds limited amount
41    Cancelled recurring transaction
53   Not as described or Defective merchandise
85    Credit Not processed
30    Service not provided or merchandise not received
90  Non-receipt of cash ( ATM transaction )