@cfxlabsinc/b2b-services
    Preparing search index...

    Type Alias DartMonthlyTransactionReportRow

    One row of the Dart "Victor Transaction Export" monthly file.

    32 columns in the order Dart Bank's recon spec sheet defines them. Stubbed columns are flagged with TODO and confirmed as empty per the plan in docs/plans/dart-monthly-transaction-report.md until Cristen

    • Autumn confirm the source.
    type DartMonthlyTransactionReportRow = {
        amount: string;
        bankName: string;
        clientName: string;
        clientReferenceId: string;
        companyEntryDescription: string;
        companyId: string;
        companyName: string;
        completedDate: string;
        completedDateTimeUtc: string;
        coreId: string;
        createdDate: string;
        createdDateTimeUtc: string;
        createdTimeEt: string;
        destinationAccountName: string;
        destinationAccountNumber: string;
        destinationRoutingNumber: string;
        errorCode: string;
        errorDescription: string;
        idempotencyKey: string;
        ledgeringProgramId: string;
        nachaFile: string;
        processorDescription: string;
        processorStatus: string;
        programName: string;
        schemeIdentifier: string;
        sourceAccountName: string;
        sourceAccountNumber: string;
        transactionLimitAmount: string;
        type: "ACH" | "WIRE" | "RTP";
        victorId: string;
        victorStatus: string;
        virtualAccountBalance: string;
    }
    Index

    Properties

    amount: string
    1. Amount — tx.amount.toFixed(2)
    bankName: string
    1. Bank Name — constant "Dart Bank"
    clientName: string
    1. Client Name — entity (org name or identity full name)
    clientReferenceId: string
    1. Client Reference ID — methodData.victorReferenceId (Victor's client_reference_id)
    companyEntryDescription: string
    1. Company Entry Description — TODO: NACHA SEC code description
    companyId: string
    1. Company ID — methodData.achId for ACH; empty for wire/RTP
    companyName: string
    1. Company Name — TODO: confirm with Cristen
    completedDate: string
    1. Completed Date — bankTx.postedAt as ET YYYY-MM-DD
    completedDateTimeUtc: string
    1. Completed DateTime (UTC) — bankTx.postedAt as ISO instant
    coreId: string
    1. Core ID — TODO: Dart core banking id (likely empty for now)
    createdDate: string
    1. Created Date — tx.createdAt as ET YYYY-MM-DD
    createdDateTimeUtc: string
    1. Created DateTime (UTC) — tx.createdAt as ISO instant
    createdTimeEt: string
    1. Created Time (ET) — tx.createdAt as ET HH:MM:SS
    destinationAccountName: string
    1. Destination Account Name — CFX customer (inbound) or counterparty (outbound)
    destinationAccountNumber: string
    1. Destination Account Number — CFX virtual account (inbound) or counterparty (outbound)
    destinationRoutingNumber: string
    1. Destination Routing Number — CFX/Dart (inbound) or counterparty (outbound)
    errorCode: string
    1. Error Code — TODO: Transaction type has no failureReason field today
    errorDescription: string
    1. Error Description — TODO: see errorCode
    idempotencyKey: string
    1. Idempotency Key — TODO: Transaction type has no idempotencyKey today
    ledgeringProgramId: string
    1. Ledgering Program ID — customer.victorLedgerProgramId
    nachaFile: string
    1. NACHA File — TODO: confirm NACHA file metadata source (ach-services?)
    processorDescription: string
    1. Processor Description — bankTx.description, fallback to tx.description
    processorStatus: string
    1. Processor Status — tx.status
    programName: string
    1. Program Name — constant "CFX/Dash.Fi"
    schemeIdentifier: string
    1. Scheme Identifier — IMAD/OMAD for wire; achTraceId for ACH/RTP
    sourceAccountName: string
    1. Source Account Name — counterparty (inbound) or CFX customer (outbound)
    sourceAccountNumber: string
    1. Source Account Number — counterparty (inbound) or CFX virtual account (outbound)
    transactionLimitAmount: string
    1. Transaction Limit Amount — TODO: confirm whether monthly should populate
    type: "ACH" | "WIRE" | "RTP"
    1. Type — "ACH" | "WIRE" | "RTP"
    victorId: string
    1. Victor ID — bankTx.methodData.victorTransactionId, fallback to tx.id
    victorStatus: string
    1. Victor Status — TODO: source from Victor's own status flag if available
    virtualAccountBalance: string
    1. Virtual Account Balance — tx.postBalance (post-transaction balance from solana_account_transaction)