---
title: "Replace a Dev Fee Config"
method: PUT
path: "/dev_fee_configs/{devFeeConfigID}"
tags: ["Developer Fees"]
---

# Replace a Dev Fee Config

`PUT /dev_fee_configs/{devFeeConfigID}`

## Request

- Base URL: `https://api.bridge.xyz/v0`
- URL: `https://api.bridge.xyz/v0/dev_fee_configs/{devFeeConfigID}`
- Auth: API key in header `Api-Key`

Beta: available by request only. Contact Bridge to enable this feature for your developer account.

Fully replace the Dev Fee Config with the given ID. The new terms apply right away to new transfers for every customer the config is assigned to. The `type` of a config cannot be changed.

## Request body

- union
  - OnrampDevFeeConfig
    - `id` string, required: A UUID that uniquely identifies a resource
    - `name` string, required: A display name for this config.
    - `description` string, nullable: An optional longer description of this config.
    - `type` 'onramp', required: The kind of money movement this config prices. A customer can have at most one config of each type. - `onramp`: fiat to crypto, for example USD to USDC. Fees are charged in the source currency. - `offramp`: crypto to fiat, for example USDC to EUR. Fees are charged in the destination currency. - `crypto_to_crypto`: for example USDT to USDC. Fees are charged in the destination currency.
    - `rail_fee_bearer` 'customer' | 'developer': Who pays Bridge's rail fee, such as a wire fee. - `customer`: Bridge takes its rail fee from the transfer. The developer is never billed for it. - `developer`: the rail fee is not taken from the transfer. Bridge bills it to the developer.
    - `percent` string, number, required: A developer fee percent. The value is a base 100 percentage, i.e. 10.2% is 10.2 in the API.
    - `created_at` string, date-time, required: Time of creation of the Dev Fee Config
    - `updated_at` string, date-time, required: Time of most recent update of the Dev Fee Config
    - `by_source_currency` DevFeeConfigFeeCurrencyMap: Pricing keyed by currency on the side the fee is charged in. Fixed, minimum, maximum and rail overrides are only accepted here.
    - `by_destination_currency` DevFeeConfigPercentOnlyMap: Percent overrides keyed by currency on the side the fee is not charged in. If both sides set a percent for a transfer, the higher one wins.
  - OfframpDevFeeConfig
    - `id` string, required: A UUID that uniquely identifies a resource
    - `name` string, required: A display name for this config.
    - `description` string, nullable: An optional longer description of this config.
    - `type` 'offramp', required: The kind of money movement this config prices. A customer can have at most one config of each type. - `onramp`: fiat to crypto, for example USD to USDC. Fees are charged in the source currency. - `offramp`: crypto to fiat, for example USDC to EUR. Fees are charged in the destination currency. - `crypto_to_crypto`: for example USDT to USDC. Fees are charged in the destination currency.
    - `rail_fee_bearer` 'customer' | 'developer': Who pays Bridge's rail fee, such as a wire fee. - `customer`: Bridge takes its rail fee from the transfer. The developer is never billed for it. - `developer`: the rail fee is not taken from the transfer. Bridge bills it to the developer.
    - `percent` string, number, required: A developer fee percent. The value is a base 100 percentage, i.e. 10.2% is 10.2 in the API.
    - `created_at` string, date-time, required: Time of creation of the Dev Fee Config
    - `updated_at` string, date-time, required: Time of most recent update of the Dev Fee Config
    - `by_source_currency` DevFeeConfigPercentOnlyMap: Percent overrides keyed by currency on the side the fee is not charged in. If both sides set a percent for a transfer, the higher one wins.
    - `by_destination_currency` DevFeeConfigFeeCurrencyMap: Pricing keyed by currency on the side the fee is charged in. Fixed, minimum, maximum and rail overrides are only accepted here.
  - CryptoToCryptoDevFeeConfig
    - `id` string, required: A UUID that uniquely identifies a resource
    - `name` string, required: A display name for this config.
    - `description` string, nullable: An optional longer description of this config.
    - `type` 'crypto_to_crypto', required: The kind of money movement this config prices. A customer can have at most one config of each type. - `onramp`: fiat to crypto, for example USD to USDC. Fees are charged in the source currency. - `offramp`: crypto to fiat, for example USDC to EUR. Fees are charged in the destination currency. - `crypto_to_crypto`: for example USDT to USDC. Fees are charged in the destination currency.
    - `rail_fee_bearer` 'customer' | 'developer': Who pays Bridge's rail fee, such as a wire fee. - `customer`: Bridge takes its rail fee from the transfer. The developer is never billed for it. - `developer`: the rail fee is not taken from the transfer. Bridge bills it to the developer.
    - `percent` string, number, required: A developer fee percent. The value is a base 100 percentage, i.e. 10.2% is 10.2 in the API.
    - `created_at` string, date-time, required: Time of creation of the Dev Fee Config
    - `updated_at` string, date-time, required: Time of most recent update of the Dev Fee Config
    - `by_source_currency` DevFeeConfigPercentOnlyMap: Percent overrides keyed by currency on the side the fee is not charged in. If both sides set a percent for a transfer, the higher one wins.
    - `by_destination_currency` DevFeeConfigFeeCurrencyMap: Pricing keyed by currency on the side the fee is charged in. Fixed, minimum, maximum and rail overrides are only accepted here.

## Response `200`

The updated Dev Fee Config

- union
  - OnrampDevFeeConfig
    - `id` string, required: A UUID that uniquely identifies a resource
    - `name` string, required: A display name for this config.
    - `description` string, nullable: An optional longer description of this config.
    - `type` 'onramp', required: The kind of money movement this config prices. A customer can have at most one config of each type. - `onramp`: fiat to crypto, for example USD to USDC. Fees are charged in the source currency. - `offramp`: crypto to fiat, for example USDC to EUR. Fees are charged in the destination currency. - `crypto_to_crypto`: for example USDT to USDC. Fees are charged in the destination currency.
    - `rail_fee_bearer` 'customer' | 'developer': Who pays Bridge's rail fee, such as a wire fee. - `customer`: Bridge takes its rail fee from the transfer. The developer is never billed for it. - `developer`: the rail fee is not taken from the transfer. Bridge bills it to the developer.
    - `percent` string, number, required: A developer fee percent. The value is a base 100 percentage, i.e. 10.2% is 10.2 in the API.
    - `created_at` string, date-time, required: Time of creation of the Dev Fee Config
    - `updated_at` string, date-time, required: Time of most recent update of the Dev Fee Config
    - `by_source_currency` DevFeeConfigFeeCurrencyMap: Pricing keyed by currency on the side the fee is charged in. Fixed, minimum, maximum and rail overrides are only accepted here.
    - `by_destination_currency` DevFeeConfigPercentOnlyMap: Percent overrides keyed by currency on the side the fee is not charged in. If both sides set a percent for a transfer, the higher one wins.
  - OfframpDevFeeConfig
    - `id` string, required: A UUID that uniquely identifies a resource
    - `name` string, required: A display name for this config.
    - `description` string, nullable: An optional longer description of this config.
    - `type` 'offramp', required: The kind of money movement this config prices. A customer can have at most one config of each type. - `onramp`: fiat to crypto, for example USD to USDC. Fees are charged in the source currency. - `offramp`: crypto to fiat, for example USDC to EUR. Fees are charged in the destination currency. - `crypto_to_crypto`: for example USDT to USDC. Fees are charged in the destination currency.
    - `rail_fee_bearer` 'customer' | 'developer': Who pays Bridge's rail fee, such as a wire fee. - `customer`: Bridge takes its rail fee from the transfer. The developer is never billed for it. - `developer`: the rail fee is not taken from the transfer. Bridge bills it to the developer.
    - `percent` string, number, required: A developer fee percent. The value is a base 100 percentage, i.e. 10.2% is 10.2 in the API.
    - `created_at` string, date-time, required: Time of creation of the Dev Fee Config
    - `updated_at` string, date-time, required: Time of most recent update of the Dev Fee Config
    - `by_source_currency` DevFeeConfigPercentOnlyMap: Percent overrides keyed by currency on the side the fee is not charged in. If both sides set a percent for a transfer, the higher one wins.
    - `by_destination_currency` DevFeeConfigFeeCurrencyMap: Pricing keyed by currency on the side the fee is charged in. Fixed, minimum, maximum and rail overrides are only accepted here.
  - CryptoToCryptoDevFeeConfig
    - `id` string, required: A UUID that uniquely identifies a resource
    - `name` string, required: A display name for this config.
    - `description` string, nullable: An optional longer description of this config.
    - `type` 'crypto_to_crypto', required: The kind of money movement this config prices. A customer can have at most one config of each type. - `onramp`: fiat to crypto, for example USD to USDC. Fees are charged in the source currency. - `offramp`: crypto to fiat, for example USDC to EUR. Fees are charged in the destination currency. - `crypto_to_crypto`: for example USDT to USDC. Fees are charged in the destination currency.
    - `rail_fee_bearer` 'customer' | 'developer': Who pays Bridge's rail fee, such as a wire fee. - `customer`: Bridge takes its rail fee from the transfer. The developer is never billed for it. - `developer`: the rail fee is not taken from the transfer. Bridge bills it to the developer.
    - `percent` string, number, required: A developer fee percent. The value is a base 100 percentage, i.e. 10.2% is 10.2 in the API.
    - `created_at` string, date-time, required: Time of creation of the Dev Fee Config
    - `updated_at` string, date-time, required: Time of most recent update of the Dev Fee Config
    - `by_source_currency` DevFeeConfigPercentOnlyMap: Percent overrides keyed by currency on the side the fee is not charged in. If both sides set a percent for a transfer, the higher one wins.
    - `by_destination_currency` DevFeeConfigFeeCurrencyMap: Pricing keyed by currency on the side the fee is charged in. Fixed, minimum, maximum and rail overrides are only accepted here.

## Other responses

- `400`: Request containing missing or invalid Dev Fee Config parameters.
- `401`: Missing or invalid API key
- `404`: No Dev Fee Config found for the given ID
- `500`: Unexpected error. User may try and send the request again.

## Changes

- **2026-11-03** `a390532e9fc6`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/bridge/apis/bridge-api/changes/dev_fee_configs/:devFeeConfigID/put.md)

---

[API](https://skmtc.dev/bridge/apis/bridge-api.md) - [All operations](https://skmtc.dev/bridge/apis/bridge-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bridge/apis/bridge-api/revisions/a390532e9fc6?raw)
