Moov.Capabilities (Moov v1.0.0)

Copy Markdown View Source

Request and manage the capabilities an account needs - e.g. "transfers", "wallet", "send-funds", "collect-funds", "card-issuing".

See https://docs.moov.io/api/moov-accounts/capabilities/.

Summary

Functions

Requests one or more capabilities for an account.

Disables a previously enabled capability.

Retrieves a single capability, e.g. "transfers" or "wallet".

Lists an account's capabilities and their statuses.

Functions

create(client, account_id, params)

@spec create(Moov.Client.t(), String.t(), map()) ::
  {:ok, map()} | {:error, Moov.Error.t()}

Requests one or more capabilities for an account.

params: %{capabilities: ["transfers", "wallet"]}. Moov evaluates underwriting/KYC requirements asynchronously - check status on the returned capability (or subscribe to capability.updated webhooks) rather than assuming it's immediately "enabled".

disable(client, account_id, capability_id)

@spec disable(Moov.Client.t(), String.t(), String.t()) ::
  {:ok, term()} | {:error, Moov.Error.t()}

Disables a previously enabled capability.

get(client, account_id, capability_id)

@spec get(Moov.Client.t(), String.t(), String.t()) ::
  {:ok, map()} | {:error, Moov.Error.t()}

Retrieves a single capability, e.g. "transfers" or "wallet".

list(client, account_id, opts \\ [])

@spec list(Moov.Client.t(), String.t(), keyword()) ::
  {:ok, [map()]} | {:error, Moov.Error.t()}

Lists an account's capabilities and their statuses.