---
title: "Create accounting integration"
method: POST
path: "/v3/accounting/integration"
tags: ["Accounting Integrations"]
---

# Create accounting integration

`POST /v3/accounting/integration`

Create a new accounting integration. The behavior depends on the existing active integration:

- If no active integration exists: Creates and returns new integration
- If active integration exists with same vendor and vendor_account_id: Returns the existing active integration
- If active integration exists with same vendor but different vendor_account_id: Returns 409 error
- If active integration exists with different vendor: Returns 409 error

This ensures only one active integration exists per account.

## Request body

- CreateIntegrationRequest
  - `vendor` string, required — The accounting vendor/system. ERP partners must request Brex to create a vendor ID for them to use this field.
  - `vendor_account_id` string, required — The vendor account ID to tie this integration to

## Response `200`

Integration created successfully

- Integration
  - `integration_id` string, required — Unique identifier for the integration
  - `vendor` string, required — The accounting vendor/system. ERP partners must request Brex to create a vendor ID for them to use this field.
  - `vendor_account_id` string, required — The vendor account ID this integration is tied to
  - `status` 'ACTIVE' | 'DISABLED', required — Current status of the integration
  - `created_at` string, date-time, required — Timestamp when the integration was created

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `409` — Active integration exists with different vendor or different vendor account ID
- `500` — Internal server error

---

[API](https://skmtc.dev/brex-com/apis/accounting-api.md) · [All operations](https://skmtc.dev/brex-com/apis/accounting-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/brex-com/accounting-api/revisions/19746ae84d48/schema)
