Clean a customer address list in an afternoon
A customer list collects years of typing. The fix is not to read every row, but to let the address data sort the rows and to spend people only on the ones it cannot decide.
What you have
The customer export with an address column. Six rows: a house written twice, a line without a ZIP code, a number that is not on its street:
id,name,address 1,Ana Ruiz,"233 S Wacker Dr, Chicago, IL 60606" 2,Ben Cole,"233 South Wacker Drive, Chicago IL" 3,Cara Diaz,"1600 Pennsylvania Ave NW, Washington, DC 20500" 4,Dan Ford,"350 Fifth Avenue, New York" 5,Eve Gray,"99999 Pennsylvania Ave NW, Washington, DC 20500" 6,Finn Hale,"1060 W Addison St, Chicago, IL 60613"
Steps
1. Measure the list before you touch it, and keep the page for the ticket (audit):
$ gridpin-pro audit usa.bin customers.csv -o before.html 6 rows, 1 repeat an earlier address, 1 without an answer; ISO 20022: 4 structured, 2 hybrid, 0 none
2. Accept what the file confirms and put the doubtful rows on a review page (weak rows):
$ gridpin-pro batch usa.bin customers.csv checked.csv --review review.html 6 rows
3. Find the addresses that do not exist and ask the customer (what GridPin checks):
$ gridpin exists usa.bin "99999 Pennsylvania Ave NW, Washington, DC 20500"
{"exists":"no","reason":"number_not_on_street"}
4. Merge the rows that name one house (duplicates):
$ gridpin-pro dedupe usa.bin customers.csv -o groups.csv 6 rows, 5 groups, 1 rows merged into another, 0 rows without an answer
What you get
Four files to act on: before.html to report the state, checked.csv with an action for every row, review.html for the person who checks the doubtful ones, groups.csv with the duplicates and the row to keep. Run the audit again at the end to show what changed.
Why it works
Each step uses the same geocoding of the same rows, so the counts agree: a row accepted in step 2 is the house the audit counted, and two rows merged in step 4 are the same house the review would show. People only look at the rows marked CONFIRM.
Limits
- Nothing is deleted or changed in your system: the tools write files, you apply them.
- A row the file cannot decide still needs a person or the customer.
- Delivery status and flat numbers are not checked.
All its keys: audit, batch, exists, dedupe. Part of gridpin-pro, which comes with a Starter or Pro subscription: Free, Starter and Pro.