Asynchronous Notify
When the payment finish successfully, IOTPay API server will send message to notifyUrl so merchant can update inner order status and do some processing.
Notify Url
Merchant pass notifyUrl
to IOTPay API server via create order API. Make sure this notifyUrl
can be accessed.
Notify Parameters
Name | Type | Sample | Description |
---|---|---|---|
payOrderId | String(30) | P20160427210604000490 | order id assigned by third party payment system |
mchId | String(30) | 20001222 | merchant id assigned by IOTPay |
mchOrderNo | String(30) | 20160427210604000490 | order id assigned by merchant |
channelId | String(24) | WX_JSAPI | see more channels |
currency | String(3) | CAD | 3 letter representation for currency,eg:CAD |
amount | int | 100 | payment amount in cents,eg. $28.65 is 2865 |
status | int | 2 | payment status, currently only return 2 for success |
clientIp | String(32) | 210.73.10.148 | client ip |
device | String(64) | WEB | device id or WEB |
subject | String(64) | product title | |
body | String(256) | product description | |
channelOrderNo | String(64) | wx2016081611532915ae15b00b0167893571 | third party channel order number |
param1 | String(64) | if channelId = WX_JSAPI,will be "mchOrderId" | |
param2 | String(64) | return original value | |
paySuccTime | long | payment success time in ms | |
backType | int | 1 | notify type,1-frontend,need to support redirect; 2-backend,only notify |
sign | String(32) | C380BEC2BFD727A4B6845133519F3AD6 | signature |
Return Result
When merchant backend get notify, just return string success
. After getting success
IOTPay API server will no longer send notify messages, or else will keep notify periodically for several times.
Polling Order Status
For some merchant without backend system, eg. some POS machine, notifyUrl
cannot be utilized. Merchant can get order status by polling, refer to Query Order Status.