---
title: "Validation Utils"
canonical_url: "https://nimiq.dev/nimiq-utils/validation-utils"
---
# Validation Utils

Utility class for validating, normalizing, and checking Nimiq addresses and hashes.

## Usage

### Validate addresses

```typescript
import { ValidationUtils } from '@nimiq/utils/validation-utils'

// Validate addresses
const address1 = 'NQ48 8CKH BA24 2VR3 N249 N8MN J5XX 74DB 5XJ8'
const address2 = 'invalid-address'
console.log(ValidationUtils.isValidAddress(address1)) // true
console.log(ValidationUtils.isValidAddress(address2)) // false
```

### Normalize formatting

```typescript
// Normalize formatting
const lowercase = 'nq48 8ckh ba24 2vr3 n249 n8mn j5xx 74db 5xj8'
const normalized = ValidationUtils.normalizeAddress(lowercase)
console.log(normalized) // 'NQ48 8CKH BA24 2VR3 N249 N8MN J5XX 74DB 5XJ8'
```

### Check format validation

```typescript
// Check format (throws if invalid)
try {
  ValidationUtils.isUserFriendlyAddress(address1)
  console.log('Valid user-friendly format')
}
catch (error) {
  console.error('Invalid format:', error.message)
}
```

## API

<table>
<thead>
  <tr>
    <th>
      Method
    </th>
    
    <th>
      Description
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      <code>
        isValidAddress(address: string)
      </code>
    </td>
    
    <td>
      Returns true if address is valid
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        normalizeAddress(address: string)
      </code>
    </td>
    
    <td>
      Returns normalized address with proper formatting
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        isUserFriendlyAddress(address: string)
      </code>
    </td>
    
    <td>
      Throws error if address is not user-friendly format
    </td>
  </tr>
</tbody>
</table>


## Sitemap

See the full [sitemap](https://nimiq.dev/sitemap.md) for all pages.
