IOSOR 知識庫

無效的 MSISDN 絕對不能進行扣款

了解 IOSOR 平台如何在入口處攔截無效的 E.164 電話號碼,防止錯誤的帳本扣款並保護您的預付餘額。

無效的 MSISDN 絕對不能進行扣款.

入口驗證與下游失敗的區別

當路由高流量的 SMS 或 OTP 流量時,區分入口處的無效目的地址與下游傳遞失敗,對財務完整性至關重要。無效的 MSISDN 必須在任何帳本交易發生之前,於 API 閘道器被立即拒絕。如果無效號碼繞過了入口檢查,它可能會產生帶有未知狀態的下游 DLR,這看起來像是支出但實際上沒有任何投遞。IOSOR 實施嚴格的驗證規則來防止這種情況,確保您的餘額受到保護,免受錯誤目的地格式的侵害。此外,當涉及到靜音時間 (quiet hours) 的合規限制時,入口驗證能確保在不允許發送的時間段內,系統不會對無效號碼進行不必要的排程。這避免了因無效號碼佔用發送隊列而導致的通道吞吐量浪費,並確保合規機制只作用於真實有效的訂閱者。

E.164 解析引擎

每個針對行動號碼的 API 請求都會根據全球 E.164 標準進行即時解析。平台會檢查國家代碼、國內目的地代碼以及訂閱者號碼的長度。如果格式無效,閘道器會立即返回 HTTP 400 Bad Request。這種即時驗證確保了不存在的路由路徑在分配資源或應用任何預付保留之前就被阻擋。這個機制可以防止無效號碼觸發會產生隱藏成本的下游電信商查詢。

帳本規則與預付保留

為了維持健康的餘額,IOSOR 使用即時帳本。當接受有效的 SMS 請求時,您的餘額上會放置一個臨時的預付保留。如果訊息成功路由,保留將轉化為扣款。然而,如果號碼在入口處被標記為無效,則不會創建保留,並且零餘額被扣除。這保護了您的 USD 20 預付底線不被格式錯誤目的地字串侵蝕。我們的預付錢包保留 (prepaid wallet holds) 機制在 API 接收請求的瞬間即啟動,精確鎖定該筆交易所需要的額度。如果您的帳戶餘額低於 USD 20 最低餘額限制 (USD 20 floor),系統將拒絕新的發送請求,以防止因高吞吐量併發而導致帳戶透支。對於規模擴大的帳戶,接近每月 USD 1,000 的溫和審查有助於優化路由表並調整專用資源的 MRC 限制。

Webhook 酬載與錯誤代碼

當訊息在入口處被拒絕時,API 回應包含特定的錯誤酬載。您的應用程式不會等待非同步的 DLR webhook,而是會立即收到同步錯誤。此酬載包含無效參數和清晰的拒絕代碼。對於有效的號碼,系統將分配路由路徑並透過 webhook 發送狀態更新,包括 STOP 和 Verify OK 事件,從而確保對您的訊息傳遞管線具有完全的透明度,而不會浪費 API 週期。為了確保 DLR/Webhook 真實狀態 (DLR/webhook truth) 的一致性,IOSOR 不會對未通過驗證的號碼生成虛假的投遞回執。所有的退訂同步 (opt-out sync) 狀態也會即時反映在 Webhook 酬載中。當用戶觸發 STOP 指令時,該號碼將被立即同步至黑名單,後續針對該號碼的請求將在入口處被直接攔截並返回對應的錯誤代碼,從而徹底杜絕無效的發送嘗試與不必要的扣款。

開發人員資源與整合

為了建立可避免不必要支出的強大整合,開發人員應在呼叫 API 之前實施客戶端驗證。請查看這些基本指南以優化您的實施:

從 IOSOR 開始

在沙箱 POST 一個缺國碼的目的地,再 POST 一個長度不可能的號碼。應得到 HTTP 400,ledger 不動——沒有 hold,沒有扣款。再送一個合法 E.164,確認 hold 只在 accept 之後出現。若無效那對已經動了錢,入口解析就壞了。

IOSOR 要點

入口的格式拒絕不是投遞失敗。無效 MSISDN 絕不該開 hold。要做:錢動之前先解析 E.164。不要:等一則 unknown DLR 來解釋本不該存在的扣款。號碼沒成形,ledger 就該安靜。

這篇指南有幫助嗎?

相關指南