One-Stop Cross-Border Shopping — Shop the World
UnionPay Content & Service Platform (UCSP) for Channel Partner
UnionPay Content & Service Platform (UCSP) for Service Provider
UnionPay Transportation Solutions
UnionPay USSD payment allow merchant to accept cardholder using feature phone and GSM network to make mobile payment. Merchant will display QR code and USSD till number together and the cardholder will choose a preferred payment method. This set of API allows acquirer to manage UnionPay USSD merchant till number.
Open
The platform is open. Merchant USSD till number can be displayed along with merchant QRC. The transaction can be completed with any USSD menu that can support UnionPay USSD payment.
Security
Security is a basic requirement for payments. UPI adopts Tokenization technology which supports risk control for whole transaction process, making sure of safety and preventing leakage of account information.
Integrity
UnionPay USSD payment sticks to 4-party mode which is almost the same with bank card transaction only except for the information interaction. UnionPay USSD payment has almost the same integrated mechanism of business, risk control, techniques as UnionPay QRC payment which makes user's capital secured.
The preconditions for merchants to carry out USSD business are as follows: 1) the connected acquirer can do merchant-presented QR code business; 2) the acquirer must can apply for a till number for the merchant.
When UnionPay QR Code Acquirer institutions want to connect to UnionPay to do USSD merchant management interfaces in order to support USSD payment along with QR Code payment.
Acquirer Apply USSD till number (Acquiring Side)
USSD flowchart applies to following 4 scenarios:
a. When acquirer add a new QR merchant, the acquirer applies for a till number from UPI;
b. When a merchant changes its information, the acquirer should update the till number information;
c. When status of a merchant changes, the acquirer should update till number status.
d. Acquirer can inquiry till number information
Scenario A
1. Acquirer upload the QR code and requests for USSD till number;
2. UPI allocates USSD till number; if UPI rejects, acquirer should revise the request and resend request;
3. Acquirer distributes USSD till number along with its mapping QR code to merchant.
Scenario B
1. Acquirer upload the new QR code, and MID, TID and till number should remains the same;
2. UPI updates the mapping QR code; if UPI rejects, acquirer should revise the request and resend request;
3. Acquirer should ensure that merchant also updates the merchant QR code in store.
Scenario C
1. Acquirer can suspend, activate, or delete a till number;
2. UPI updates till number status; if UPI rejects, acquirer should revise the request and repeat C1;
3. If a till number is deleted, acquirer should ensure that merchant also removes the till number in store.
Scenario D
1. Acquirer sends MID+TID or Till Number;
2. UPI responds till number and QR code payload stored in the UPI server.
Field name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Filed name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Message Response | msgResponse | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Field name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Filed name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||
|
Message Response | msgResponse | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Field name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Filed name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Message Response | msgResponse | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Field name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||
|
Filed name | Identifier | Type | Length | Request | Default value | Note | |||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message Information | msgInfo | Object | M:Mandatory | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Transaction Information | trxInfo | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Message Response | msgResponse | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||||||||||
|
Certificate and Signature | certificateSignature | Object | M:Mandatory | |||||||||||||||||||||||||||||||||||||||||||||||||||
|
1. Till Number Request
When implementing UPI USSD product, an Acquirer shall generate the Merchant-presented QRC payload for a Merchant according to UPI QR Code Encoding Specification_Merchant Presented QRC, and request for the corresponding Merchant’s Till Number, which is used for display on the Merchant side, from the UPI system. The message flow is as follows.
1. After the Acquirer generates a Merchant-presented QRC payload for Merchant, it shall send a TILL_NUMBER_REQUEST request message to the UPI system to apply for a Merchant’s Till Number corresponding to the Merchant-presented QRC payload.
2. The UPI system will check the validity of the QRC payload format. If validated, the UPI system allocates a Merchant’s Till Number for this QRC payload and returns it to the Acquirer in the TILL_NUMBER_REQUEST response message.
Exceptional flow:
• When the Acquirer does not receive the TILL_NUMBER_REQUEST response message within 45 seconds, it can initiate the TILL_NUMBER_INFO_INQUIRY message to check the Till Number mapping information.
2. Till Number Information Update
When the Acquirer intends to update the Merchant-presented QRC payload data that is related to the Merchant’s Till Number, it can submit a request message to the UPI system to update the Till Number mapping information. The message flow is as follows.
1. The Acquirer initiates a TILL_NUMBER_INFO_UPDATE request message to the UPI system to update the Merchant-presented QRC payload data that is related to the Merchant’s Till Number.
2. After the UPI system updates the Merchant-presented QRC payload data, it will returns the result to the Acquirer in the response message.
Exceptional flow:
• When the Acquirer does not receive the TILL_NUMBER_INFO_UPDATE response message within 45 seconds, it can initiate the TILL_NUMBER_INFO_INQUIRY message to check the Till Number mapping information.
3. Till Number Status Update
When the Acquirer intends to update the status of the Merchant’s Till Number, it can submit a Till Number status update request message to the UPI system. The message flow is as follows.
1. The Acquirer initiates a TILL_NUMBER_STATUS_UPDATE request message to the UPI system to update the status of the Merchant’s Till Number.
2. After the UPI system updates the status of the Merchant’s Till Number, it will returns the result to the Acquirer in the response message.
Exceptional flow:
• When the Acquirer does not receive the TILL_NUMBER_STATUS_UPDATE response message within 45 seconds, it can initiate the TILL_NUMBER_INFO_INQUIRY message to check the status of the Merchant’s Till Number.
4. Till Number Information Inquiry
The Acquirer can obtain the information related to the Till Number, e.g., Merchant-presented QRC payload, Till Number status, etc., by initiating an inquiry message to the UPI system. The message flow is as follows.
1. The Acquirer can initiate a TILL_NUMBER_INFO_INQUIRY request message to the UPI system using the Merchant’s Till Number or the combination of Merchant ID and Terminal ID.
2. The UPI system returns the information related to the Merchant’s Till Number in the response message to the Acquirer.
Exceptional flow:
• When the Acquirer does not receive the TILL_NUMBER_INFO_INQUIRY response message within 45 seconds, it can initiate the inquiry again.
The prerequisite of USSD acceptance is merchant-presented QRC acceptance. That is, USSD and merchant-presented QRC acceptance should be enabled at the meantime, both at system level and merchant level. USSD till number should be linked to a static merchant QR code and displayed together with that QR code.
USSD acquiring institution should develop USSD Acquirer Interface refer to Flow Chart 'USSD Acceptance interfaces', in order to support USSD acceptance.Please submit application to Developer team