Column.Reporting (Column v1.0.0)

Copy Markdown View Source

Settlement reports and bank account statements.

Schedule and download CSV/PDF settlement reports. Generate custom bank account statements for any date range, useful for reconciliation, accounting exports, and regulatory reporting.

Schedule and download a settlement report

{:ok, report} = Column.Reporting.schedule_settlement_report(%{
  date: "2024-06-01",
  format: "csv"
})

# Poll until ready, then download
{:ok, report} = Column.Reporting.get_settlement_report(report["id"])
# report["url"] is a signed download URL when status == "ready"

Custom bank account statement

{:ok, statement} = Column.Reporting.get_bank_account_statement(%{
  bank_account_id: "bacc_123",
  start_date: "2024-01-01",
  end_date: "2024-06-30",
  format: "pdf"
})

Summary

Functions

Get a customized bank account statement for a date range.

Get a settlement report by ID.

List all settlement reports.

Schedule a settlement report.

Types

id()

@type id() :: String.t()

opts()

@type opts() :: keyword()

params()

@type params() :: map()

result()

@type result() :: {:ok, map()} | {:error, Column.Error.t()}

Functions

get_bank_account_statement(params, opts \\ [])

@spec get_bank_account_statement(params(), opts()) :: result()

Get a customized bank account statement for a date range.

get_settlement_report(id, opts \\ [])

@spec get_settlement_report(id(), opts()) :: result()

Get a settlement report by ID.

list_settlement_reports(opts \\ [])

@spec list_settlement_reports(opts()) :: result()

List all settlement reports.

schedule_settlement_report(params, opts \\ [])

@spec schedule_settlement_report(params(), opts()) :: result()

Schedule a settlement report.