Codat.Lending.DataIntegrity (codat v1.0.0)

Copy Markdown View Source

Data integrity checks — cross-reference accounting and banking data.

Codat's data integrity feature cross-references records from accounting and banking sources to identify discrepancies (e.g., unmatched transactions). Use this to assess the reliability of financial data before making credit decisions.

Statuses

StatusMeaning
MatchedRecord found in both accounting and banking sources
UnmatchedRecord found in only one source
PartialRecord found in both sources but with discrepancies
DoesNotExistRecord in accounting but not in banking (or vice versa)

Summary

Functions

Returns detailed data integrity records for a specific data type and match status.

Returns the data integrity status summary for a company.

Returns data integrity summaries for a specific data type.

Functions

details(client_or_company_id, company_or_data_type, data_type_or_opts \\ [], opts \\ [])

@spec details(
  Codat.Client.t() | String.t(),
  String.t(),
  String.t() | keyword(),
  keyword()
) ::
  {:ok, Codat.Pagination.t()} | {:error, Codat.Error.t()}

Returns detailed data integrity records for a specific data type and match status.

Options

  • :query — filter by match status, e.g. "status=Unmatched"
  • :page, :page_size — pagination

Example

{:ok, page} = Codat.Lending.DataIntegrity.details(
  client, company_id, "invoices", query: "status=Unmatched"
)

status(client_or_company_id, id_or_opts \\ [])

@spec status(Codat.Client.t() | String.t(), String.t() | keyword()) ::
  {:ok, map()} | {:error, Codat.Error.t()}

Returns the data integrity status summary for a company.

Example

{:ok, status} = Codat.Lending.DataIntegrity.status(client, company_id)
status["invoices"]["statusInfo"]["currentStatus"]  # => "Complete"

summaries(client_or_company_id, company_or_data_type, data_type_or_opts \\ [])

@spec summaries(Codat.Client.t() | String.t(), String.t(), String.t() | keyword()) ::
  {:ok, map()} | {:error, Codat.Error.t()}

Returns data integrity summaries for a specific data type.

Parameters

  • data_type — e.g., "invoices", "bankTransactions"

Example

{:ok, summary} = Codat.Lending.DataIntegrity.summaries(client, company_id, "invoices")