---
title: "Set travel rule options for a user"
method: POST
path: "/travel-rule-options"
tags: ["Counterparty"]
---

# Set travel rule options for a user

`POST /travel-rule-options`

## Request

- Base URL: `https://sandbox.striga.com/api/v1/travel-rule`
- URL: `https://sandbox.striga.com/api/v1/travel-rule/travel-rule-options`
- Auth: API key in header `api-key` and API key in header `Authorization`

Sets per-account Travel Rule options that skip per-address declarations. Intended to be called at account-setup time for integrators who can attest that a user transacts exclusively with their own wallets, but may be called at any time to toggle individual flags.

Provide exactly one of `userId` / `businessId`. At least one flag must be present. Omitting a flag leaves its current value unchanged.

Wallet ownership verification still applies at or above the EUR threshold — the flags only remove the obligation to declare an address before each transaction.

## Request body

- TfrOptionsRequest: Set per-account Travel Rule options. Provide exactly one of `userId` / `businessId`. At least one flag must be included.
  - `userId` string, uuid: Owner user id. Provide exactly one of userId / businessId.
  - `businessId` string, uuid: Owner business id. Provide exactly one of userId / businessId.
  - `onChainDepositsFromOwnWalletsOnly` boolean: When `true`, on-chain deposits for this account are treated as coming from a wallet the user owns — no per-deposit address declaration required. Wallet ownership verification still applies at or above the EUR threshold.
  - `lightningDepositsFromOwnWalletsOnly` boolean: When `true`, Lightning deposits for this account are treated as coming from a wallet the user owns — no per-payment declaration required.
  - `onChainWithdrawalsToOwnWalletsOnly` boolean: When `true`, on-chain withdrawals for this account are treated as going to a wallet the user owns — no per-withdrawal address declaration required. Wallet ownership verification still applies at or above the EUR threshold.
  - `lightningWithdrawalsToOwnWalletsOnly` boolean: When `true`, Lightning withdrawals for this account are treated as going to a wallet the user owns — no per-payment declaration required.

## Response `200`

Options updated. Returns only the flags that were set in this request.

- TfrOptionsResponse
  - `tfrOptions` object, required: Echoes only the flags included in the request. Previously set flags that were omitted are unchanged but not returned.
    - `onChainDepositsFromOwnWalletsOnly` boolean
    - `lightningDepositsFromOwnWalletsOnly` boolean
    - `onChainWithdrawalsToOwnWalletsOnly` boolean
    - `lightningWithdrawalsToOwnWalletsOnly` boolean

## Other responses

- `400`: Bad request — no flags provided, or field validation failed.
- `401`: Invalid authentication header
- `500`: Unexpected server error.

---

[API](https://skmtc.dev/striga/apis/travel-rule.md) - [All operations](https://skmtc.dev/striga/apis/travel-rule/llms.txt) - [OpenAPI document](https://skmtc.dev/striga/apis/travel-rule/revisions/c82fbc1ad95b?raw)
