---
title: "Create an exchange for a customer"
method: POST
path: "/customers/{id}/exchanges"
tags: ["exchanges"]
---

# Create an exchange for a customer

`POST /customers/{id}/exchanges`

Create an exchange for a customer. The request body will vary based on the exchange partner.
For Finicity, the request body will include finicity-specific fields.
For MX Secure Exchange, the request body will include an MX token.
For MX Open Banking, the request body will include an available connection token.
For Flinks Secure Exchange, the request body will include a token.
For Plaid Secure Exchange, the request body will include a processor token.
For Plaid Open Banking, the request body will include a public token.

## Path parameters

- `id` string, required

## Headers

- `Accept` 'application/vnd.dwolla.v1.hal+json', required

## Response `201`

created

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found

## Changes

- **2025-07-01** `633b30cf427d` — 6 breaking, 3 warning
  - added `#/components/schemas/InvalidExchangeToken, #/components/schemas/InvalidExchange` to the response body `oneOf` list for the response status `400`
  - added `subschema #1, subschema #2` to the response body `oneOf` list for the response status `401`
  - the response's body type/format changed from `object`/`` to ``/`` for status `400`
  - the response's body type/format changed from `object`/`` to ``/`` for status `401`
  - …5 more
- **2025-07-01** `8a20e7000645` — 1 breaking, 1 info
  - removed `#/components/schemas/FinicitySecureExchangeCreateExchangeRequestBody, #/components/schemas/MXSecureExchangeCreateExchangeRequestBody, #/components/schemas/MXOpenBankingCreateExchangeRequestBody, #/components/schemas/FlinksSecureExchangeCreateExchangeRequestBody, #/components/schemas/PlaidSecureExchangeCreateExchangeRequestBody, #/components/schemas/PlaidOpenBankingCreateExchangeRequestBody` from the request body `oneOf` list
  - added `#/components/schemas/CreateFinicitySecureExchange, #/components/schemas/CreateMXSecureExchange, #/components/schemas/CreateMXOpenBankingExchange, #/components/schemas/CreateFlinksSecureExchange, #/components/schemas/CreatePlaidSecureExchange, #/components/schemas/CreatePlaidOpenBankingExchange` to the request body `oneOf` list
- …earlier changes not shown

[Full history](https://skmtc.dev/dwolla/apis/dwolla-api/changes/customers/:id/exchanges/post.md)

---

[API](https://skmtc.dev/dwolla/apis/dwolla-api.md) · [All operations](https://skmtc.dev/dwolla/apis/dwolla-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/dwolla/dwolla-api/revisions/0790dc9b2a0e/schema)
