Environment variables
測試能力就緒
在沙盒中,ACH、Wire 與 SWIFT 能力(包括指定銀行與集區式)僅由 JPMorgan Chase(jpmorgan)提供。請求這些能力時若省略 institutions,Swipelux 會選擇 jpmorgan。指定任何其他銀行都會回傳 422 capability_institutions_unsupported。沙盒中的支援能力清單對這些方式僅顯示 jpmorgan。正式環境的路由以及 RTP、Pix 與 SPEI 等其他方式維持不變。
Request a sandbox bank capability
POST /v3/sandbox/customers/{customerId}/capabilities/{capabilityId}/status 設定其沙箱狀態:
Set capability status
status 與 openTaskIds 視為您的產品必須處理的結果。 200 回應仍可能顯示未完成的工作,例如客戶任務或 pending 審核。
當能力因你無法在沙盒中排除的原因而無法達到所請求的狀態時,輔助工具會回傳 409 capability_status_blocked,例如 approval_scope_review_required、營運凍結或終止狀態。問題回應中的 statusReason 包含該能力的原因代碼與訊息,並帶有 retryable: false。請讀取該能力以取得該原因的 resolution。
第二次將指定能力強制設為 rejected 時,會回傳未變更的同一能力。將已拒絕的能力強制設為 restricted 或 ready 會回傳 422 invalid_capability。請改為建立新的沙盒客戶來測試這些狀態。
測試待辦任務
使用POST /v3/sandbox/tasks 建立沙箱任務。將任務限定到您正在測試其工作流程的資源,並使用 items 描述客戶必須提交的內容。本指南示範能力與轉帳工作流程;API 參考定義客戶範圍及完整的請求結構。
文字答覆使用 explanation 項目,檔案上傳使用 document 項目。新的 profile 項目還必須提供 profilePointer,也就是指向客戶欄位的 JSON Pointer。其他項目類型與欄位請參閱建立沙箱任務。
在轉帳範例中,請先透過收款或付款流程建立沙箱轉帳,然後匯出回傳的 data.id:
Transfer ID
- 能力 + 說明
- 轉帳 RFI + 文件
data.id 儲存為 TASK_ID、data.revision 儲存為 TASK_REVISION,並將目前的 data.requirements[0].id 儲存為 REQUIREMENT_ID。呼叫 POST /v3/customers/{customerId}/tasks/{taskId}/submissions 時,請讓答覆與所建立的項目類型一致:
- 說明答覆
- 文件答覆
POST /v3/sandbox/tasks/{taskId}/review 接受或拒絕當前的提交:
Review submission
POST /v3/sandbox/tasks 建立的任務,以及 Swipelux 收集的能力受理任務。審核由營運團隊或其他工作流程擁有的任務會回傳 409 task_not_sandbox_reviewable。該任務仍可透過任務端點讀取,並等待其擁有者審核。404 task_not_found 表示該任務 ID 未知或屬於其他商家。
正式環境的任務完成模式請參閱能力與任務。
為沙箱錢包儲值
使用POST /v3/sandbox/accounts/{accountId}/topup 為發行的錢包儲值:
Top up issued wallet
data.id 儲存為 TRANSFER_ID。
儲值 id 即為轉帳 id。透過 GET /v3/transfers/{transferId} 取得單筆,或透過 GET /v3/transfers 列出,即可用沙箱儲值來驗證您的入金處理程式碼路徑。此轉帳投影為已完成的入金穩定幣存款,origin: "inbound_deposit"、method: "stablecoin_transfers"、direction: "stablecoin_move",並會由對應的 accountId、origin、method 與 direction 清單篩選器回傳。
完成或失敗轉帳
使用POST /v3/sandbox/transfers/{transferId}/state 設定結果:
- 完成
- 失敗