# Configure return obligations

Source: https://developer.avalara.com/products/returns/integration-guides/managed-returns-emea/els4486080555326/

Guide: Avalara Managed Returns API (EMEA)

# Configure return obligations

Create and retrieve return obligations and their associated return periods for a VAT Registration.

Manage VAT return obligations and return periods for a given VAT Registration using the Managed Returns GraphQL API.

## Create return obligation

Use this mutation to create a return obligation for an existing VAT Registration. A return obligation defines the type of return that is required and how frequently it must be filed.

**View request:**

```
mutation VatCreateReturnObligation($input: CreateReturnObligationInput!) {
  vatCreateReturnObligation(input: $input) {
    id
    returnType
  }
}
```

**Variables example:**

```
{
  "input": {
    "registrationId": 12345,
    "returnType": "VAT_Regular",
    "frequency": "Monthly"
  }
}
```

Note

-   `registrationId` is obtained from the VAT Workflow REST API after the client is synced and the VAT Registration is created.
-   `returnType` and frequency must align with the obligation definition described in the Return obligation section (for example, VAT Return – Monthly, EC Sales List – Monthly).

## Retrieve return obligations with periods

Use this query to retrieve all return obligations and their generated return periods for a given VAT Registration. This is typically used after obligations are configured to drive UI workflows such as period selection, draft preparation, and filing.

**Authentication:** Merchant bearer token (CRR)

**View request:**

```
query VatReturnObligationsWithPeriods($registrationId: Int!) { vatReturnObligationsWithPeriods(registrationId: $registrationId) { frequency returnObligationId returnType returnPeriods { deadline endDate endMonth returnPeriodId returnPeriodKey startDate startMonth year } } }
```

**Variables example:**

`{ "registrationId": 12345 }`

Note

-   Each element in `vatReturnObligationsWithPeriods` represents a Return obligation.
-   Each `returnPeriods` entry represents a Return period instance (for example, Q1 2026 VAT Return or April 2024 EC Sales List).
-   `deadline` and the start and end date fields are used to drive the filing lifecycle for that period, including draft, approval, submission, and reconciliation.