# Tipping

Enable tipping with preset configurations and free-form tipping during the checkout process.

Tipping presets for payment links allow you to set multiple options to display to customers during the checkout process. Tipping presets can be a percentage of the total, or a dollar amount, such as 10%, 15%, and 20%, or $1.00, $1.50, and $2.00. When choosing preset percentages, you must choose whether the calculations are based on the pre-tax or post-tax amount.

For percentage presets, you can also choose whether the tip amount is calculated on the pre-tax or post-tax amount.

## [Enable tipping](#enable-tipping)

Tipping is enabled through creating a transfer configuration. By default, tipping is disabled. Additionally, if choosing preset percentages, you must set whether the tip is calculated on the pre-tax or post-tax amount.

[Percentages preset](#tab-576329814-1-0) [Fixed amount preset](#tab-576329814-1-1)

```zsh
curl -X POST "https://api.moov.io/accounts/{accountID}/transfer-config" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.04.00" \
  -d '{
    "tipPresets": {
      "calculationBasis": "pre-tax",
      "percentageOptions": [
        5,
        15,
        25
      ]
    }
}'
```

```zsh
curl -X POST "https://api.moov.io/accounts/{accountID}/transfer-config" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.04.00" \
  -d '{
    "tipPresets": {
      "currency": "USD",
      "fixedAmountOptions": [
        { 
          "currency": "USD", 
          "valueDecimal": "1.00" 
        },
        { 
          "currency": "USD", 
          "valueDecimal": "2.00" 
        },
        { 
          "currency": "USD", 
          "valueDecimal": "5.00" 
        }
      ]
    }
}'
```

If a tip amount is selected at checkout, it's added to the total amount to be charged. The breakdown of different charges will be on the receipt sent to the customer:

- Subtotal: $10.00
- Sales tax: $1.00
- Tip: $2.50
- Total: $13.50

Once tipping presets are configured, you can enable tipping within payment links. See the [payment links](/guides/money-movement/payment-links/) or [Dashboard](/guides/dashboard/payment-links/#create-a-payment-link) guide for more information.

## [Manage tipping presets](#manage-tipping-presets)

Retrieve the transfer configuration for an account.

```zsh
curl -X GET "https://api.moov.io/accounts/{accountID}/transfer-config" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.04.00" \
```

### [Update tipping presets](#update-tipping-presets)

You can update the following tipping preset options:

- Preset type (percentage or fixed amount)
- Preset options
- Calculation basis (pre-tax or post-tax)

```zsh
curl -X PUT "https://api.moov.io/accounts/{accountID}/transfer-config" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.04.00" \
  -d '{
    "tipPresets": {
      "fixedAmountOptions": [
        { 
          "currency": "USD", 
          "valueDecimal": "5.00" 
        },
        { 
          "currency": "USD", 
          "valueDecimal": "10.00" 
        },
        { 
          "currency": "USD", 
          "valueDecimal": "15.00" 
        }
	    ]
    }
}'
```

## [Create transfer](#create-transfer)

In addition to tipping presets with [payment links](/guides/money-movement/payment-links/), you can create a basic transfer with a tip. In the transfers request, add a tip amount to `amountDetails`. The tip must be the same currency as the `amount`.

```zsh
 1curl -X POST "https://api.moov.io/accounts/{accountID}/transfers" \
 2  -H "Authorization: Bearer {token}" \
 3  -H "X-Moov-Version: v2026.04.00" \
 4  -d '{
 5    "source": {
 6      "paymentMethodID": "9506dbf6-4208-44c3-ad8a-e4431660e1f2"
 7    },
 8    "destination": {
 9      "paymentMethodID": "3f9969cf-a1f3-4d83-8ddc-229a506651cf"
10    },
11    "amount": {
12      "currency": "USD",
13      "value": 32945
14    },
15    "amountDetails": {
16      "tip": {
17        "currency": "USD",
18        "valueDecimal": "20.00"
19      }
20    },
21    "description": "Transfer from card to wallet",
22    "metadata": {
23      "optional": "metadata"
24    }
25}'
```
