402 支付所需

HTTP **402 Payment Required** 客戶端錯誤響應 狀態碼是 **非標準** 響應狀態碼,保留供將來使用。

該狀態碼的建立是為了啟用數字現金或(微)支付系統,並表明請求的內容在客戶端付款之前不可用。沒有標準的使用約定,不同的系統在不同的上下文中使用它。

狀態

http
402 Payment Required

示例

支付 API 故障

某些支付 API 使用 402 響應作為對失敗的支付請求的通用捕獲所有錯誤。以下示例嘗試使用 POST 請求來呼叫支付 API 以啟動交易

http
POST /merchant/transfers/payment HTTP/1.1
Host: payments.example.com
Content-Type: application/json
Content-Length: 402

{
  "payment_transfer": {
    "reference": "PAYMENT123456",
    "amount": "1337",
    "currency": "EUR",
    "sender_account_uri": "pan:5299920000000149;exp=2020-08;cvc=123",
    "sender": {
      "first_name": "Brian",
      "middle_name": "Smith",
      "email": "test123@sender.example.com"
    },
    "recipient": {
      "first_name": "John",
      "middle_name": "Tyler",
      "email": "test123@example.com",
      "merchant_id": "123"
    },
    "authentication_value": "ucaf:jJJLtQa+Iws8AREAEbjsA1MAAAA",
  }
}

如果交易出現問題,伺服器將使用 402 響應請求,在本例中,卡已過期

http
HTTP/1.1 402 Payment Required
Date: Tue, 02 Jul 2024 12:56:49 GMT
Content-Type: application/json
Content-Length: 175

{
  "error": {
    "code": "expired_card",
    "doc_url": "https://example.com/error-codes#expired-card",
    "message": "The card has expired. Verify expiration or use a different card.",
  }
}

規範

規範
HTTP 語義
# status.402

相容性說明

此狀態碼是 *保留的*,但未定義。實際實現中響應的格式和內容會有所不同。沒有瀏覽器支援 402,錯誤將顯示為通用的 4xx 狀態碼。

另請參閱