---
title: Initialize
slug: fiat-docs/UQoE-initialize
docTags: 
createdAt: 2023-10-19T09:13:19.307Z
---

## React App Dependencies&#x20;

The Pay3 react native sdk `@pay3/sdk-react-native` needs additional libraries to be added to app's package.json namely `@react-native-async-storage/async-storage` and `react-native-webview`. These provide native support in Android and iOS devices.

```javascript
  "dependencies": {
    "@pay3/sdk-react-native": "^1.0.6",
    "@react-native-async-storage/async-storage": "^1.21.0",
    "react-native-webview": "^13.6.4"
  }
```

## initPay3()

This function initialises Pay3 SDK to support Fiat Checkout flow.

<u>Pay3 team</u> shares values for `hostname`, `clientId` and `firebaseConfigs` during onboarding. Following parameters can be used for creating new instance of Pay3.&#x20;

**Parameters**

1. **hostname**: Pay3 will be opened in a new window using this hostname prefix. The host name is environment dependent.&#x20;
2. **clientId**: A unique client id is created for each client application. The client id is environment dependent.
3. **isPaymentMode** : Pass `true` for fiat checkout in payments only mode.&#x20;
4. **firebaseConfigs**: JSON config for firebase realtime database. This is used to publish realtime events to the app.
5. **appDeepLink**:  This string in the form of `scheme://resource` can be passed during initalization. This will be used by Pay3 as referrer / redirect intent. The string needs to be whitelisted in Pay3 backend for proper working of the Pay3 services.&#x20;

:::CodeblockTabs
index.js

```javascript
import { initPay3 } from '@pay3/sdk-react-native';
const pay = await initPay3({
  clientId,
  hostname,
  firebaseConfigs, 
  isPaymentMode: true,
  appDeepLink,
});
```
:::




#

