Class Payment
A Payment transaction represents a transfer of value from one account to another.
Inherited Members
Namespace: Xrpl.Models.Transactions
Assembly: Xrpl.dll
Syntax
public class Payment : TransactionRequest, ITransactionRequest, IPayment, ITransactionCommon, IDestination
Constructors
| Edit this page View SourcePayment()
Declaration
public Payment()
Properties
| Edit this page View SourceAmount
API v1
The amount of currency to deliver.
For non-XRP amounts, the nested field names MUST be lower-case.
If the tfPartialPayment flag is set, deliver up to this amount instead.
Alias to DeliverMax
API v2: The maximum amount of currency to deliver.
Partial payments can deliver less than this amount and still succeed;
other payments fail unless they deliver the exact amount.
Declaration
[JsonConverter(typeof(CurrencyConverter))]
public Currency Amount { get; set; }
Property Value
| Type | Description |
|---|---|
| Currency |
CredentialIDs
(Optional) Set of Credentials (object IDs, hex 64-char each) to authorize a deposit when the destination account requires Deposit Authorization with credential-based preauth (XLS-70). Maximum 8 entries.
Declaration
[JsonPropertyName("CredentialIDs")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public List<string> CredentialIDs { get; set; }
Property Value
| Type | Description |
|---|---|
| List<string> |
DeliverMin
Minimum amount of destination currency this transaction should deliver.
Only valid if this is a partial payment.
For non-XRP amounts, the nested field names are lower-case.
Declaration
[JsonConverter(typeof(CurrencyConverter))]
public Currency DeliverMin { get; set; }
Property Value
| Type | Description |
|---|---|
| Currency |
Destination
The unique address of the account receiving the payment.
Declaration
public string Destination { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
DestinationTag
Arbitrary tag that identifies the reason for the payment to the destination, or a hosted recipient to pay.
Declaration
public uint? DestinationTag { get; set; }
Property Value
| Type | Description |
|---|---|
| uint? |
DomainID
The domain the sender intends to use for cross-currency payments through the permissioned DEX. Both sender and destination must be part of this domain if it interacts with the DEX.
Declaration
public string DomainID { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Flags
Payment Transaction Flags
Declaration
public PaymentFlags? Flags { get; set; }
Property Value
| Type | Description |
|---|---|
| PaymentFlags? |
InvoiceID
Arbitrary 256-bit hash representing a specific reason or identifier for this payment.
Declaration
public string InvoiceID { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Paths
Array of payment paths to be used for this transaction.
Must be omitted for XRP-to-XRP transactions.
Declaration
public List<List<Path>> Paths { get; set; }
Property Value
| Type | Description |
|---|---|
| List<List<Path>> |
SendMax
Highest amount of source currency this transaction is allowed to cost, including transfer fees, exchange rates, and slippage.
Does not include the XRP destroyed as a cost for submitting the transaction.
For non-XRP amounts, the nested field names MUST be lower-case.
Must be supplied for cross-currency/cross-issue payments.
Must be omitted for XRP-to-XRP Payments.
Declaration
[JsonConverter(typeof(CurrencyConverter))]
public Currency SendMax { get; set; }
Property Value
| Type | Description |
|---|---|
| Currency |