AutoPay Query Balance Interface(english)
<h3><center>Version</center></h3>
<table>
<thead>
<tr>
<th style="text-align: left;"><center>Ver. No.</center></th>
<th style="text-align: left;"><center>Ver. Date</center></th>
<th style="text-align: left;"><center>Revised By</center></th>
<th><center>Description</center></th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;"><center>1</center></td>
<td style="text-align: left;"><center>2022/04/12</center></td>
<td style="text-align: left;"><center>Chase</center></td>
<td><center>finalized</center></td>
</tr>
</tbody>
</table>
<h3><strong>List</strong></h3>
<h4>一 、Document Description</h4>
<h4>二 、AutoPay</h4>
<pre><code> 1. Query Balance</code></pre>
<hr />
<h3><strong>二、 AutoPay </strong></h3>
<h4><strong>0. Test Environment </strong></h4>
<pre><code> domain: http://pay-test.autopayla.com
appId: 9995283977FB5E7E
key: 48AC10BEB1963BCB8AD4E867EADD73BD</code></pre>
<h4><strong>1. Query Balance </strong></h4>
<p><strong>1.1 Deposit request URL</strong>
<code>URL: domain + /DMAW2KD7/autoPay/queryBalance.zv</code></p>
<p><strong>1.2 HTTP Request: <code>FORM POST</code> </strong>
<strong>1.3 Parameters:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">Parameter</th>
<th style="text-align: left;">Required</th>
<th style="text-align: left;">Sign</th>
<th style="text-align: left;">Length</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">version</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">N</td>
<td style="text-align: left;">4</td>
<td><code>V1.0</code></td>
</tr>
<tr>
<td style="text-align: left;">appId</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">30</td>
<td>Merchant id opened by the merchant on the platform</td>
</tr>
<tr>
<td style="text-align: left;">orderDate</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">14</td>
<td><code>YYYYMMddHHmmss</code> <br>ex:20180529123020</td>
</tr>
<tr>
<td style="text-align: left;">currency</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">50</td>
<td><code>1</code></td>
</tr>
<tr>
<td style="text-align: left;">sign</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">N</td>
<td style="text-align: left;">2048</td>
<td>sign</td>
</tr>
<tr>
<td style="text-align: left;">signType</td>
<td style="text-align: left;">Y</td>
<td style="text-align: left;">N</td>
<td style="text-align: left;">6</td>
<td><code>MD5</code></td>
</tr>
</tbody>
</table>
<p><strong>1.4 MD5 Sign </strong></p>
<p><strong>1.4.1 MD5 Sign Description</strong>
The data to be signed is the parameter with the value of <code>Y</code> in the Sign column (<code>contains empty value</code>) and the key in the above table,Signature order as table in ASCII Sort( <code>CASE SENSITIVE</code> ) from <code>a to z</code>。 The MD5 signature result needs to be converted to uppercase,The original string and format are as follows:</p>
<pre><code class="language-java">appId={appId}&currency={currency}&orderDate={orderDate}&key={key}</code></pre>
<p><strong>1.4.2 MD5 Sign Example:(Ex: appId=1234,key=123456789)</strong></p>
<pre><code class="language-java">appId=1234&currency=1&orderDate=20200830202601&key=123456789</code></pre>
<p>The result of MD5 encryption is <code>30f5e96e7715362c25e0303d3ea683d5</code></p>
<p><strong>1.5 Response </strong>
<strong>1.5.1 Response parameters:</strong></p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Required</th>
<th>Sign</th>
<th>Length</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>code</td>
<td>Y</td>
<td>N</td>
<td>4</td>
<td>Response code,<code>0000</code> indicates that the request was successful.</td>
</tr>
<tr>
<td>msg</td>
<td>Y</td>
<td>N</td>
<td>2048</td>
<td>Response message</td>
</tr>
<tr>
<td>data</td>
<td>Y</td>
<td>N</td>
<td>4096</td>
<td>Response data</td>
</tr>
</tbody>
</table>
<p><strong>1.5.2 Response parameters(data):</strong></p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Required</th>
<th>Sign</th>
<th>Length</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>accountBalance</td>
<td>Y</td>
<td>Y</td>
<td>32</td>
<td>accountBalance</td>
</tr>
<tr>
<td>status</td>
<td>Y</td>
<td>Y</td>
<td>32</td>
<td>Normal:<code>1</code><br>Cancel:<code>2</code><br>Freeze:<code>3</code></td>
</tr>
<tr>
<td>sign</td>
<td>Y</td>
<td>N</td>
<td>2048</td>
<td>sign</td>
</tr>
</tbody>
</table>
<p><strong>Success example</strong></p>
<pre><code class="language-json">{"msg":"请求成功",
"code":"0000",
"data": {
"sign": "BCA8231C2E2BDBCF248F19C97535C2E9",
"accountBalance": "71017.74",
"status": "1"
}
}</code></pre>
<p><strong>Fail example</strong></p>
<pre><code class="language-json">{
"msg": "不支援的货币类型[currency=13]",
"code": "1017",
"data": ""
}</code></pre>