要約

  • draft-ietf-regext-balance-03は、ログイン中のEPPクライアントに複数の財務口座を返す読み取り専用マッピングを提案する。まだRFCではなく、導入実績でもない。
  • Balance Available、Cash Balance、Credit Line、Execution Limit、Notification Thresholdは、同じ「残高」の別名ではない。
  • <info>応答はその瞬間の表示であり、資金予約でも次のコマンドへの許可でもない。実際の判断は後続コマンドの応答に残る。

運用事故は、赤字より緑色の表示から始まることがある。残高欄が正なら、自動処理は登録や更新をまとめて送ってよいと判断しやすい。しかし草案の数式を読むと、その「正」がどの口座の何を基準にした値かを先に問わなければならない。

Balance AvailableはCredit LineとCash Balanceの合計である。Credit Lineは、サーバーが有効と認める信用手段から計算する。通常の信用枠や緊急信用が含まれ得るため、期限切れや取り消しで現金移動なしに減る。Cash Balanceは、支払い、引き出し、料金や税を含む課金の借方・貸方で変わる。合計値は利用可能性を表すが、次の処理のために隔離された資金ではない。

課金対象の将来コマンドを止める値はExecution Limitである。基準はBalance AvailableまたはCash Balanceで、明示がなければ前者となる。正の限度は、残額がゼロになる前に受付を止める。自動更新などサーバー側から生じる費用の余地を残せるからだ。負の限度は逆に、選択した値がゼロを下回っても一定範囲の実行を認める。同じ800という表示でも、停止線が違えば通過能力は違う。

Notification Thresholdは停止線ではなく警戒線である。値が到達または下回ると、サーバーは対象Balanceについて低残高のpollメッセージを一つ入れる。Execution Limitと同じ基準を使う必要はあるが、同じ金額である必要はない。通知を受け取ったことは、コマンド拒否、請求額の正しさ、支払い不能、決済のいずれも証明しない。

改訂03では、一つのクライアントとサーバーの関係に複数Balanceを持てる。例えばTLDごとにFOO、BAR、BAZという口座を置き、USDとEURを混在させられる。名前はその関係内で一意であり、低残高通知も複数口座を特定できる。監視が名前や通貨を捨てれば、正しい数値を誤った契約面に結び付けることになる。

多通貨の内訳は検証可能性を高める。cashBalanceByCurrencyには元通貨、元の金額、主通貨への直接表示レートを記録でき、換算後の合計はCash Balanceに一致しなければならない。ただし、そのレートは報告値を説明するもので、次の取引の約定レートや請求・決済レートを固定しない。

この限界はEPPの構造にも表れている。RFC 5730は読み取り専用の照会と、オブジェクトを変更する変換コマンドを分ける。Balanceマッピングは<info>と低残高<poll>を定義する一方、Balanceのcreate、update、renew、delete、transferは定義しない。照会から将来コマンドまでを結ぶ予約ID、有効期限、原子的な事前条件もない。

したがって、照会後に別の課金、返金、入金、引き出し、信用枠変更、自動更新が入れば状態は動く。後続コマンドには別の応答が必要であり、その応答が受付と処理の証拠になる。以前の照会は、認証済みクライアントにサーバーがその時点で何を示したかの証拠にとどまる。

認証にも境界がある。草案は財務情報を機密とし、ログイン中のクライアント本人の情報だけにアクセスを制限するよう求める。閲覧権限は、会計計算、信用政策、為替、請求、社内の支出権限の正しさまでは保証しない。

改訂03は2026年9月24日付のREGEXT作業部会Internet-Draftで、Standards Trackを意図している。名前空間、XML Schema、IANA登録要求は相互運用の提案であり、最終承認、特定事業者の実装、採用率、運用結果を意味しない。

出典