跳转到主要内容
报价是对挂单的响应——它代表来自贸易伙伴的定价提议。与挂单不同,报价内容是端到端加密的(NIP-44),只有会话中的双方可以读取。加密密钥由发送方的私钥和接收方的公钥派生,这意味着任何节点或第三方都无法解密其内容。 Kind: 2014
发布报价时,客户端必须将原始挂单重新发布到该挂单 "r" 标签中指定的节点 URL。由于挂单是可替换事件(kind 31001),节点可能已不再持有原始版本。重新发布可确保会话对根挂单的引用得以保留。
内容:
{
  "company": "<string - Company name (set by app layer)>",
  "contact": "<string - Contact information>",
  "message": "<string - Quote message or note>",
  "qty": "<int - Quantity being quoted>",
  "unit_price": "<float64 - Unit price for the quoted item>",
  "timing": {
    "lead_time": <string - Lead Time (Optional), supply listings>,
    "required_date": <int64 - Required Date as Unix timestamp (Optional), demand listings>
    "expiry": <int64 - Listing expiry as Unix timestamp (Optional)>
  },
  "terms": {
    "shipping": {
      "incoterm": "<string - Incoterm (e.g. FOB, CIF)>",
      "place": "<string - Place of delivery or shipment>"
    },
    "payment_term": {
      "code": "<string - Payment term code (e.g. NET30)>",
      "currency": "<string - Currency code (e.g. USD)>"
    }
  },
  "meta": "<object - Arbitrary metadata JSON object (type: object, Optional)>",
  "schema_version": "<string - quote schema version"
}
该对象被加密后放入事件的 content 字段中。接收后由接收方解密。 报价标签
[
  ["h", "thread_id"],
  ["n", "material_no"],
  ["m", "manufacturer name"],
  ["y", "supply or demand"],
  ["c", "poster_name"],
  ["b", "any"],
  ["t", "any"],
  ["i", "internal_no"],
  ["c", "any"],

  ["r", "inbox_node_url"],
  ["p", "recipient_pubkey"],
  ["e", "event_id", "", "root"],
  ["u", "user_pubkey1", "user_pubkey2"]
]
  • 报价应当复制挂单的标签。
  • 报价必须在 thread_id "h" 不存在时生成一个——参见会话
  • 报价必须将接收方 "p" 标签设置为挂单事件作者的公钥。
  • 报价必须发布到挂单 "r" 标签指定的收件节点 URL,以及发送方自己的收件节点。