Namespace Xrpl.Client.Json.Converters
Classes
AssetPriceConverter
Converts AssetPrice values between numeric and hexadecimal string representation. When writing, converts ulong to lowercase hex string without leading zeros. When reading, accepts both hex strings and numeric values.
CreatedNodeConverter
CurrencyConverter
currency json converter
DeletedNodeConverter
DictionaryObjectConverter
Converts System.Collections.Generic.Dictionary<TKey, TValue> using primitive CLR types
instead of System.Text.Json.JsonElement.
System.Text.Json by default deserializes object values as System.Text.Json.JsonElement,
which breaks code that expects string, int, or nested dictionaries.
XrplBinaryCodec and wallet signing rely on primitive CLR types in dictionaries.
EnumMemberValueConverter<T>
Serializes/deserializes enums using System.Runtime.Serialization.EnumMemberAttribute.Value
when present, falling back to the enum member name (case-insensitive read).
Replaces JsonStringEnumConverter for enums decorated with
[EnumMember(Value = "...")].
FromStringDateTimeConverter
GatewayBalancesResponseConverter
GenericStringConverter<T>
generic object json converter
IssuedCurrencyConverter
issued currency json converter
LOConverter
BaseLedgerEntry json converter
LONFTokenConverter
BaseLedgerEntry json converter
LedgerBinaryConverter
LedgerEntity or LedgerBinaryEntity converter
LedgerEntryTypeConverter
Converts LedgerEntryType enum to/from JSON strings. Unknown enum values are deserialized as Unknown instead of throwing, preserving forward compatibility with new ledger object types.
LedgerIndexConverter
LedgerIndex json converter
MetaBinaryConverter
Meta json converter
ModifiedNodeConverter
NodeConverterBase<TNode>
NumberOrStringConverter
Reads a JSON value that may be either a number or a string and always returns it as a string.
Useful for fields like ledger_index which some API methods return as a quoted integer
and others return as a native JSON number.
OracleCurrencyConverter
Converts Oracle currency identifiers (BaseAsset/QuoteAsset) following XRPL Currency rules: standard codes are exactly three characters as plain strings; nonstandard codes use 40-character hex (see Currency formats). Serialization matches CurrencyToHex(string).
OracleHexStringConverter
Converts Oracle string fields (Provider, AssetClass, URI) to/from hexadecimal ASCII representation.
PermissionValueConverter
Converts a Delegate permission entry, whose only field is PermissionValue. rippled returns that value as a name string in JSON responses (a transaction type name or a granular permission name) but accepts both forms on input; the binary codec always uses the numeric form. Transaction-type permissions have value = transaction type code + 1.
The converter works on the whole entry rather than the value alone because a name this version cannot map has no number to fall back to: it is kept in PermissionValueName instead, which a converter bound to the numeric property could not reach. A node gains permission names with every amendment, so an unmapped name is ordinary data from an up-to-date node, not malformed input.
QueuedTransactionTxConverter
Serializes queued_transaction.tx as either a transaction hash string or a JSON object
(expanded transaction or tx_blob wrapper), matching rippled ledger queue responses.
RippleDateTimeConverter
Ripple datetime converter
ScientificDecimalConverter
Handles decimal values that may arrive in scientific notation (e.g. 1e-05). System.Text.Json does not natively parse scientific notation into decimal, so this converter reads the raw value and uses decimal.Parse with appropriate styles.
ServerFeaturesConverter
StringOrArrayConverter
string or array json converter
TransactionOrHashConverter
Hash Or Transaction json converter
TransactionRequestConverter
Transaction json Converter
TransactionResponseConverter
Transaction json Converter
TransactionTypeConverter
Converts TransactionType enum to/from JSON strings.
Unknown enum values are deserialized as Unknown
instead of throwing, preserving the previous behavior where
serializer.Populate() tolerated unrecognized enum values.
UInt64HexJsonConverter
UInt64StringJsonConverter
UnixDateTimeConverter
Converts a DateTime to and from a Unix timestamp (seconds since the Unix Epoch).