How to Send Us Your MDM/CIS Data
Last updated: October 15, 2026
Customer and account information, at whatever level of identifying detail you're ready to share.
For this purpose, your MDM (Meter Data Management) and CIS (Customer Information System) are treated as the same source: customer and account-level information, as opposed to meter identity or interval usage — that's covered separately in How to Send Us Your AMI Data. This data can be sent at three levels of detail, from anonymous location data up to a direct link between a customer and a specific meter. Pick the level that fits what you're comfortable sharing and what you're trying to accomplish.
Choose your level of detail
Level | What you send | Best for |
|---|---|---|
1. Location only | Coordinates (latitude/longitude) + account number — no PII | Seeing where accounts sit on a map without sharing any customer information. Texture matches coordinates to a service address and account. |
2. Location + customer identity | Service address or coordinates, plus account number and customer name | Tying an account to a place and a person, without going all the way to meter-level detail. |
3. Full grid context | Service address or coordinates, account number, customer name, and meter number | The richest view — linking a customer directly to a specific meter, which is what lets this data combine with your AMI interval data. |
IMPORTANT Levels 2 and 3 carry personally identifiable customer information. Customer name, email, and phone are PII. Send those files the same way you send the rest of your onboarding data, and limit access on both sides to the people who need it. Level 1 files contain no PII at all. |
What to send
Pick the level of detail that fits your use case. You can start at Level 1 and move to a richer level later — nothing about the file format changes, just which columns you include.
Send one row per account or location. One file, one row per customer account (Levels 2 and 3) or per location (Level 1) — not per meter and not per premise.
Level 1 — Location only
One row per location, coordinates only.
Field | Required? | Notes |
|---|---|---|
latitude, longitude | Required | Up to 5 decimal places (about 1 meter), the same precision convention used in your AMI data — see How to Send Us Your AMI Data. Don't round on export. |
Level 2 — Location + customer identity
One row per account.
Field | Required? | Notes |
|---|---|---|
service_address | Required* | Full service address (house number, street, city, state, ZIP). *Coordinates (latitude/longitude) work in place of an address if that's what you have. |
account_number | Required | The identifier your utility uses for this account or service. |
full_name | Required | Account holder's name. |
Optional | ||
phone | Optional |
Level 3 — Full grid context
One row per account, linked directly to a meter.
Field | Required? | Notes |
|---|---|---|
service_address | Required | Full service address (house number, street, city, state, ZIP). *Coordinates (latitude/longitude) work in place of an address if that's what you have. |
meter_id | Required | Must match a meter_id in your AMI data — see How to Send Us Your AMI Data. This is what links the account directly to a specific meter, rather than just an address. |
full_name | Required | Account holder's name. |
Optional | Texture will never email your customers without permission. | |
phone | Optional | |
account_number | Required | Still useful if you have it, but meter_id is the primary link at this level. |
How this ties back to your meters
Level 1 — Texture matches coordinates to a service address and account internally, using data already on file. No action needed on your end beyond sending accurate coordinates.
Level 2 — Texture matches on the account or service number. If your account numbering doesn't line up directly with a field in your meter data, let your Texture contact know so we can agree on the right matching approach before you send a full file.
Level 3 — the meter_id column links the account directly to a specific meter, the same meter_id used in your AMI data. This is what lets Texture combine customer and account context with interval usage.
Good to know
This is a separate delivery from your meter data. Send it alongside, not merged into, your AMI file — Texture matches the two after both arrive, whichever level you send.
meter_id is the strongest link. Level 3's meter_id ties an account directly to a specific meter; Levels 1 and 2 tie back through coordinates or an account number instead, which depend on those matching cleanly against your meter or site data.
More contact detail only helps where you have it. Email and phone are useful downstream but aren't required at any level — the required fields for your chosen level are enough to onboard.