pub struct Payment {
pub destination: Option<String>,
pub tx_id: Option<String>,
pub timestamp: u32,
pub amount_sat: u64,
pub fees_sat: u64,
pub swapper_fees_sat: Option<u64>,
pub payment_type: PaymentType,
pub status: PaymentState,
pub details: PaymentDetails,
}
Expand description
Represents an SDK payment.
By default, this is an onchain tx. It may represent a swap, if swap metadata is available.
Fields§
§destination: Option<String>
The destination associated with the payment, if it was created via our SDK. Can be either a Liquid/Bitcoin address, a Liquid BIP21 URI or an invoice
tx_id: Option<String>
§timestamp: u32
Composite timestamp that can be used for sorting or displaying the payment.
If this payment has an associated swap, it is the swap creation time. Otherwise, the point
in time when the underlying tx was included in a block. If there is no associated swap
available and the underlying tx is not yet confirmed, the value is now()
.
amount_sat: u64
The payment amount, which corresponds to the onchain tx amount.
In case of an outbound payment (Send), this is the payer amount. Otherwise it’s the receiver amount.
fees_sat: u64
Represents the fees paid by this wallet for this payment.
§Swaps
If there is an associated Send Swap, these fees represent the total fees paid by this wallet (the sender). It is the difference between the amount that was sent and the amount received.
If there is an associated Receive Swap, these fees represent the total fees paid by this wallet (the receiver). It is also the difference between the amount that was sent and the amount received.
§Pure onchain txs
If no swap is associated with this payment:
- for Send payments, this is the onchain tx fee
- for Receive payments, this is zero
swapper_fees_sat: Option<u64>
Service fees paid to the swapper service. This is only set for swaps (i.e. doesn’t apply to direct Liquid payments).
payment_type: PaymentType
If it is a Send
or Receive
payment
status: PaymentState
Composite status representing the overall status of the payment.
If the tx has no associated swap, this reflects the onchain tx status (confirmed or not).
If the tx has an associated swap, this is determined by the swap status (pending or complete).
details: PaymentDetails
The details of a payment, depending on its destination and type
Trait Implementations§
impl IntoDartExceptPrimitive for Payment
impl StructuralPartialEq for Payment
Auto Trait Implementations§
impl Freeze for Payment
impl RefUnwindSafe for Payment
impl Send for Payment
impl Sync for Payment
impl Unpin for Payment
impl UnwindSafe for Payment
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request