# E Invoicing

## Onboard Taxpayer

Onboard a taxpayer for e-invoicing by providing their NRS credentials. This registers the business with the FIRS NRS system and enables e-invoicing capabilities.

[https://atlas.tryduplo.com](https://atlas.tryduplo.com)

### POST

```
/api/v1/e-invoicing/onboard
```

#### Send

**Authorization**

#### Body

## [Authorization](https://docs.tryduplo.com/en/atlas/e-invoicing/onboardTaxpayer#authorization)

**BearerAuth**

AuthorizationBearer <token>

In: `header`

## [Request Body](https://docs.tryduplo.com/en/atlas/e-invoicing/onboardTaxpayer#request-body)

- application/json

```json
{
  "email": "string",
  "password": "string"
}
```

## [Response Body](https://docs.tryduplo.com/en/atlas/e-invoicing/onboardTaxpayer#response-body)

### 201  application/json

### 401  application/json

### 422  application/json

### 500  application/json

### cURL

```bash
curl -X POST "https://atlas.tryduplo.com/api/v1/e-invoicing/onboard" \
-H "Authorization: Bearer " \
-H "Content-Type: application/json" \
-d '{    "email": "taxpayer@example.com",    "password": "nrs-password"  }'
```

### Response Codes

- 201
- 401
- 422
- 500

### Example Responses

```json
{
  "requestId": "3a6538fd-03f0-4b05-ba41-5d44769dd014",
  "requestTimestamp": "2026-04-09 12:00:00",
  "message": "Taxpayer onboarded successfully.",
  "statusCode": 201,
  "data": {
    "reference": "NRS-REF-001",
    "businessId": "019a1639-ce25-70b7-ab20-16fcb2bac023",
    "isActive": true,
    "tin": "12345678-0001",
    "name": "Acme Corp Ltd",
    "nrsBusinessId": "NRS-BIZ-001",
    "nrsEntityId": "NRS-ENTITY-001",
    "nrsServiceId": "ABCD1234",
    "nrsEmail": "taxpayer@example.com",
    "duploIsApp": true
  }
}
```

```json
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2026-04-09 12:00:00",
  "message": "Unauthenticated.",
  "statusCode": 401
}
```

```json
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2026-04-09 12:00:00",
  "message": "The email field is required.",
  "statusCode": 422,
  "errors": {}
}
```

```json
{
  "requestId": "f006ad7b-096c-4254-8c7e-2d23a55b0b0e",
  "requestTimestamp": "2026-04-09 12:00:00",
  "message": "An error occurred while processing your request.",
  "statusCode": 500
}
```
