Outbound payments — one-off local (Faster Payments) payments, international payments, and management of standing orders.
Required scopes: pay-local:read, pay-local:create, pay-local-once:create,
pay-foreign:create, standing-order:read, standing-order:create,
standing-order:delete.
Summary
Functions
Creates a recurring local payment instruction (distinct from a one-off
pay_local_once/4 and from a put_standing_order/5 — used for
Starling's pay-local:create recurring payment scope where supported).
Cancels (deletes) a standing order.
Gets a currency-converted quote for an international payment before submitting it.
Lists upcoming/local payments scheduled or made from an account.
Lists standing orders for an account/category.
Initiates an international payment to an overseas payee.
Makes a single, immediate local (domestic, GBP, Faster Payments) payment from an account to an existing payee.
Creates or replaces a standing order.
Functions
@spec create_local_payment( String.t(), String.t(), map(), StarlingBank.Client.t() | keyword() | nil ) :: {:ok, map()} | {:error, StarlingBank.Error.t()}
Creates a recurring local payment instruction (distinct from a one-off
pay_local_once/4 and from a put_standing_order/5 — used for
Starling's pay-local:create recurring payment scope where supported).
@spec delete_standing_order( String.t(), String.t(), String.t(), StarlingBank.Client.t() | keyword() | nil ) :: {:ok, nil} | {:error, StarlingBank.Error.t()}
Cancels (deletes) a standing order.
@spec international_quote( String.t(), map(), StarlingBank.Client.t() | keyword() | nil ) :: {:ok, map()} | {:error, StarlingBank.Error.t()}
Gets a currency-converted quote for an international payment before submitting it.
@spec list_local(String.t(), StarlingBank.Client.t() | keyword() | nil) :: {:ok, map()} | {:error, StarlingBank.Error.t()}
Lists upcoming/local payments scheduled or made from an account.
@spec list_standing_orders( String.t(), String.t(), StarlingBank.Client.t() | keyword() | nil ) :: {:ok, map()} | {:error, StarlingBank.Error.t()}
Lists standing orders for an account/category.
@spec pay_international( String.t(), String.t(), map(), StarlingBank.Client.t() | keyword() | nil ) :: {:ok, map()} | {:error, StarlingBank.Error.t()}
Initiates an international payment to an overseas payee.
@spec pay_local_once( String.t(), String.t(), map(), StarlingBank.Client.t() | keyword() | nil ) :: {:ok, map()} | {:error, StarlingBank.Error.t()}
Makes a single, immediate local (domestic, GBP, Faster Payments) payment from an account to an existing payee.
StarlingBank.Payments.pay_local_once(account_uid, category_uid, %{
amount: %{currency: "GBP", minorUnits: 1_000},
reference: "Invoice 123",
payeeUid: payee_uid,
payeeAccountUid: payee_account_uid
})
@spec put_standing_order( String.t(), String.t(), String.t(), map(), StarlingBank.Client.t() | keyword() | nil ) :: {:ok, map()} | {:error, StarlingBank.Error.t()}
Creates or replaces a standing order.