# Transaction Status Query API
## Overview
Through this interface you can query the status of the receipt order
The API access is over HTTPS, and accessed from the `https://www.lipapay.com/api/queryExcashierOrder.htm`
## Interface content
### Send Message Endpoint
#### Product ENV
```
https://www.lipapay.com/api/queryExcashierOrder.htm
```
#### Sandbox ENV
```
api url: http://www.lipapay.net/api/queryExcashierOrder.htm
merchant url: http://www.lipapay.net
merchant id: test
password:1234567890
key: Gw416RCMO8tD5MSUg5dok5uQGvR3rPpx
```
### Request Method
HTTP POST
### Request Parameters
| Field Name | Type | Required | Description |
| --------------- | ------ | ------ | ---------------------------------------- |
| merchantId | string | Y| It's created by LipaPay. Please contact via info@lipapay.com |
| signType| string | Y| Sign type. (e.g. MD5)|
| sign| string | Y| The signed content is obtained by signing algorithm |
| merchantOrderNo | string | N| The merchant platform order number, It must be unique |
## Response
Judge the errorCode value.The query is successful if errorCode is "000000" . You must see the paymentStatus.
### Response Data Type
application/json
### Response Parameters
| Field Name | Type | Required | Description|
| --------------- | ------ | ------ | ---------------------- |
| merchantId | string | N | It's created by LipaPay |
| merchantOrderNo | String | N | The merchant platform order number |
| orderId | string | Y | LipaPay SN|
| amount | string | Y | Order Amount |
| paymentStatus | string | N | Payment Status |
| paymentTime | string | N | Payment Time |
| sign| string | Y | Sign Content |
| signType| string | Y | Sign Type |
| errorCode | string | Y | Query Response Code|
| errorMsg| string | Y | Query Response Message |
Examples:
```
{
"amount": "100",
"errorCode": "000000",
"errorMsg": "SUCCESS",
"excashierOrderId": "K1707281831521819729",
"merchantId": "2016051112014649173095",
"merchantOrderNo": "CLCUV46KATBERY2T",
"paymentStatus": "WaitPayment",
"paymentTime": "",
"sign": "97fad6372a6b5984929bf82f292074da",
"signType": "MD5"
}
Successfull response
{
"amount": "100",
"errorCode": "000000",
"errorMsg": "SUCCESS",
"excashierOrderId": "K1707281825410543683",
"merchantId": "2016051112014649173095",
"merchantOrderNo": "YYN16F52F7UHIUMH",
"paymentStatus": "Successful",
"paymentTime": "1501237675",
"sign": "525e0552671f6174d94af09e4a82fa82",
"signType": "MD5"
}
Fail response
{
"amount": "",
"errorCode": "300101",
"errorMsg": "ORDER_NOT_EXISTS",
"excashierOrderId": "",
"merchantId": "2016051112014649173095",
"merchantOrderNo": "YYN16F52F7UHIUM",
"paymentStatus": "",
"paymentTime": "",
"sign": "2f8ff7d70b4b6d99efcc84614abb5fd5",
"signType": "MD5"
}
```
## Signature rule
1.In accordance with the ASCII sort, add the encrypted key after the sorted content.
Example:
```
merchantId=2016051112014649173095&merchantOrderNo=YYN16F52F7UHIUMH&signType=MD5He4AXjdOmq1G2YH3RKVSS4kqU5VFa4aK
```
Signed content is:
```
a812622d76aa7c982770c5c5f9bfc2f0
```
## Error code
| Error Code | Description|
| --------- | ------------------------------ |
| 000000| Order query is successful |
| 300101| Order doesn't exists |