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

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.

Ask

```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\
      ]
    }
}'
```

Ask

```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 or Dashboard guide for more information.

## Manage tipping presets

Retrieve the transfer configuration for an account.

Ask

```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

You can update the following tipping preset options:

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

Ask

```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

In addition to tipping presets with 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`.

The `amount` is the total payment, which is the base price + tip. In the example below, the `amount.value` represents a base price of $349.00 with a tip of $20.00, totaling $549.00.

Ask

```zsh
curl -X POST "https://api.moov.io/accounts/{accountID}/transfers" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.04.00" \
  -d '{
    "source": {
      "paymentMethodID": "9506dbf6-4208-44c3-ad8a-e4431660e1f2"
    },
    "destination": {
      "paymentMethodID": "3f9969cf-a1f3-4d83-8ddc-229a506651cf"
    },
    "amount": {
      "currency": "USD",
      "value": 54900
    },
    "amountDetails": {
      "tip": {
        "currency": "USD",
        "valueDecimal": "20.00"
      }
    },
    "description": "Transfer from card to wallet",
    "metadata": {
      "optional": "metadata"
    }
  }'
```
