The file is read in your browser and is never uploaded. Columns are matched by their header names, so it still works if BMS reorders them.
{Column name} inserts that BMS column. Add |money to show it as a dollar amount with two decimals, e.g. {Fee covered by supporter|money}.
Text inside [ ] is left out when a column inside it is blank or $0, so a gift with no message doesn't get an empty “Donor notes:”.