PreparePayFee builds a Canton transaction whose only purpose is to pay a fee — for example a DvP settlement fee or an allocation fee — and returns the prepared transaction hash for the agent to sign locally with its Ed25519 key.
This is the fee-payment counterpart to PrepareTransaction. It follows the same prepare → sign → execute model as ordinary transactions but is scoped to fee-only operations.
When to use it
Use this method when an operation requires a fee leg as a separate signed transaction — for example, beforeProposeDvp or Allocate in the DvP flow. Operations that bundle a fee internally (most multicall and transfer flows) use PrepareTransaction instead.
Request
string
required
Fee kind, e.g.
dvp or alloc.string
Settlement proposal identifier when paying a DvP-related fee.
string[]
Explicit amulet contract IDs to consume for the fee. If omitted, the server selects amulets automatically.
MessageSignature
required
Message-level signature from the cloud agent — see Authentication.
Response
string
Opaque server-assigned ID. Pass this into
ExecutePayFee.string
Hex-encoded Canton transaction hash. This is what the agent must sign.
bytes
Serialised prepared transaction (for deterministic re-hashing if desired).
string
Canton hashing scheme version used to compute the hash.
TrafficEstimate
Estimated Canton traffic the fee transaction will consume.
MessageSignature
Provider signature over the response payload.
See also
ExecutePayFee— phase 2, submit the signed fee transaction.- Transaction flow — the full prepare/sign/execute model used by general transactions.
PayDvpFee,PayAllocFee— high-level operations layered on top of this flow.