Class ArkPayment
- Namespace
- NArk.Abstractions.Payments
- Assembly
- NArk.Abstractions.dll
Tracks an outbound payment — a send from this wallet to a recipient. Links to the underlying protocol object (intent, swap, or on-chain tx) as proof.
public record ArkPayment : IEquatable<ArkPayment>
- Inheritance
-
ArkPayment
- Implements
- Inherited Members
Constructors
ArkPayment(string, string, string, ulong, ArkPaymentMethod, ArkPaymentStatus, string?, DateTimeOffset, DateTimeOffset?)
Tracks an outbound payment — a send from this wallet to a recipient. Links to the underlying protocol object (intent, swap, or on-chain tx) as proof.
public ArkPayment(string PaymentId, string WalletId, string Recipient, ulong Amount, ArkPaymentMethod Method, ArkPaymentStatus Status, string? FailReason, DateTimeOffset CreatedAt, DateTimeOffset? CompletedAt)
Parameters
PaymentIdstringWalletIdstringRecipientstringAmountulongMethodArkPaymentMethodStatusArkPaymentStatusFailReasonstringCreatedAtDateTimeOffsetCompletedAtDateTimeOffset?
Properties
Amount
public ulong Amount { get; init; }
Property Value
Assets
Assets transferred with this payment. Null for BTC-only payments.
public IReadOnlyList<VtxoAsset>? Assets { get; init; }
Property Value
CompletedAt
public DateTimeOffset? CompletedAt { get; init; }
Property Value
CreatedAt
public DateTimeOffset CreatedAt { get; init; }
Property Value
FailReason
public string? FailReason { get; init; }
Property Value
IntentTxId
Intent transaction ID — set when method is ArkSend.
public string? IntentTxId { get; init; }
Property Value
Metadata
Application-level metadata.
public Dictionary<string, string>? Metadata { get; init; }
Property Value
Method
public ArkPaymentMethod Method { get; init; }
Property Value
OnchainTxId
On-chain transaction ID — set when method is CollaborativeExit.
public string? OnchainTxId { get; init; }
Property Value
PaymentId
public string PaymentId { get; init; }
Property Value
Recipient
public string Recipient { get; init; }
Property Value
Status
public ArkPaymentStatus Status { get; init; }
Property Value
SwapId
Swap ID — set when method is SubmarineSwap or ChainSwap.
public string? SwapId { get; init; }
Property Value
WalletId
public string WalletId { get; init; }