Union Pay API

UPOP Flow

For information about the API endpoints, please refer to the Integration Manual.

UPOP Authentication Flow

UPOP Authentication Flow

UPOP Inquiry Flow

UPOP Inquiry Flow

Schema

Note that the schema for the Union Pay includes the Union Pay schema (UnionPay.xsd) to refer to Union Pay protocol messages used in the response structures.

AuthReqCreationRequest samples

There are two possibilities to transfer the merchant data to the UPOP:

  • Merchant configured via the Admin (aka General Merchant Direct Access)
  • Merchant configuration data passed in the AuthReqCreationRequest (aka Acquirer Access)

Merchant configured via the Admin (aka General Merchant Direct Access)

The re quired merchant.id needs to be passed in the AuthReqCreationRequest and it needs to match the id of the configured Merchant.

The required data to be passed in the AuthReqCreationRequest consists of:

  • merchant.id
  • merchant.accessType
  • purchase.amount
  • purchase.currency
  • purchase.time
  • purchase.relatedTransactionType
  • cardholder.accountNumber
  • cardholder.channelType

Optional is:

  • cardholder.ipAddress
  • purchase.description
  • purchase.orderId

AuthReqCreationRequest (minimum valid JSON)

AuthReqCreationRequest (JSON/XML)

AuthReqCreationRequest (POST parameters)

Merchant configuration data in AuthReqCreationRequest (aka Acquirer Access)

If Merchant data is available in the client's Payment Environment, there is a possibility for it to be passed as part of the AuthReqCreationRequest, instead of configuring it via the Admin.

The required data to be passed in the AuthReqCreationRequest consists of:

  • merchant.id
  • merchant.accessType
  • merchant.acquiringInstitutionCode
  • merchant.category
  • merchant.name
  • merchant.abbreviation
  • purchase.amount
  • purchase.currency
  • purchase.time
  • purchase.relatedTransactionType
  • cardholder.accountNumber
  • cardholder.channelType

Optional is:

  • cardholder.ipAddress
  • purchase.description
  • purchase.orderId

AuthReqCreationRequest & Merchant data (minimum valid JSON)

AuthReqCreationRequest & Merchant data (JSON/XML)

AuthReqCreationRequest & Merchant data (POST parameters)

AuthReqCreationResponse samples

AuthReqCreationResponse (JSON)

AuthReqCreationResponse (XML)

AuthResValidationRequest samples

In order to verify the contents in the Authentication Response, values from the Authentication Request are needed. This data can be:

  • cached internally, or
  • could by provided externally through the API in the sessionData element.

Cached internally

AuthResValidationRequest (JSON/XML)

AuthResValidationRequest (POST parameters)

Provided externally through the API

AuthResValidationRequest & Session data (JSON/XML)

AuthResValidationRequest & Session data (POST parameters)

AuthResValidationResponse samples

AuthResValidationResponse (JSON)

AuthResValidationResponse (XML)

AuthStatusInquiryRequest samples

To query the authentication status of a request, a AuthStatusInquiryRequest is sent to MPI.

AuthStatusInquiryRequest (JSON/XML)

AuthStatusInquiryRequest (POST parameters)

AuthStatusInquiryResponse samples

AuthStatusInquiryResponse (JSON)

AuthStatusInquiryResponse(XML)