Visa Payments Limited - Merchant Payments API

Models

Enumerations

Action

Used when you have to perform a specific action on a resource. e.g. validate

Name Description
validate validate a resource(currently used for 'user' resource only)

 

Additional Information

Provides additional detail about a money movement

Name Description
UniqueTransactionId Unique Transaction Id
InstructedCurrency Instructed Currency
InstructedAmount Instructed Amount
SettledCurrency Settled Currency
SettledAmount Settled Amount
SettledDate Settled Date
DebitCreditIndicator Debit/Credit Indicator
TransactionType Transaction Type
TransactionNarrative Transaction Narrative
AdditionalNarrative Additional Narrative
OriginatorBank Originator Bank
OriginatorAccountNumber Originator Account Number
OriginatorNameAddressCombined Originator Name-Address Combined
OriginatorAccountName Originator Account Name
OriginatorAddress Originator Address
OriginatorCity Originator City
OriginatorCountry Originator Country
OriginatorDOB Originator Date Of Birth
OriginatorNationalId Originator National Id
BeneficiaryNameAddressCombined Beneficiary Name-Address Combined
BeneficiaryName Beneficiary Name
BeneficiaryDOB Beneficiary Date Of Birth
BeneficiaryNationalId Beneficiary National Id
BeneficiaryAddress Beneficiary Address
BeneficiaryCity Beneficiary City
BeneficiaryCountry Beneficiary Country

 

Beneficiary Bank Account Field Input

Supported input types for a bank registration UI.

Name      Description
text        Text UI field.
list        List UI field.

    

Beneficiary Identity Field Input

Supported input types for a beneficiary identity UI.

Name Description
text Text UI field.
date Date UI field.
number Number UI field.
list List UI field.

    

FX Method

Method of FX that will be used to settle the payout request.

Name Description
no fx No FX Used.
forward fx Forward FX Used.
fx on receipt FX on receipt.

 

Grant Type

OAuth2.0 grant type

Name Description
client_credentials OAuth2.0 client credentials grant type

 

ID Type

Type of resource ID (UID) to be used for the API call.

Name Description
earthport {default} Uses VPL generated unique identifier (UID).
merchant Uses your own unique identifier (UID), however you must specify you are using your own UID by setting idType to merchant. Example: " /transactions/{transactionID}?idType=merchant "

 

Identity Entity

Supported identity entity types.

Name Description
legalEntity Legal Entity such as a company.
individual Individual person.

 

Money Movement Type

Specifies whether a money movement is a debit or credit.

Name Description
Debit Debit type money movement.
Credit Credit type money movement.

 

Payer Type

The type of Payer making the payment. This determines which identity details are used as the payer identity.

Name Description
authenticatedCaller Payout is being requested on behalf of the requesting merchant.
managedMerchant Payout is being requested on behalf of a managed merchant.
user Payout is being requested on behalf of a user.

 

Requested FX

Method of FX that is requested by the merchant and for which EPS2 will attempt to use in order to settle the payout request.

Name Description
FF (Fixed to Fixed) is where no FX will be performed as payout and beneficiary currencies are the same.
FV FV (Fixed to Variable) uses the supplied payout request amount in order to determine the beneficiary amount.
VF VF (Variable to Fixed) uses the supplied beneficiary amount in order to determine the payout amount.

 

Service Level

Supported service levels for a payout request (standard or express).

Name Description
standard Standard service level payments.
express Express service level payments.

 

Sort Order

Specifies an order sequence.

Name Description
ASC Sort result set by chosen field in ASCENDING order.
DESC Sort result set by chosen field in DESCENDING order.

 

Transaction Type

Type of financial transaction

Name Description
Payout A financial transaction representing a payout from an account held in the EPS system.
Refund A financial transaction representing a refund (by a bank or other third-party) to the merchant's account.
User Deposit A financial transaction representing money paid into a merchant's account by a user.
Merchant Liquidity Deposit Financial transaction representing a deposit of liquidity (money) into a merchant account.
Earthport to Merchant Liquidity Transfer Financial transaction representing the transfer of liquidity from a VPL account to a Merchants Central account.
Merchant Liquidity Movement A financial transaction representing movement of funds between a merchant's accounts held in the EPS system.
Journal Financial transaction representing a journal entry against an account.
Generic Transaction A generic financial transaction used to represent different types of transactions in the EPS system that do not have their own specific mappings in the schema.

 

Unstructured Key Names

List of all of the Key Name Fields used within Unstructured Identity. Key Fields below are the minimum requirements, but additional route-specific requirements may apply - please refer to the VPL Payment Guide for more information.

Name Description
IdentityType I (Individual) or C (Legal Entity) - (OPTIONAL for both Payer and Beneficiary)
Name Full name including First Name, Middle Name and Surname. (MANDATORY for both Payer and Beneficiary)
AddressLine1 Address Line 1 (MANDATORY for Payer - IF ADDRESS INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary)
Country ISO Country Code (2 digits) - Address Line 1 (MANDATORY for Payer - IF ADDRESS INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary)
DATE_OF_BIRTH (MANDATORY for Payer - IF BIRTH INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary)
ISO_COUNTRY_CODE_OF_BIRTH (MANDATORY for Payer - IF BIRTH INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary)
PASSPORT_NUMBER (MANDATORY for Payer - IF ID INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary) For Payer you can provide either of the ID Information listed; PASSPORT_NUMBER, DRIVING_LICENSE_NUMBER, NATIONAL_ID_CARD, EMIRATES_ID, GCC_ID and LABOUR_CARD.
ISO_COUNTRY_CODE_ID_ISSUER (MANDATORY for Payer - IF ID INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary)
LEGAL_ENTITY_REG_NUM (MANDATORY for Payer - IF LEGAL ENTITY INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary)
LEGAL_ENTITY_REG_COUNTRY_PROVINCE (MANDATORY for Payer - IF LEGAL ENTITY INFORMATION BLOCK PROVIDED, OPTIONAL for Beneficiary)
PAYER_ACCOUNT_NUMBER (MANDATORY for Payer, OPTIONAL for Beneficiary)

 

Exceptions

Validation Exception

VPL custom validation exception to handle validation errors. This will be the structure of the payload for various HTTP 4xx errors.

Name Description

timeOfFailure 

Required

String

 

Timestamp of the failure.

 

failureType 

Required

String

 

Type of failure - will always be validation.
Default: validation

 

shortMsg 

Required

String

 

Short descriptive message of the error.

 

longMsg 

Required

String

 

More descriptive message of the error.

 

code 

Required

Long

 

An VPL specific error code.

 

uniqueErrorID 

Required

String

 

A VPL generated unique error ID.

 

failures 

Required

array<Failure>

 

An array of validation failures. For instance, if this error is during the creation or validation of a bank account, then each failure could relate to each individual bank account field validation error.