# getDepositUrl

Given a user-identifier, this function will create wallets on all supported networks via AkashicChain for the user to deposit into, and return a URL to display them

* If you want to track an individual deposit made to any of the generated address, include [`referenceId`](https://docs.akashicpay.com/guides/identifier-and-referenceid)&#x20;
* If the URL should only display a select choice of currencies, include them in a list as `receiveCurrencies`&#x20;
  * If you want to change the type of currencies at a later time, just re-generate the URL via the SDK using the same parameters (but different `receiveCurrencies` ).&#x20;
* If you want precisely specify the amount that should be deposited for tracking purposes, perhaps in a different currency than the deposit will be made in (even fiat), include `requestedAmount` and `requestedCurrency` . See more [here](https://docs.akashicpay.com/guides/requested-amount-and-currency)

## <mark style="color:blue;">Example</mark>

Get deposit URL for `user123`

{% tabs %}
{% tab title="TypeScript" %}

```javascript
const depositUrl = await akashicPay.getDepositUrl(
  'user123', // identifier
  'orderId', // optional referenceId
  [Currency.USDT], // optional currencies to be displayed
  [NetworkSymbol.Tron], // optional network allowed
  "https://example.com" // optional redirectUrl
);

// with requestedAmount, requestedCurrency and markupPercentage
const { address, identifier } = await akashicPay.getDepositUrlWithRequestedValue(
  'user123', // identifier
  'orderId', // referenceId
  Currency.USD, // requested currency
  "1000", // requested amount
  [Currency.USDT], // optional currencies to be displayed
  [NetworkSymbol.Tron], // optional network allowed
  1, // optional mark up percentage on exchange rate
  "https://example.com" // optional redirectUrl
);
```

{% endtab %}

{% tab title="PHP" %}

```php
$depositUrl = $akashicPay->getDepositUrl(
  'user123', // identifier
  'order1', // optional referenceId
  array(CurrencySymbol::USDT), // optional currencies to be displayed
  array(NetworkSymbol::Tron), // optional network allowed
  "https://example.com" // optional redirectUrl
);

// with requestedAmount, requestedCurrency and markupPercentage
$depositAddress = $akashicPay->getDepositUrlWithRequestedValue(
  'user123', // identifier
  'orderId', // referenceId
  Currency::USD, // requested currency
  "1000", // requested amount
  array(CurrencySymbol::USDT), // optional currencies to be displayed
  array(NetworkSymbol::Tron), // optional network allowed
  1, // optional mark up percentage on exchange rate
  "https://example.com" // optional redirectUrl
);
```

{% endtab %}

{% tab title="Java" %}

```java
APDepositUrlResult depositAddress = akashicPay.getDepositUrl(
  'user123', // identifier
  'order1', // optional referenceId
  Arrays.asList(APCurrencySymbol.USDT, APCurrencySymbol.ETH), // optional currencies to be displayed
  Arrays.asList(APNetworkSymbol.ETH), // optional network allowed
  "https://example.com" // optional redirectUrl
);

// with requestedAmount, requestedCurrency and markupPercentage
APDepositUrlWithRequestedValueRequest request =APDepositUrlWithRequestedValueRequest.builder()
  .identifier("identifier") // identifier
  .referenceId("refId") // referenceId
  .requestedCurrency(APCurrencySymbol.USD) // requested currency
  .requestedAmount(100.0) // requested amount
  .receiveCurrencies(Arrays.asList(APCurrencySymbol.USDT, APCurrencySymbol.ETH)) // optional currencies to be displayed
  .networkSymbols(Arrays.asList(APNetworkSymbol.ETH)) // optional network allowed
  .markupPercentage(10.0) // optional mark up percentage on exchange rate
  .redirectUrl("redirectUrl") // optional redirectUrl
  .build();
APDepositUrlResult result = sdk.getDepositUrlWithRequestedValue(request);
```

{% endtab %}

{% tab title="C#" %}

```csharp
var depositUrl = await akashicPay.GetDepositUrlAsync(
  "user123", // identifier
  "order1", // optional referenceId
  [ApCurrencySymbol.Eth, ApCurrencySymbol.Usdt], // optional currencies to be displayed
  [TronShastaNetworkSymbol.Value], // optional network allowed
  "https://example.com" // optional redirectUrl
);

// with requestedAmount, requestedCurrency and markupPercentage
var request = new ApDepositUrlWithRequestedValueRequest.Builder()
  .SetIdentifier("identifier") // identifier
  .SetReferenceId("refId") // referenceId
  .SetRequestedCurrency(ApCurrencySymbol.HKD) // requested currency
  .SetRequestedAmount(100.0) // requested amount
  .SetReceiveCurrencies([ApCurrencySymbol.Eth, ApCurrencySymbol.Usdt]) // optional currencies to be displayed
  .SetNetworkSymbols([TronShastaNetworkSymbol.Value]) // optional network allowed
  .SetMarkupPercentage(10.0) // optional mark up percentage on exchange rate
  .SetRedirectUrl("redirectUrl") // optional redirectUrl
  .Build();

var result = await sdk.GetDepositUrlWithRequestedValueAsync(request);
```

{% endtab %}

{% tab title="Go" %}

```go
depositUrl, err := ap.GetDepositUrl(
  "user123", // identifier
  "order1", // optional referenceId 
  []akashicpay.CryptoCurrency{akashicpay.CryptoUSDT}, // optional currencies to be displayed 
  []akashicpay.Network{akashicpay.Tron}, // optional network allowed
  "https://example.com" // optional redirectUrl
)

// with requestedAmount, requestedCurrency and markupPercentage
depositUrl, err := ap.GetDepositUrlWithRequestedValue(
  "user123", // identifier
  "order1", // optional referenceId 
  []akashicpay.CryptoCurrency{akashicpay.CryptoUSDT}, // optional currencies to be displayed 
  []akashicpay.Network{akashicpay.Tron}, // optional network allowed
  "https://example.com", // optional redirectUrl
  akashicpay.CurrencyUSD, // requested currency
  "1000", // requested amount
  0 // optional mark up percentage on exchange rate
)
```

{% endtab %}
{% endtabs %}

## <mark style="color:blue;">Example deposit URL/QR code view for end-client</mark>

<figure><img src="https://1693597560-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqPYtEENfsAn8w0oFPcJI%2Fuploads%2FpSxbZdvaNwEiBvVGKBxu%2Fimage.png?alt=media&#x26;token=4dd545a1-dc4f-4fa2-969b-135afd531272" alt=""><figcaption></figcaption></figure>
