SUMMARY
There is a field serialization bug in the Payment Log Detail Report CSV export. In recent exports, an entire data field (Apply Payment Towards) is omitted from every row in the output. Because the CSV header line still defines 18 columns while the data rows only contain 17 fields, all values from Column 16 onward shift one column to the left.
DESCRIPTION OF THE ISSUE
When exporting the Payment Log Detail Report, the header output contains 18 columns: , SB User ID,BSA Member ID,First Name,Middle Name,Last Name,Nick Name,Patrol,Payment Log ID,Payment Type,Log Date,Description,Amount,Check or Trxn ID,Category,Apply Payment Towards,Net Change,Notes
However, the generated data rows only contain 17 comma-separated values. The field corresponding to Apply Payment Towards (and its blank comma delimiter when empty) is completely missing from the row generator.
GENERIC COLUMN SHIFT IMPACT
Standard Export (18 Fields):
-
Column 15 (Category): “Category Name”
-
Column 16 (Apply Payment Towards): “Target Description”
-
Column 17 (Net Change): 0.0000
-
Column 18 (Notes): “”
Current Export (17 Fields - Broken):
-
Column 15 (Category): “Category Name”
-
Column 16 (Apply Payment Towards): 0.0000 (Account Balance / Net Change wrongly shifts here)
-
Column 17 (Net Change): Blank
-
Column 18 (Notes): Blank
CONSEQUENCES
-
Broken Data Parsing: When importing the CSV into Excel the Net Change / Balance column appears completely blank.
-
Data Misalignment: Financial totals for Net Change are erroneously labeled under Apply Payment Towards.
SECONDARY ISSUE
The first column header in Line 4 is leading with an empty string (“”), even though every data row starts with “Scout” or “Leader”. Updating the header to include Member Type (or Account Type) as Column 1 would fix this secondary header gap.
SUGGESTED FIX FOR DEVELOPERS
Ensure the CSV serialization routine writes 18 elements per row, even when Apply Payment Towards is null or empty (e.g., write empty string placeholders so the comma count remains consistent).

