A code that looks numeric is often an identifier. A postal reference, product code or student number may need its leading zeros. Converting every spreadsheet value to a number can silently change that information.
CSV to JSON treats CSV cells as strings. This makes its output predictable for records where the exact text matters more than guessed data types.
A small file that reveals the difference
Paste these two lines: name,code on the first line, then Ali,001 on the second. The resulting object contains "code":"001". It does not turn the code into the number 1.
The first row supplies the field names. Headers must be nonempty and unique. If two columns both say code, rename one before converting so the object has an unambiguous structure.
Choose the delimiter that your CSV actually uses. Quoted commas, doubled quotation marks and newlines inside quoted cells are handled as cell content. A line ending inside a quoted note does not automatically start a new record.
Keep type decisions separate
An amount such as 1200 becomes "1200". A true or false looking cell also remains text. If an application requires a numeric amount or a Boolean flag, make that conversion deliberately in the receiving code.
Rows must have the same number of cells as the header. A short row is not padded silently, and a malformed quotation mark should be corrected at the source.
Review one record with a quoted note and one with an empty cell before downloading. The output is a record array suited to small exchanges, not a spreadsheet formula evaluator. Limits on rows, columns and input bytes mean large accounting exports should be processed through a dedicated data pipeline.
