{
  "generated": "2026-10-07",
  "label": "after accuracy fixes",
  "tool": {
    "core_js_sha256_12": "46eb9d255bc4",
    "pdfjs_dist": "6.4.299",
    "options": "defaults (auto date order, auto decimal, auto year)"
  },
  "summary": {
    "samples": 17,
    "errors": 0,
    "by_outcome": {
      "needs-review": 9,
      "no-balances-to-check": 2,
      "all-reconcile": 3,
      "no-rows": 3
    },
    "by_kind": {
      "checking": 10,
      "credit_card": 6,
      "savings": 1
    },
    "verified_subset": {
      "samples": 11,
      "truthRows": 174,
      "extractedRows": 171,
      "matched": 170,
      "precision": 0.9942,
      "recall": 0.977,
      "foundWithWrongAmount": 1,
      "signErrors": 0,
      "amountAccuracy": 0.9942
    }
  },
  "samples": [
    {
      "id": "carson-bank-checking",
      "institution": "Carson Bank (Mulvane, Kansas)",
      "kind": "checking",
      "text_based": true,
      "pages": 6,
      "text_items": 696,
      "outcome": "needs-review",
      "rows": 49,
      "reconciliation": {
        "status": "needs-review",
        "message": "2 ending balances do not match the opening balance plus transactions; 1 printed balance does not match the running total.",
        "rows_ok": 47,
        "rows_review": 0,
        "rows_unchecked": 2,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 242,
          "role": "amount",
          "count": 1
        },
        {
          "x": 349,
          "role": "ignore",
          "count": 2
        },
        {
          "x": 393,
          "role": "debit",
          "count": 13
        },
        {
          "x": 456,
          "role": "ignore",
          "count": 2
        },
        {
          "x": 480,
          "role": "credit",
          "count": 34
        },
        {
          "x": 566,
          "role": "balance",
          "count": 49
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Date Description Debits Credits Balance",
      "period": {
        "start": "2019-07-31",
        "end": "2019-07-31"
      },
      "opening": 3005.93,
      "closing": 6682.22,
      "warnings": [
        "This statement has 2 separate ledgers (accounts or sections, each with its own beginning and ending balance). Each one is checked on its own.",
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 334,
        "extract": 50
      },
      "truth": {
        "truthRows": 48,
        "extractedRows": 48,
        "matched": 48,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 0.9792,
        "balanceAccuracy": 1,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "bofa-how-to-read",
      "institution": "Bank of America",
      "kind": "checking",
      "text_based": true,
      "pages": 4,
      "text_items": 1195,
      "outcome": "no-balances-to-check",
      "rows": 8,
      "reconciliation": {
        "status": "unverified",
        "message": "8 rows were extracted, but no running balance or opening and closing balances were found to verify them against. Compare the total with your statement.",
        "rows_ok": 0,
        "rows_review": 0,
        "rows_unchecked": 8,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 429,
          "role": "amount",
          "count": 8
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Date Description Amount",
      "period": {
        "start": "2013-05-01",
        "end": "2013-05-31"
      },
      "opening": null,
      "closing": -3444.46,
      "warnings": [
        "This statement has 3 separate ledgers (accounts or sections, each with its own beginning and ending balance). Each one is checked on its own.",
        "No running balance column and no opening balance were found."
      ],
      "runtime_ms": {
        "read_pdf": 559,
        "extract": 16
      }
    },
    {
      "id": "associated-cu-statement",
      "institution": "Associated Credit Union (Georgia)",
      "kind": "checking",
      "text_based": true,
      "pages": 2,
      "text_items": 187,
      "outcome": "needs-review",
      "rows": 4,
      "reconciliation": {
        "status": "needs-review",
        "message": "1 row needs review.",
        "rows_ok": 3,
        "rows_review": 1,
        "rows_unchecked": 0,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 445,
          "role": "amount",
          "count": 1
        },
        {
          "x": 477,
          "role": "ignore",
          "count": 1
        },
        {
          "x": 504,
          "role": "interest",
          "count": 1
        },
        {
          "x": 531,
          "role": "amount",
          "count": 4
        },
        {
          "x": 564,
          "role": "balance",
          "count": 4
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "infer",
        "order": "forward"
      },
      "header": "Date Transaction Description Amount- Balance-",
      "period": {
        "start": "2016-02-01",
        "end": "2016-02-29"
      },
      "opening": 4500,
      "closing": 5000,
      "warnings": [
        "This statement prints a hidden \"-\" after its numbers, so minus signs were ignored; money in or out was taken from the column or the running balance.",
        "Amounts have no signs on this statement; money in or out was worked out from the running balance.",
        "This statement has 3 separate ledgers (accounts or sections, each with its own beginning and ending balance). Each one is checked on its own.",
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 40,
        "extract": 6
      }
    },
    {
      "id": "scott-cu-statement",
      "institution": "Scott Credit Union (Illinois)",
      "kind": "checking",
      "text_based": true,
      "pages": 1,
      "text_items": 147,
      "outcome": "needs-review",
      "rows": 3,
      "reconciliation": {
        "status": "needs-review",
        "message": "2 rows need review; the totals are off by 1,306.50 (opening balance + transactions = -856.46, statement says 450.04).",
        "rows_ok": 1,
        "rows_review": 2,
        "rows_unchecked": 0,
        "totals_ok": false
      },
      "columns": [
        {
          "x": 501,
          "role": "debit",
          "count": 2
        },
        {
          "x": 534,
          "role": "credit",
          "count": 1
        },
        {
          "x": 564,
          "role": "balance",
          "count": 3
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Date Transaction Description Withdrawal- Deposit Balance-",
      "period": {
        "start": "2025-01-01",
        "end": "2025-01-31"
      },
      "opening": 550.04,
      "closing": 450.04,
      "warnings": [
        "This statement prints a hidden \"-\" after its numbers, so minus signs were ignored; money in or out was taken from the column or the running balance."
      ],
      "runtime_ms": {
        "read_pdf": 37,
        "extract": 4
      },
      "truth": {
        "truthRows": 3,
        "extractedRows": 3,
        "matched": 3,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 1,
        "balanceAccuracy": 1,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "stpaul-grad-ready-bank",
      "institution": "City of Saint Paul, Parks and Recreation (Grad Ready; content by NorthStar Education Services)",
      "kind": "checking",
      "text_based": true,
      "pages": 1,
      "text_items": 109,
      "outcome": "all-reconcile",
      "rows": 6,
      "reconciliation": {
        "status": "reconciled",
        "message": "All 6 rows reconcile against the statement's opening and closing balances.",
        "rows_ok": 6,
        "rows_review": 0,
        "rows_unchecked": 0,
        "totals_ok": true
      },
      "columns": [
        {
          "x": 378,
          "role": "credit",
          "count": 2
        },
        {
          "x": 430,
          "role": "debit",
          "count": 5
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Date Check # Description Deposit Withdrawal 9. List of deposits",
      "period": {
        "start": "2013-01-31",
        "end": "2013-01-31"
      },
      "opening": 527.63,
      "closing": 321.88,
      "warnings": [],
      "runtime_ms": {
        "read_pdf": 36,
        "extract": 3
      },
      "truth": {
        "truthRows": 7,
        "extractedRows": 6,
        "matched": 5,
        "precision": 0.8333,
        "recall": 0.7143,
        "foundWithWrongAmount": 1,
        "signErrors": 0,
        "amountAccuracy": 0.8333,
        "descriptionExact": 0.6,
        "balanceAccuracy": null,
        "missed": [
          {
            "date": "2013-01-14",
            "description": "Gas/Electric Bill (check 1006)",
            "amount": -25.15
          }
        ],
        "wrongAmount": [
          {
            "truth": {
              "date": "2013-01-19",
              "description": "Paycheck",
              "amount": 75
            },
            "extracted": {
              "date": "2013-01-19",
              "description": "Paycheck",
              "amount": 49.85
            }
          }
        ],
        "extra": []
      }
    },
    {
      "id": "cfpb-credit-card-handout",
      "institution": "Consumer Financial Protection Bureau",
      "kind": "credit_card",
      "text_based": true,
      "pages": 1,
      "text_items": 64,
      "outcome": "no-rows",
      "rows": 0,
      "reconciliation": {
        "status": "unverified",
        "message": "No transaction rows were found (lines that start with a date and end with an amount).",
        "rows_ok": 0,
        "rows_review": 0,
        "rows_unchecked": 0,
        "totals_ok": null
      },
      "columns": [],
      "interpretation": null,
      "header": null,
      "period": null,
      "opening": null,
      "closing": null,
      "warnings": [],
      "runtime_ms": {
        "read_pdf": 40,
        "extract": 1
      },
      "truth": {
        "truthRows": 0,
        "extractedRows": 0,
        "matched": 0,
        "precision": null,
        "recall": null,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": null,
        "descriptionExact": null,
        "balanceAccuracy": null,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "uga-extension-credit-card",
      "institution": "University of Georgia, College of Family and Consumer Sciences (reproduces the Federal Reserve Board sample statement)",
      "kind": "credit_card",
      "text_based": false,
      "pages": 4,
      "text_items": 47,
      "outcome": "no-rows",
      "rows": 0,
      "reconciliation": {
        "status": "unverified",
        "message": "No transaction rows were found (lines that start with a date and end with an amount).",
        "rows_ok": 0,
        "rows_review": 0,
        "rows_unchecked": 0,
        "totals_ok": null
      },
      "columns": [],
      "interpretation": null,
      "header": null,
      "period": null,
      "opening": null,
      "closing": null,
      "warnings": [
        "2 pages have no text layer (an image, probably scanned). Rows printed on them cannot be read by the free tool."
      ],
      "runtime_ms": {
        "read_pdf": 37,
        "extract": 1
      }
    },
    {
      "id": "rbfcu-credit-card-lesson",
      "institution": "Randolph-Brooks Federal Credit Union (\"It's a Money Thing\" lesson by Currency Marketing)",
      "kind": "credit_card",
      "text_based": true,
      "pages": 1,
      "text_items": 158,
      "outcome": "no-balances-to-check",
      "rows": 9,
      "reconciliation": {
        "status": "unverified",
        "message": "9 rows were extracted, but no running balance or opening and closing balances were found to verify them against. Compare the total with your statement.",
        "rows_ok": 0,
        "rows_review": 0,
        "rows_unchecked": 9,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 543,
          "role": "amount",
          "count": 9
        }
      ],
      "interpretation": {
        "source": "layout",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "when planning a budget. NUMBER DATE DATE",
      "period": null,
      "opening": null,
      "closing": null,
      "warnings": [
        "A header row was found but its column names were not recognized; column roles were inferred from the numbers.",
        "No statement period was found, so dates without a year were assumed to be in 2026. Set the year if that is wrong.",
        "Column roles were inferred (amount), not read from a header row.",
        "No running balance column and no opening balance were found.",
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 45,
        "extract": 3
      },
      "truth": {
        "truthRows": 9,
        "extractedRows": 9,
        "matched": 9,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 0,
        "balanceAccuracy": null,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "caped-cu-credit-card-lesson",
      "institution": "CapEd Credit Union (Idaho; \"It's a Money Thing\" lesson by Currency Marketing)",
      "kind": "credit_card",
      "text_based": true,
      "pages": 8,
      "text_items": 540,
      "outcome": "needs-review",
      "rows": 9,
      "reconciliation": {
        "status": "needs-review",
        "message": "The totals are off by 635.97 (opening balance + transactions = 809.26, statement says 1,445.23).",
        "rows_ok": 0,
        "rows_review": 0,
        "rows_unchecked": 9,
        "totals_ok": false
      },
      "columns": [
        {
          "x": 522,
          "role": "amount",
          "count": 9
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "TRANSACTION NUMBER TRANSACTION DATE POSTING DATE DESCRIPTION AMOUNT",
      "period": null,
      "opening": 593.43,
      "closing": 1445.23,
      "warnings": [
        "No statement period was found, so dates without a year were assumed to be in 2026. Set the year if that is wrong.",
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 161,
        "extract": 11
      }
    },
    {
      "id": "money-mentors-credit-card",
      "institution": "Money Mentors (Alberta non-profit credit counselling)",
      "kind": "credit_card",
      "text_based": true,
      "pages": 5,
      "text_items": 299,
      "outcome": "all-reconcile",
      "rows": 7,
      "reconciliation": {
        "status": "reconciled",
        "message": "All 7 rows reconcile against the statement's opening and closing balances.",
        "rows_ok": 7,
        "rows_review": 0,
        "rows_unchecked": 0,
        "totals_ok": true
      },
      "columns": [
        {
          "x": 387,
          "role": "amount",
          "count": 7
        }
      ],
      "interpretation": {
        "source": "layout",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "date Payment Due Date Mar. 30 20XX",
      "period": null,
      "opening": 168.8,
      "closing": 137.84,
      "warnings": [
        "No statement period was found, so dates without a year were assumed to be in 2026. Set the year if that is wrong.",
        "Column roles were inferred (amount), not read from a header row.",
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 105,
        "extract": 6
      },
      "truth": {
        "truthRows": 7,
        "extractedRows": 7,
        "matched": 7,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 1,
        "balanceAccuracy": null,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "niagara-univ-savings",
      "institution": "Niagara University (international admissions)",
      "kind": "savings",
      "text_based": true,
      "pages": 2,
      "text_items": 355,
      "outcome": "no-rows",
      "rows": 0,
      "reconciliation": {
        "status": "unverified",
        "message": "No transaction rows were found (lines that start with a date and end with an amount).",
        "rows_ok": 0,
        "rows_review": 0,
        "rows_unchecked": 0,
        "totals_ok": null
      },
      "columns": [],
      "interpretation": null,
      "header": null,
      "period": {
        "start": "2019-11-01",
        "end": "2019-11-21"
      },
      "opening": null,
      "closing": null,
      "warnings": [],
      "runtime_ms": {
        "read_pdf": 86,
        "extract": 4
      }
    },
    {
      "id": "cuanswers-black-bars",
      "institution": "CU*Answers (credit union service organization), \"Black Bars\" statement style",
      "kind": "checking",
      "text_based": true,
      "pages": 9,
      "text_items": 1006,
      "outcome": "needs-review",
      "rows": 55,
      "reconciliation": {
        "status": "needs-review",
        "message": "The totals are off by 147.38 (opening balance + transactions = 20,869.87, statement says 21,017.25).",
        "rows_ok": 45,
        "rows_review": 0,
        "rows_unchecked": 10,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 188,
          "role": "interest",
          "count": 3
        },
        {
          "x": 220,
          "role": "debit",
          "count": 29
        },
        {
          "x": 260,
          "role": "debit",
          "count": 3
        },
        {
          "x": 299,
          "role": "credit",
          "count": 10
        },
        {
          "x": 329,
          "role": "credit",
          "count": 3
        },
        {
          "x": 377,
          "role": "balance",
          "count": 39
        },
        {
          "x": 396,
          "role": "balance",
          "count": 6
        },
        {
          "x": 562,
          "role": "amount",
          "count": 10
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "infer",
        "order": "forward"
      },
      "header": "TRANS DATE POST DATE WITHDRAWAL/DEBIT DEPOSIT/CREDIT BALANCE TRANSACTION DESCRIPTION",
      "period": {
        "start": "2019-12-01",
        "end": "2019-12-31"
      },
      "opening": 9673.85,
      "closing": 2209.5,
      "warnings": [
        "This statement has 8 separate ledgers (accounts or sections, each with its own beginning and ending balance). Each one is checked on its own.",
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 136,
        "extract": 20
      },
      "truth": {
        "truthRows": 55,
        "extractedRows": 55,
        "matched": 55,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 1,
        "balanceAccuracy": 1,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "cuanswers-two-column",
      "institution": "CU*Answers (credit union service organization), \"Two-Column\" statement style",
      "kind": "checking",
      "text_based": true,
      "pages": 7,
      "text_items": 913,
      "outcome": "needs-review",
      "rows": 21,
      "reconciliation": {
        "status": "needs-review",
        "message": "2 rows need review; 5 ending balances do not match the opening balance plus transactions; 3 printed balances do not match the running total.",
        "rows_ok": 7,
        "rows_review": 2,
        "rows_unchecked": 12,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 240,
          "role": "amount",
          "count": 14
        },
        {
          "x": 294,
          "role": "balance",
          "count": 14
        },
        {
          "x": 536,
          "role": "amount",
          "count": 4
        },
        {
          "x": 562,
          "role": "amount",
          "count": 10
        },
        {
          "x": 590,
          "role": "balance",
          "count": 4
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "PARTICIPATION! Date Description Amount Balance",
      "period": {
        "start": "2019-12-01",
        "end": "2019-12-31"
      },
      "opening": 66459.59,
      "closing": 66551.49,
      "warnings": [
        "This statement has 6 separate ledgers (accounts or sections, each with its own beginning and ending balance). Each one is checked on its own.",
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 119,
        "extract": 12
      }
    },
    {
      "id": "commerce-bank-checking",
      "institution": "Commerce Bank (Kansas City, Missouri)",
      "kind": "checking",
      "text_based": true,
      "pages": 1,
      "text_items": 80,
      "outcome": "needs-review",
      "rows": 3,
      "reconciliation": {
        "status": "needs-review",
        "message": "The totals are off by 3,700.08 (opening balance + transactions = 6,821.11, statement says 10,521.19).",
        "rows_ok": 0,
        "rows_review": 0,
        "rows_unchecked": 3,
        "totals_ok": false
      },
      "columns": [
        {
          "x": 261,
          "role": "amount",
          "count": 3
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Date Paid Check Number Amount Reference Number",
      "period": {
        "start": "2003-05-03",
        "end": "2003-06-05"
      },
      "opening": 7126.11,
      "closing": 10521.19,
      "warnings": [],
      "runtime_ms": {
        "read_pdf": 18,
        "extract": 1
      },
      "truth": {
        "truthRows": 5,
        "extractedRows": 3,
        "matched": 3,
        "precision": 1,
        "recall": 0.6,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 0,
        "balanceAccuracy": null,
        "missed": [
          {
            "date": "2003-05-15",
            "description": "Deposit Ref Nbr: 130012345",
            "amount": 3615.08
          },
          {
            "date": "2003-05-18",
            "description": "ATM Withdrawal 1000 Walnut St M119 Kansas City MO 00005678",
            "amount": -20
          }
        ],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "bac-bank-statement-example",
      "institution": "Boston Architectural College (international admissions)",
      "kind": "checking",
      "text_based": true,
      "pages": 1,
      "text_items": 91,
      "outcome": "needs-review",
      "rows": 13,
      "reconciliation": {
        "status": "needs-review",
        "message": "1 row needs review.",
        "rows_ok": 11,
        "rows_review": 1,
        "rows_unchecked": 1,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 304,
          "role": "debit",
          "count": 7
        },
        {
          "x": 354,
          "role": "credit",
          "count": 3
        },
        {
          "x": 397,
          "role": "balance",
          "count": 9
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Date Description Money out Money In Balance",
      "period": {
        "start": "2019-03-01",
        "end": "2019-03-01"
      },
      "opening": 40000,
      "closing": null,
      "warnings": [],
      "runtime_ms": {
        "read_pdf": 85,
        "extract": 3
      },
      "truth": {
        "truthRows": 13,
        "extractedRows": 13,
        "matched": 13,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 0.9231,
        "balanceAccuracy": 0.9231,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "ncua-money-basics",
      "institution": "National Credit Union Administration (MyCreditUnion.gov)",
      "kind": "checking",
      "text_based": true,
      "pages": 29,
      "text_items": 995,
      "outcome": "needs-review",
      "rows": 22,
      "reconciliation": {
        "status": "needs-review",
        "message": "2 rows need review.",
        "rows_ok": 18,
        "rows_review": 2,
        "rows_unchecked": 2,
        "totals_ok": null
      },
      "columns": [
        {
          "x": 434,
          "role": "amount",
          "count": 22
        },
        {
          "x": 494,
          "role": "balance",
          "count": 22
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Date Transaction Detail Transaction Details Amount($) Balance($)",
      "period": {
        "start": "2022-11-22",
        "end": "2022-12-21"
      },
      "opening": null,
      "closing": 3240,
      "warnings": [
        "This statement has 2 separate ledgers (accounts or sections, each with its own beginning and ending balance). Each one is checked on its own."
      ],
      "runtime_ms": {
        "read_pdf": 303,
        "extract": 22
      },
      "truth": {
        "truthRows": 22,
        "extractedRows": 22,
        "matched": 22,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 0.9545,
        "balanceAccuracy": 1,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    },
    {
      "id": "stanford-fcu-credit-card",
      "institution": "Stanford Federal Credit Union",
      "kind": "credit_card",
      "text_based": true,
      "pages": 2,
      "text_items": 291,
      "outcome": "all-reconcile",
      "rows": 6,
      "reconciliation": {
        "status": "reconciled",
        "message": "All 6 rows reconcile against the statement's opening and closing balances.",
        "rows_ok": 6,
        "rows_review": 0,
        "rows_unchecked": 0,
        "totals_ok": true
      },
      "columns": [
        {
          "x": 437,
          "role": "amount",
          "count": 6
        }
      ],
      "interpretation": {
        "source": "header",
        "signMode": "signed",
        "order": "forward"
      },
      "header": "Tran Date Post Date Description Reference Number Amount",
      "period": {
        "start": "2023-04-02",
        "end": "2023-04-27"
      },
      "opening": 8.1,
      "closing": 395.84,
      "warnings": [
        "Rows from a credit card, credit line or loan account are signed as the change in what you owe: charges are positive, payments and credits are negative. Use \"Flip signs\" if your accounting system expects money out as negative."
      ],
      "runtime_ms": {
        "read_pdf": 99,
        "extract": 5
      },
      "truth": {
        "truthRows": 5,
        "extractedRows": 5,
        "matched": 5,
        "precision": 1,
        "recall": 1,
        "foundWithWrongAmount": 0,
        "signErrors": 0,
        "amountAccuracy": 1,
        "descriptionExact": 0.4,
        "balanceAccuracy": null,
        "missed": [],
        "wrongAmount": [],
        "extra": []
      }
    }
  ]
}
