# Environment Variables

Create a `.env` file in the root directory with the following variables:

{% code overflow="wrap" %}

```bash
# SERVER CONFIGURATION

## Application port number
## Default: 3018
## Description: The port on which the wallet backend service will run
PORT=3018

## Application environment mode
## Options: development, staging, production
## Description: Controls logging level, database synchronization, and other environment-specific settings
NODE_ENV=development

# WALLET PROVIDER CONFIGURATION

## Wallet provider adapter to use
## Options: dhiway (currently supported)
## Description: Specifies which wallet provider adapter to use for wallet operations
WALLET_PROVIDER=dhiway

# DHIWAY WALLET API CONFIGURATION

## Dhiway API base URL
## Example: https://wallet-api.depwd.onest.dhiway.net
## Description: Base URL for Dhiway wallet API endpoints
DHIWAY_API_BASE=https://dhiway-api-url.example.in

## Dhiway API authentication key
## Example: your-dhiway-api-key-here
## Description: API key for authenticating with Dhiway wallet services
DHIWAY_API_KEY=your-dhiway-api-key-here

## Dhiway VC Issuer instance URI
## Example: https://vc-issuer.example.com
## Description: Base URI for the Dhiway VC issuer service
DHIWAY_VC_ISSUER_INSTANCE_URI=https://vc-issuer.example.in

## Dhiway VC Issuer GET VC base URI
## Example: https://vc-issuer.example.com/vc
## Description: Base URI for fetching VC data from the issuer
DHIWAY_VC_ISSUER_GET_VC_BASE_URI=https://vc-issuer.example.in/vc

## Email address for VC watcher notifications
## Example: watcher@example.com
## Description: Email address used for VC watching and callback notifications
DHIWAY_WATCHER_EMAIL=watcher@example.in

# WALLET SERVICE CONFIGURATION

## Base URL for the wallet service
## Example: http://localhost:3018 (development) or https://wallet-api.yourdomain.com (production)
## Description: Public URL of the wallet service, used for callback URLs and webhooks
WALLET_SERVICE_BASE_URL=http://localhost:3018

# DATABASE CONFIGURATION

## Database host address
## Default: localhost
## Description: PostgreSQL database server hostname or IP address
DB_HOST=localhost

## Database port number
## Default: 5432
## Description: PostgreSQL database server port
DB_PORT=5432

## Database username
## Default: postgres
## Description: Username for database authentication
DB_USERNAME=postgres

## Database password
## Example: secure-password-here
## Description: Password for database authentication
DB_PASSWORD=secure-password-here

## Database name
## Default: wallet_db
## Description: Name of the PostgreSQL database to use
DB_DATABASE=wallet_db

# CORS CONFIGURATION

## Allowed origins for CORS
## Example: http://localhost:3000,https://app.example.com
## Description: Comma-separated list of allowed origins for Cross-Origin Resource Sharing
ALLOWED_ORIGINS=http://localhost:3000,https://app.example.in

# SECURITY CONFIGURATION

## Housekeeping secret key
## Example: your-super-secret-housekeeping-key-here
## Description: Secret key for authenticating housekeeping API endpoints
HOUSEKEEPING_SECRET_KEY=your-super-secret-housekeeping-key-here
```

{% endcode %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://piramal-swasthya.gitbook.io/uba/toasters/wallet-toaster/developer-guide/backend-guide/environment-variables.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
