# Setup tax authority for seller

- Sandbox: `POST https://sandbox.payme.io/api/partner/api/tax-authority/setup`
- Production: `POST https://live.payme.io/api/partner/api/tax-authority/setup`

## Credentials

- Header `Authorization: Bearer <token>`

Configure tax authority integration for a seller

## Parameters

This endpoint takes no path, query or header parameters.

## Request body

Content type: `application/json`

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `seller_email` | string | yes | Seller email |
| `seller_id_number` | string | yes | Seller ID number |
| `osek_type` | string | yes | Business type (osek) |
| `file_name` | string | no | Authorization file name |
| `file_path` | string | no | Authorization file path |

### Request example

No example is documented; this template is generated from the fields — replace the placeholder values.

```json
{
  "seller_email": "<seller_email>",
  "seller_id_number": "<seller_id_number>",
  "osek_type": "<osek_type>",
  "file_name": "<file_name>",
  "file_path": "<file_path>"
}
```

## Code samples

### curl

```bash
curl -X POST 'https://sandbox.payme.io/api/partner/api/tax-authority/setup' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <YOUR_TOKEN>' \
  --data-raw '{
  "seller_email": "<seller_email>",
  "seller_id_number": "<seller_id_number>",
  "osek_type": "<osek_type>"
}'
```

### Node.js

```javascript
const response = await fetch("https://sandbox.payme.io/api/partner/api/tax-authority/setup", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer <YOUR_TOKEN>",
  },
  body: JSON.stringify({
    "seller_email": "<seller_email>",
    "seller_id_number": "<seller_id_number>",
    "osek_type": "<osek_type>"
  }),
});

console.log(await response.text());
```

### Python

```python
import requests

response = requests.post(
    "https://sandbox.payme.io/api/partner/api/tax-authority/setup",
    headers={
        "Authorization": "Bearer <YOUR_TOKEN>",
    },
    json={
        "seller_email": "<seller_email>",
        "seller_id_number": "<seller_id_number>",
        "osek_type": "<osek_type>",
    },
)

print(response.text)
```

### PHP

```php
<?php

$body = <<<'BODY'
{
  "seller_email": "<seller_email>",
  "seller_id_number": "<seller_id_number>",
  "osek_type": "<osek_type>"
}
BODY;

$ch = curl_init('https://sandbox.payme.io/api/partner/api/tax-authority/setup');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'Authorization: Bearer <YOUR_TOKEN>',
    ],
    CURLOPT_POSTFIELDS => $body,
]);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
```

## Responses

### 200 — Tax authority setup successful (success)

### 400 — Bad Request (error)

| Field | Type | Description |
| --- | --- | --- |
| `statusCode` | integer | HTTP status code |
| `message` | string | Error message(s) |
| `error` | string | Error type |

```json
{
  "statusCode": 400,
  "message": [
    "Validation failed"
  ],
  "error": "Bad Request"
}
```

### 401 — Unauthorized (error)

| Field | Type | Description |
| --- | --- | --- |
| `error` | string |  |
| `error_description` | string |  |

```json
{
  "error": "unauthorized_client",
  "error_description": "Client authentication failed"
}
```
