Class OnchainReceiveQuoteProfile
- Namespace
- NArk.ArkadeIntents.Rfq.Profiles.Onchain
- Assembly
- NArk.ArkadeIntents.dll
Quote fields of the onchain receive profile — compare-only, never trusted.
public sealed class OnchainReceiveQuoteProfile
- Inheritance
-
OnchainReceiveQuoteProfile
- Inherited Members
Remarks
Two contracts on two rails again, but the funding order is the mirror of the send leg's: the client funds the L1 HTLC first and the solver funds the Arkade lockup against it. So of the two addresses quoted here, HtlcAddress is the one the client actually pays into, and LockupAddress is the one it will later claim from. Both are rebuilt locally and the solver's rendering of either is only ever compared against ours.
Properties
ClaimPubkey
The solver's x-only key (hex) on the L1 HTLC's claim leaf — what it spends with once the client's Arkade claim has published the preimage.
public string? ClaimPubkey { get; init; }
Property Value
Remarks
The role-reversed counterpart of the send leg's htlc_pubkey: there the solver held the
L1 refund role, here it holds the claim role.
HtlcAddress
The solver's derivation of the L1 HTLC address. Compare-only — and this is the one the client funds.
public string? HtlcAddress { get; init; }
Property Value
HtlcLocktime
The L1 HTLC's absolute refund locktime, unix seconds — when the client's own way out opens.
public long? HtlcLocktime { get; init; }
Property Value
- long?
Remarks
Must mature after the solver's Arkade refund, which is the inverse of the send leg's
ordering and follows from the inverted funding order — see OnchainReceiveGates.
LockupAddress
The solver's derivation of the Arkade covenant's address. Compare-only — the solver funds this one, so a mismatch against the local reconstruction means the claim would target the wrong script.
public string? LockupAddress { get; init; }
Property Value
MinConfirmations
How many confirmations the client's L1 funding needs before the solver will act on it.
public int? MinConfirmations { get; init; }
Property Value
- int?
PaymentHash
The payment hash, echoed back from the request.
public string? PaymentHash { get; init; }
Property Value
SolverRefundPkScript
The solver's own refund destination as a P2TR scriptPubKey (hex), which the Arkade covenant's
nonInteractiveRefund leaf pins its payout to.
public string? SolverRefundPkScript { get; init; }
Property Value
Remarks
Compare-only, but also an input: every leaf feeds the merkle root, so the local
reconstruction needs this exact value to reach a matching address. The same role the Lightning
receive leg's solver_refund_pk_script plays, for the same reason — on a leg the solver
funds, its refund destination is the one covenant parameter nothing else on the wire fixes.