{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/gnu-taler/json-schema/gnu-taler-put-deposit-confirmation-request-schema.json",
  "title": "PutDepositConfirmationRequest",
  "x-generated": "2026-10-28",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_ae-authored/gnu-taler-openapi-generated.yml#/components/schemas/PutDepositConfirmationRequest",
  "type": "object",
  "properties": {
    "h_contract_terms": {
      "type": "string",
      "description": "Hash over the contract for which this deposit is made."
    },
    "h_policy": {
      "type": "string",
      "description": "Hash over the policy concerning this deposit."
    },
    "h_wire": {
      "type": "string",
      "description": "Hash over the wiring information of the merchant."
    },
    "exchange_timestamp": {
      "type": "string",
      "description": "Time when the deposit confirmation was generated."
    },
    "refund_deadline": {
      "type": "string",
      "description": "How much time does the merchant have to issue a refund request?"
    },
    "wire_deadline": {
      "type": "string",
      "description": "By what time does the exchange have to wire the funds?"
    },
    "total_without_fee": {
      "type": "string",
      "description": "Amount to be deposited, excluding fee."
    },
    "coin_pubs": {
      "type": "string",
      "description": "Array of public keys of the deposited coins."
    },
    "coin_sigs": {
      "type": "string",
      "description": "Array of deposit signatures of the deposited coins."
    },
    "merchant_pub": {
      "type": "string",
      "description": "The Merchant's public key."
    },
    "exchange_sig": {
      "type": "string",
      "description": "Signature from the exchange."
    },
    "exchange_pub": {
      "type": "string",
      "description": "Public signing key from the exchange matching exchange_sig."
    },
    "ep_start": {
      "type": "string",
      "description": "When does the validity of the exchange_pub start?"
    },
    "ep_expire": {
      "type": "string",
      "description": "When will the exchange stop using the signing key?"
    },
    "ep_end": {
      "type": "string",
      "description": "When does the validity of the exchange_pub end?"
    },
    "master_sig": {
      "type": "string",
      "description": "Exchange master signature over exchange_sig."
    }
  },
  "required": [
    "h_contract_terms",
    "h_policy",
    "h_wire",
    "exchange_timestamp",
    "refund_deadline",
    "wire_deadline",
    "total_without_fee",
    "coin_pubs",
    "coin_sigs",
    "merchant_pub",
    "exchange_sig",
    "exchange_pub",
    "ep_start",
    "ep_expire",
    "ep_end",
    "master_sig"
  ]
}