AssembleyAssembley
PricingSecurityAbout

Importing Voters from CSV or Excel

How to import your voter register into Assembley from a CSV or Excel file — the columns each group type expects, how the Class column works for weighted groups, and how invalid rows are handled.

For anything bigger than a handful of voters, importing a file is far quicker than adding people one at a time. Assembley reads .csv, .xlsx, and .xls files, and the columns it expects adapt to the type of the group you're importing into — so the import always matches how that group votes. This article explains the formats.

The columns depend on the group

The import is group-aware. Open the import for the group you want to fill, and the expected columns will be:

  • Association groupName, Email. Each member is given a weight of one automatically.
  • Company group without share classesName, Email, Share Capital, Voting rights — the direct, two-number format.
  • Company group with share classesName, Email, Share Capital, Class. The Class column holds the name of a share class you have already created for the group; Assembley looks it up and computes each voter's weight from it.

The format guide inside the import shows the exact columns and an example for the group you're importing into, so you don't have to guess.

How weighted rows are computed

For a company group with classes, you don't put a voting-rights number in the file — you put the class name, and the voting weight is computed as share capital × the class multiplier. So a row with 1,000 capital in an "A" class that carries a ×10 multiplier becomes a voting weight of 10,000. See How Voting Weight Is Calculated. For a company group without classes, you enter the voting rights directly.

Reading the file

A few rules keep imports predictable:

  • Row 1 is the header; data starts on row 2.
  • It's the column order that's read, not the header text — so the headers can say whatever you like as long as the columns are in the expected order.
  • One voter per row.

How errors are handled

The import validates each row and shows you a preview before anything is saved. Common issues — a missing name, an invalid email, a number where text was expected, or (for classed groups) a Class name that doesn't match any class in the group — are flagged per row and those rows are skipped, while the valid rows still import. This means a single bad row never blocks the rest of your file; you fix the flagged rows and re-import them.

Before you import a classed register

If your group uses share classes, create the classes first — the Class column in your file has to match them by name. See Creating Share Classes with Vote Multipliers.

Where to go next

For the group itself, see Creating and Managing Voter Groups. To tidy a register after import, see Editing and Removing Voters.

Related articles