{"id":466,"date":"2022-03-31T17:24:50","date_gmt":"2022-03-31T09:24:50","guid":{"rendered":"https:\/\/sit-open-doc.jkos.app\/?docs=%e7%b7%9a%e4%b8%8a%e6%94%af%e4%bb%98onlinepay\/api%e5%88%97%e8%a1%a8\/%e4%bb%a3%e7%a2%bc%e6%84%8f%e7%be%a9"},"modified":"2026-02-06T16:47:38","modified_gmt":"2026-02-06T08:47:38","slug":"%e4%bb%a3%e7%a2%bc%e6%84%8f%e7%be%a9","status":"publish","type":"docs","link":"https:\/\/open-doc.jkos.com\/?docs=%e7%b7%9a%e4%b8%8a%e6%94%af%e4%bb%98onlinepay\/api%e5%88%97%e8%a1%a8\/%e4%bb%a3%e7%a2%bc%e6%84%8f%e7%be%a9","title":{"rendered":"\u4ee3\u78bc\u610f\u7fa9 API Response Code"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udccb-\u91cd\u8981\u8aaa\u660e\uff1a\u6b04\u4f4d\u5927\u5c0f\u5beb\u5dee\u7570\">\ud83d\udccb \u91cd\u8981\u8aaa\u660e\uff1a\u6b04\u4f4d\u5927\u5c0f\u5beb\u5dee\u7570<\/h2>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>API \u985e\u578b<\/strong><\/th><th><strong>result \u6b04\u4f4d<\/strong><\/th><th><strong>message \u6b04\u4f4d<\/strong><\/th><th><strong>result_object \u6b04\u4f4d<\/strong><\/th><th><strong>Result Code \u985e\u578b<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Platform APIs<\/strong><\/td><td><code>result<\/code> (\u5c0f\u5beb)<\/td><td><code>message<\/code> (\u5c0f\u5beb)<\/td><td><code>result_object<\/code> (\u5c0f\u5beb)<\/td><td>\u5b57\u4e32 (&#8220;000&#8221;, &#8220;999&#8221;)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"1.-OnlinePay-Platform-APIs\">Platform APIs<\/h2>\n\n\n\n<p><strong>\u91cd\u8981<\/strong>: \u6240\u6709 Platform APIs \u4f7f\u7528\u4ee5\u4e0b Response \u683c\u5f0f\uff1a(\u5c0f\u5beb\u6b04\u4f4d: <code>result<\/code>, <code>message<\/code>, <code>result_object<\/code>)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">{<br>  \"result\": \"string\",<br>  \"message\": \"string or null\",<br>  \"result_object\": object or null<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"1.1-POST-\/platform\/entry\">1.1 POST \/platform\/entry<\/h3>\n\n\n\n<p><strong>\u529f\u80fd<\/strong>\uff1a\u8a02\u55ae\u5efa\u7acb<\/p>\n\n\n\n<p><strong>\u6240\u6709\u53ef\u80fd\u7684 Response<\/strong>\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>result<\/strong><\/th><th><strong>message<\/strong><\/th><th><strong>result_object<\/strong><\/th><th><strong>\u89f8\u767c\u689d\u4ef6<\/strong><\/th><\/tr><\/thead><tbody><tr><td><code>\"000\"<\/code><\/td><td><code>null<\/code><\/td><td><code>{payment_url, qr_img, qr_timeout}<\/code><\/td><td>\u6210\u529f\u5efa\u7acb\u4ed8\u6b3e\u9023\u7d50<\/td><\/tr><tr><td><code>\"101\"<\/code><\/td><td><code>\"Order is paid\"<\/code><\/td><td><code>null<\/code><\/td><td>\u8a02\u55ae\u5df2\u4ed8\u6b3e<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Bad request\"<\/code><\/td><td><code>{\u52d5\u614b\u8a0a\u606f\uff1a\u6703\u8aaa\u660e\u54ea\u4e9b\u6b04\u4f4d\u8cc7\u6599\u932f\u8aa4\u539f\u56e0}<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Store not found\"<\/code><\/td><td><code>null<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<br>store_id \u8cc7\u6599\u932f\u8aa4<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Using the currency unsupported by the Store\"<\/code><\/td><td><code>null<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<br><code>currency<\/code> \u8cc7\u6599\u932f\u8aa4<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Entry of this store needs identity verification\"<\/code><\/td><td><code>null<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<br>\u8a72 store \u8a02\u55ae\u9700\u8981\u9a57\u8b49 <code>identities<\/code> \u8cc7\u6599<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Order has been used as entry but they do not match with each others\"<\/code><\/td><td><code>null<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<br>\u540c\u4e00 <code>platform_order_id<\/code> \u865f\u78bc\uff0c\u4f46\u662f\u591a\u6b21 request \u7684 <code>store_id<\/code>, <code>currency<\/code>, <code>total_price<\/code> , <code>final_price<\/code> \u8cc7\u6599\u4e0d\u4e00\u81f4\u6642\u6703\u89f8\u767c<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Invalid number of digits for the order currency amount\"<\/code><\/td><td><code>null<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<br>\u4f9d\u64da <code>currency<\/code> \u8207 <code>total_price<\/code>, <code>final_price<\/code> \u5c0f\u6578\u9ede\u6aa2\u6838\u7570\u5e38\u6642\u89f8\u767c<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Order price below limit for this currency\"<\/code><\/td><td><code>null<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<br>\u7576 <code>total_price<\/code>, <code>final_price<\/code> \u5c0f\u65bc\u8a72\u5916\u5e63 <code>currency<\/code> \u6700\u4f4e\u91d1\u984d\u6642\u6642\u89f8\u767c<br><code>JPY = 5<\/code><br><code>USD = 0.02<\/code><br><code>CNY = 0.11<\/code><br><code>HKD = 0.13<\/code><\/td><\/tr><tr><td><code>\"999\"<\/code><\/td><td><code>\"Internal Error\"<\/code><\/td><td><code>null<\/code><\/td><td>\u8857\u53e3\u65b9\u7cfb\u7d71\u51fa\u73fe\u975e\u9810\u671f\u932f\u8aa4<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><strong>\u6210\u529f result_object \u7d50\u69cb<\/strong>\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">{<br>  \"payment_url\": \"https:\/\/...\",<br>  \"qr_img\": \"https:\/\/...qr_code.png\",<br>  \"qr_timeout\": 600<br>}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"1.6-POST-\/platform\/refund\">1.2 POST \/platform\/refund<\/h3>\n\n\n\n<p><strong>\u529f\u80fd<\/strong>\uff1a\u8a02\u55ae\u9000\u6b3e<\/p>\n\n\n\n<p><strong>\u6240\u6709\u53ef\u80fd\u7684 Response<\/strong>\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>result<\/strong><\/th><th><strong>message<\/strong><\/th><th><strong>result_object<\/strong><\/th><th><strong>\u89f8\u767c\u689d\u4ef6<\/strong><\/th><\/tr><\/thead><tbody><tr><td><code>\"000\"<\/code><\/td><td><code>null<\/code><\/td><td>\u9000\u6b3e\u8cc7\u8a0a\u7269\u4ef6<\/td><td>\u6210\u529f\u5efa\u7acb\u9000\u6b3e<\/td><\/tr><tr><td><code>\"100\"<\/code><\/td><td><code>\"Invaid Order ID\"<\/code><\/td><td><code>null<\/code><\/td><td>\u8a02\u55ae\u4e0d\u5b58\u5728<\/td><\/tr><tr><td><code>\"102\"<\/code><\/td><td><code>\"Order has excessed 180 days cannot be refunded\"<\/code><\/td><td><code>null<\/code><\/td><td>\u8d85\u904e\u9000\u6b3e\u671f\u9650<\/td><\/tr><tr><td><code>\"105\"<\/code><\/td><td><code>\"Inconsistent remain amount\"<\/code><\/td><td><code>null<\/code><\/td><td>\u5269\u9918\u91d1\u984d\u4e0d\u4e00\u81f4<\/td><\/tr><tr><td><code>\"105\"<\/code><\/td><td><code>\"Inconsistent refund amount\"<\/code><\/td><td><code>null<\/code><\/td><td>\u9000\u6b3e\u91d1\u984d\u4e0d\u4e00\u81f4\uff0c\u5169\u6b21 request \u4f7f\u7528\u540c\u4e00\u500b <code>refund_order_id<\/code> \u4f46 <code>refund_amount<\/code> \u4e0d\u540c\u6642\u89f8\u767c<\/td><\/tr><tr><td><code>\"111\"<\/code><\/td><td><code>\"Transaction has been closed\"<\/code><\/td><td><code>null<\/code><\/td><td>\u4ea4\u6613\u5df2\u95dc\u9589 (\u5df2\u95dc\u5e33)<\/td><\/tr><tr><td><code>\"113\"<\/code><\/td><td><code>\"Refund reject due to refund amount exceeds total unreimbursed amount.\"<\/code><\/td><td><code>null<\/code><\/td><td>\u5546\u5bb6\u9918\u984d\u4e0d\u8db3<\/td><\/tr><tr><td><code>\"116\"<\/code><\/td><td><code>\"JKOPAY coupon reimbursement failed, please contact JKOPAY for assistance in refund\"<\/code><\/td><td><code>null<\/code><\/td><td>\u9000\u6b3e\u5931\u6557 (Coupon)<\/td><\/tr><tr><td><code>\"117\"<\/code><\/td><td><code>\"JKOPAY Coupon is used in this transaction, and we will only accept full refund\"<\/code><\/td><td><code>null<\/code><\/td><td>\u4f7f\u7528 Coupon \u7684\u8a02\u55ae\u50c5\u63a5\u53d7\u5168\u984d\u9000\u6b3e<\/td><\/tr><tr><td><code>\"200\"<\/code><\/td><td><code>\"Invalid number of digits for the order currency amount\"<\/code><\/td><td><code>null<\/code><\/td><td>BadParams (\u53c3\u6578\u932f\u8aa4)<br>\u4f9d\u64da <code>currency<\/code> \u8207 <code>total_price<\/code>, <code>final_price<\/code> \u5c0f\u6578\u9ede\u6aa2\u6838\u7570\u5e38\u6642\u89f8\u767c<\/td><\/tr><tr><td><code>\"922\"<\/code><\/td><td><code>\"Refund amount exceeds order final price\"<\/code><\/td><td><code>null<\/code><\/td><td>\u9000\u6b3e\u91d1\u984d\u8d85\u904e\u53ef\u9000\u6b3e\u91d1\u984d<\/td><\/tr><tr><td><code>\"922\"<\/code><\/td><td><code>{\u52d5\u614b\u8a0a\u606f}<\/code><\/td><td><code>null<\/code><\/td><td>\u9000\u6b3e\u5931\u6557<br>\u932f\u8aa4\u8a0a\u606f\u53c3\u8003 <code>message<\/code> \u56de\u50b3\u8cc7\u8a0a<\/td><\/tr><tr><td><code>\"978\"<\/code><\/td><td><code>\"Closed account can't use JKOPay's service, please contact the JKOPay's customer service.\"<\/code><\/td><td><code>null<\/code><\/td><td>\u5e33\u6236\u7121\u6cd5\u4f7f\u7528\u8857\u53e3\u670d\u52d9<\/td><\/tr><tr><td><code>\"999\"<\/code><\/td><td><code>\"Internal Error\"<\/code><\/td><td><code>null<\/code><\/td><td>\u8857\u53e3\u65b9\u7cfb\u7d71\u51fa\u73fe\u975e\u9810\u671f\u932f\u8aa4<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"1.5-GET-\/platform\/inquiry\">1.3 GET \/platform\/inquiry<\/h3>\n\n\n\n<p><strong>\u529f\u80fd<\/strong>\uff1a\u8a02\u55ae\u67e5\u8a62<\/p>\n\n\n\n<p><strong>\u6240\u6709\u53ef\u80fd\u7684 Response<\/strong>\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>result<\/strong><\/th><th><strong><strong>message<\/strong><\/strong><\/th><th><strong>result_object<\/strong><\/th><th><strong>\u89f8\u767c\u689d\u4ef6<\/strong><\/th><\/tr><\/thead><tbody><tr><td><code>\"000\"<\/code><\/td><td><code>null<\/code><\/td><td><code>{transactions: [...]}<\/code><\/td><td>\u6210\u529f\u67e5\u8a62 (\u542b\u6240\u6709\u8a02\u55ae\u72c0\u614b)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><strong>transactions \u9663\u5217\u4e2d\u6bcf\u7b46\u8a02\u55ae\u7684 status<\/strong>\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>0<\/code> &#8211; \u4ea4\u6613\u6210\u529f (transaction success)<\/li>\n\n\n\n<li><code>100<\/code> &#8211; \u4ed8\u6b3e\u5931\u6557 (payment fail)<\/li>\n\n\n\n<li><code>101<\/code> &#8211; \u8a02\u55ae\u5c1a\u672a\u4ed8\u6b3e (order has not been paid)<\/li>\n\n\n\n<li><code>102<\/code> &#8211; \u8a02\u55ae\u7de8\u865f\u4e0d\u5b58\u5728 (order number does not exist)<\/li>\n<\/ul>\n\n\n\n<p><strong>result_object \u7d50\u69cb (TWD \u8a02\u55ae)<\/strong>\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">{<br>  \"transactions\": [<br>    {<br>      \"platform_order_id\": \"ORDER_001\",<br>      \"status\": 0,<br>      \"tradeNo\": \"J2025010100000000001\",<br>      \"trans_time\": \"2025-01-15 14:30:00\",<br>      \"currency\": \"TWD\",<br>      \"final_price\": \"1000\",<br>      \"redeem_amount\": \"0\",<br>      \"redeem_detail\": {<br>        \"jko_coin_amount\": 0,<br>        \"official_coupon_amount\": 0,<br>        \"store_coupon_amount\": 0<br>      },<br>      \"debit_amount\": \"1000\",<br>      \"invoice_vehicle\": \"\/ABCDABC\",<br>      \"channel_type\": \"bank\",<br>      \"refund_history\": [...]<br>    }<br>  ]<br>}<\/code><\/pre>\n\n\n\n<p><strong>result_object \u7d50\u69cb (\u975e TWD \u8a02\u55ae)<\/strong>\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">{<br>  \"transactions\": [<br>    {<br>      \"platform_order_id\": \"ORDER_002\",<br>      \"status\": 0,<br>      \"tradeNo\": \"J2025010100000000002\",<br>      \"trans_time\": \"2025-01-15 14:30:00\",<br>      \"currency\": \"JPY\",<br>      \"final_price\": \"1230\",<br>      \"redeem_amount\": \"0\",<br>      \"redeem_detail\": {<br>          \"jko_coin_amount\": 0,<br>          \"official_coupon_amount\": 0,<br>          \"store_coupon_amount\": 0<br>      },<br>      \"debit_amount\": \"249\",<br>      \"invoice_vehicle\": \"\",<br>      \"channel_type\": \"bank\",<br>      \"refund_history\": [...]<br>    }<br>  ]<br>}<\/code><\/pre>\n\n\n\n<p><\/p>\n","protected":false},"featured_media":0,"parent":44,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","doc_tag":[],"class_list":["post-466","docs","type-docs","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=\/wp\/v2\/docs\/466","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=\/wp\/v2\/types\/docs"}],"replies":[{"embeddable":true,"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=466"}],"version-history":[{"count":14,"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=\/wp\/v2\/docs\/466\/revisions"}],"predecessor-version":[{"id":1708,"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=\/wp\/v2\/docs\/466\/revisions\/1708"}],"up":[{"embeddable":true,"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=\/wp\/v2\/docs\/44"}],"next":[{"title":"\u8a02\u55ae\u5275\u5efa Entry API","link":"https:\/\/open-doc.jkos.com\/?docs=%e7%b7%9a%e4%b8%8a%e6%94%af%e4%bb%98onlinepay\/api%e5%88%97%e8%a1%a8\/%e8%a8%82%e5%96%ae%e5%89%b5%e5%bb%ba-api","href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=\/wp\/v2\/docs\/426"}],"wp:attachment":[{"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=466"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/open-doc.jkos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdoc_tag&post=466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}