Sep31Receive Asset Info
Per-asset configuration advertised by a Receiving Anchor in GET /info.
Bundles transaction limits, fee configuration, SEP-12 customer type requirements, SEP-38 quote availability, and supported funding methods for one Stellar asset the anchor accepts for cross-border payments.
Numeric configuration fields (minAmount, maxAmount, feeFixed, feePercent) are parsed via doubleOrNull so the SDK tolerates anchors that emit either JSON numbers (100) or quoted strings ("100"). These are anchor configuration values (limits and percentages), not transaction amounts; floating-point representation is acceptable for them. Transaction amount fields elsewhere in the SDK remain String? to preserve decimal precision.
Memo-type and funding-method strings are kept verbatim. The SDK does not validate them against any allow-list because the SEP-31 spec is expected to introduce new values over time.
Usage
val info = sep31Service.info(jwt = jwt)
val usdc = info.receiveAssets["USDC"] ?: error("Anchor does not accept USDC")
println("Limits: ${usdc.minAmount} - ${usdc.maxAmount}")
println("Fee: fixed=${usdc.feeFixed}, percent=${usdc.feePercent}")
println("Quotes required: ${usdc.quotesRequired}")
println("Funding methods: ${usdc.fundingMethods}")See also
Constructors
Properties
Percentage fee component charged by the anchor (in percentage points); null when the fee model does not decompose into fixed + percent.
Methods the anchor supports for delivering the off-chain asset (for example SEPA, SWIFT). null when the anchor does not advertise any.
true if the anchor requires a SEP-38 quote_id for off-chain delivery.
true if the anchor optionally accepts a SEP-38 quote_id for off-chain delivery.
Deprecated single receiver SEP-12 type identifier. Use Sep31Sep12TypesInfo.receiverTypes instead.
Deprecated single sender SEP-12 type identifier. Use Sep31Sep12TypesInfo.senderTypes instead.
SEP-12 customer type requirements for sender and receiver. Defaults to empty sender/receiver maps when the anchor omits the per-asset sep12 object — anchors that require no KYC may leave it out entirely. Note: the SEP-31 spec marks the wire sep12 field "(Deprecated, optional)", but the spec prose still recommends sep12.sender.types / sep12.receiver.types over the older flat senderSep12Type / receiverSep12Type fields, and SEP-12 defers customer-type discovery back to the calling protocol with no alternative. The SDK therefore treats this field as canonical (not @Deprecated) despite the schema marker.