# `Wise.Services.Quotes`
[🔗](https://github.com/iamkanishka/wise/blob/v1.0.0/lib/wise/services/quotes.ex#L1)

Wise Quote API — rate locking and fee calculation.

# `account_requirements`

```elixir
@spec account_requirements(
  Wise.Config.t(),
  Wise.Types.profile_id(),
  Wise.Types.quote_id()
) ::
  {:ok, list()} | {:error, Wise.Error.t()}
```

Returns account requirement fields for a quote.

# `create`

```elixir
@spec create(Wise.Config.t(), Wise.Types.profile_id(), map()) ::
  {:ok, map()} | {:error, Wise.Error.t()}
```

Creates a quote for a profile.

# `create_anonymous`

```elixir
@spec create_anonymous(Wise.Config.t(), map()) ::
  {:ok, map()} | {:error, Wise.Error.t()}
```

Creates an anonymous quote (no profile required).

# `get`

```elixir
@spec get(Wise.Config.t(), Wise.Types.profile_id(), Wise.Types.quote_id()) ::
  {:ok, map()} | {:error, Wise.Error.t()}
```

Fetches a quote by ID.

# `refresh_account_requirements`

```elixir
@spec refresh_account_requirements(
  Wise.Config.t(),
  Wise.Types.profile_id(),
  Wise.Types.quote_id(),
  map()
) :: {:ok, list()} | {:error, Wise.Error.t()}
```

Refreshes account requirements with currently filled details.

# `update`

```elixir
@spec update(Wise.Config.t(), Wise.Types.profile_id(), Wise.Types.quote_id(), map()) ::
  {:ok, map()} | {:error, Wise.Error.t()}
```

Updates a quote (e.g. target account or pay-in method).

---

*Consult [api-reference.md](api-reference.md) for complete listing*
