> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arc.io/llms.txt
> Use this file to discover all available pages before exploring further.

# How-to: Collect custom spend fees

> Configure custom fees to collect when spending from a Unified Balance

The App Kit SDK lets you collect a custom fee from your end users each time they
spend from a Unified Balance. Custom fees can only be configured for spend
transactions on destination blockchains, not deposits on source blockchains. To
learn how custom fees fit into the overall fee breakdown, see
[How Unified Balance fees work](/app-kit/concepts/unified-balance-fees).

<Note>
  If you use this feature, Arc keeps 10% of the custom fee you collect from your
  end users.
</Note>

## Prerequisites

Before you begin, ensure that you've:

* [Installed the App Kit SDK](/app-kit/tutorials/installation)
* [Configured an adapter](/app-kit/tutorials/adapter-setups)

These are required so any example below runs with a valid `kit` and `adapter`.

## Set a custom fee on a spend

This example spends 1.00 USDC from Base Sepolia and adds a 0.01 USDC custom fee
on the spend:

```typescript TypeScript theme={null}
const result = await kit.unifiedBalance.spend({
  amount: "1.00",
  from: {
    adapter,
    allocations: [{ amount: "1.00", chain: "Base_Sepolia" }],
  },
  to: {
    adapter,
    chain: "Arc_Testnet",
    recipientAddress: "0xRecipientAddress",
  },
  config: {
    customFee: {
      value: "0.01", // 0.01 USDC collected as fee
      recipientAddress: "0xYourFeeWalletAddress",
    },
  },
});
```
