Table of Contents

Class ApDepositAddressWithRequestedValueRequest

Namespace
AkashicPaySDK.Model
Assembly
AkashicPaySDK.dll

Represents a request to generate a deposit address (rather than a URL) for a user-specified currency and amount on a given blockchain network.

public class ApDepositAddressWithRequestedValueRequest : ApValidatableRequest
Inheritance
ApDepositAddressWithRequestedValueRequest
Inherited Members

Remarks

Typical flow:

  1. The client builds and submits this DTO.
  2. The server returns an on-chain address where the user can send the exact amount.
  3. The deposit service listens for the on-chain payment, then correlates it by ReferenceId or Identifier.

Properties

Identifier

Unique identifier for the user or wallet initiating the deposit. Required and must not be blank.

public string Identifier { get; }

Property Value

string

MarkupPercentage

Optional markup percentage applied on top of RequestedAmount.

public double? MarkupPercentage { get; }

Property Value

double?

Network

Blockchain network on which the deposit address should be generated (e.g., Tron, Ethereum). Required.

public BaseNetworkSymbol Network { get; }

Property Value

BaseNetworkSymbol

ReferenceId

Optional reference ID to correlate the deposit in external systems.

public string ReferenceId { get; }

Property Value

string

RequestedAmount

Exact amount the user intends to deposit. Required and must be strictly greater than zero.

public double RequestedAmount { get; }

Property Value

double

RequestedCurrency

Currency in which the user is requesting to deposit. Required.

public ApCurrencySymbol RequestedCurrency { get; }

Property Value

ApCurrencySymbol

Token

Token symbol representing the on-chain asset (e.g., USDT_TRON). Required.

public ApTokenSymbol Token { get; }

Property Value

ApTokenSymbol

Methods

Validate()

Validates the request fields.

Subclasses should override this method to implement custom validation logic. If any parameter is invalid, this method should throw an APException.

public override void Validate()