查詢商店定期購訂單列表
GET /subscriptions
- 正式環境:
https://payment-api.oen.tw/subscriptions - 測試環境:
https://payment-api.testing.oen.tw/subscriptions
列出的是應援商店的「定期購」訂單,不是用 Payment API 建立的定期定額。只有在應援商店販售訂閱制商品的商家才需要。Payment API 定期定額請用查詢定期定額明細。依建立時間由新到舊,每頁最多 50 筆;用 status 篩選時,一頁可能少於 50 筆但仍有下一頁。
Header 帶 Authorization: Bearer <token> 。token 的取得方式見驗證與 token。
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
status | string | 選填 | 用逗號分隔的狀態。不帶就是全部。 可用值: ongoing、cancelled、done、error、retryScheduled範例: ongoing,retryScheduled |
page | string | 選填 | 下一頁的分頁標記。把上一頁回應的 page 原封不動帶入。 |
範例一律打測試環境。把 OEN_API_TOKEN 設成測試環境 CRM 產生的 token。
curl -X GET "https://payment-api.testing.oen.tw/subscriptions?status=ongoing" \ -H "Authorization: Bearer $OEN_API_TOKEN"const res = await fetch("https://payment-api.testing.oen.tw/subscriptions?status=ongoing", { method: "GET", headers: { Authorization: `Bearer ${process.env.OEN_API_TOKEN}`, },});
const result = await res.json();if (result.code !== "S0000") { throw new Error(`${result.code} ${result.message}`);}<?php$ch = curl_init('https://payment-api.testing.oen.tw/subscriptions?status=ongoing');curl_setopt_array($ch, [ CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => [ 'Authorization: Bearer ' . getenv('OEN_API_TOKEN'), ],]);
$result = json_decode(curl_exec($ch), true);if ($result['code'] !== 'S0000') { throw new Exception($result['code'] . ' ' . $result['message']);}import osimport requests
res = requests.request( "GET", "https://payment-api.testing.oen.tw/subscriptions?status=ongoing", headers={"Authorization": f"Bearer {os.environ['OEN_API_TOKEN']}"}, timeout=30,)
result = res.json()if result["code"] != "S0000": raise RuntimeError(f"{result['code']} {result['message']}")| HTTP | 說明 |
|---|---|
200 | 回傳定期購訂單列表與下一頁代碼 |
401 | token 錯誤 |
| 欄位 | 型別 | 出現 | 說明 |
|---|---|---|---|
subscriptions | array | 一定有 | 定期購訂單 |
idsubscriptions[].id | string | 可能沒有 | 訂單的內部 id |
statussubscriptions[].status | string | 可能沒有 | ongoing 進行中、retryScheduled 待重扣、error 扣款失敗、cancelled 已取消、done 已完成 |
itemssubscriptions[].items | array | 可能沒有 | 訂購的商品 |
totalAmountsubscriptions[].totalAmount | number | 可能沒有 | 每期金額 |
periodsubscriptions[].period | integer | 可能沒有 | 已扣期數 |
numberOfPeriodssubscriptions[].numberOfPeriods | integer | 可能沒有 | 總期數 |
lastChargedAtsubscriptions[].lastChargedAt | string | 可能沒有 | 最近一次扣款時間(台北時間,帶 +08:00) |
usersubscriptions[].user | object | 可能沒有 | 訂購人 { name, email } |
createdAtsubscriptions[].createdAt | string | 可能沒有 | 建立時間 |
cancelledAtsubscriptions[].cancelledAt | string | 可能沒有 | 取消時間 |
endedAtsubscriptions[].endedAt | string | 可能沒有 | 結束時間(台北時間,帶 +08:00) |
page | string | null | 一定有 | 下一頁的分頁標記;沒有下一頁時是 null |
| 錯誤碼 | HTTP | 什麼時候會發生 |
|---|---|---|
V0001 | 400 | status 值不正確 |
A0001 | 401 | token 錯誤 |
完整清單與處理方式見錯誤碼一覽。
Payment API 建立的定期定額請用查詢定期定額明細。
導覽助手暫停服務中。請使用右上角的搜尋,或聯絡客服。
我可以幫你選擇收款方式、回答 API 串接與 CRM 操作問題,並附上文件出處。
