> ## Documentation Index
> Fetch the complete documentation index at: https://help.maestra.io/llms.txt
> Use this file to discover all available pages before exploring further.

# How to edit existing customers via import

Prepare a correctly formatted file and upload it to bulk-edit customers in your project.

If you need to apply a specific action template, attach the import to a particular point of contact, add customers to a segment, or backdate the action — use the [advanced settings](#step-3-configure-the-import).

Imports run from **Settings → Import**. Click **New import** to open the wizard.

## Step 1. Choose an action

1. Pick the import type — **Customers**.
2. Pick the action:
   * **Edit existing** — updates existing customers only. New records are not created.
   * **Add and edit** — updates existing customers and creates new ones for rows that don't match.

## Step 2. Prepare and upload the file

1. Decide which fields to load. The full list is below.

   <Note>
     Each row must include at least one customer identifier: email, mobile phone, or an external identifier. Other fields are optional.
   </Note>

   **Available fields:**

   | Field                                                                                           | Description                                                  |
   | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
   | `Email`                                                                                         | Email address                                                |
   | `IsEmailConfirmed`                                                                              | Whether the email is confirmed                               |
   | `MobilePhone`                                                                                   | Mobile phone                                                 |
   | `IsMobilePhoneConfirmed`                                                                        | Whether the mobile phone is confirmed                        |
   | `DiscountCard`                                                                                  | Loyalty card number                                          |
   | `Area`                                                                                          | Customer's area identifier                                   |
   | `LastName`                                                                                      | Last name                                                    |
   | `FirstName`                                                                                     | First name                                                   |
   | `MiddleName`                                                                                    | Middle name                                                  |
   | `FullName`                                                                                      | Full name                                                    |
   | `Sex`                                                                                           | Gender                                                       |
   | `BirthDate`                                                                                     | Date of birth                                                |
   | `IsSubscribed`                                                                                  | Global subscription flag                                     |
   | `IsSubscribedByEmail`                                                                           | Subscription on the Email channel                            |
   | `IsSubscribedBySms`, `IsSubscribedByViber`, `IsSubscribedByMobilePush`, `IsSubscribedByWebPush` | Subscription on other channels                               |
   | `IsSubscribedByEmailOnNews`                                                                     | Topic-level subscription (one per topic/channel combination) |
   | Custom fields                                                                                   | Any custom fields created in your project                    |

   <Note>
     **Multi-brand projects:** `IsSubscribed`, `IsSubscribedByEmail`, and topic-level subscription fields subscribe the customer to the brand associated with the import's point of contact. See [How to subscribe customers to a brand](#how-to-subscribe-customers-to-a-brand) below.
   </Note>

2. Export your data from the source system if needed.

3. Prepare the file. Put column headers (field names) in the first row.

   * Format: `.csv` or `.txt`
   * Recommended encoding: UTF-8
   * Make sure values match the expected formats

   See [Preparing a file for import](/import-data/preparing-a-file-for-import) for details.

4. Upload the file and click **Continue**.

## Step 3. Configure the import

On this step, you can set additional parameters:

* **Data source** — the integration point that indicates where the data originated. Affects how customer actions are attributed. Defaults to "Maestra Platform admin panel."
* **Point of contact** — the channel or integration the action is tied to. By default, it's derived automatically from the data source. To tie customers explicitly to a specific site or store, pick the point of contact manually.
* **Segment** — a static segment to add every customer from the file to. You can pick an existing segment or create a new one.

Each parameter can be set either in the UI (applied to every row) or per row inside the file itself.

### Set a point of contact

If the point of contact you need doesn't exist yet, create it ahead of time or from the link on the import page.

**All rows share the same point of contact:** pick the data source with that point in the settings, or set it explicitly.

**Rows have different points of contact:** add a `LastUpdatePointOfContact` column to your file with the external identifier of the point of contact for each row, and enable **Take value from file** in the settings.

### Add to a segment

Pick an existing static segment or create a new one from the import page.

### Use an action template

The edit action can be recorded with an action template only if you set it in the file and the template is in the "Personal action" category. Otherwise, the customer changes are saved without recording an action.

If the template you need doesn't exist yet, create it ahead of time.

Specify the template in the file using the `LastUpdateActionTemplate` column with the template's system name, and enable **Take value from file** in the settings.

### Backdate the action

There's no UI setting for action time. To backdate, add a `LastUpdateDateTime` column to your file with the timestamp for each row.

If you omit the column, actions are recorded with the time the import job ran.

### How to subscribe customers to a brand

On multi-brand projects, the brand of the data source's point of contact determines the brand of the subscription passed via `IsSubscribed`, `IsSubscribedByEmail`, and `IsSubscribedByEmailOnNews`.

To subscribe customers to multiple brands at once, run the import once per brand.

<Steps>
  <Step title="Find the data source for the brand">
    Open the **Integrations** section and filter by brand.
  </Step>

  <Step title="Pick the data source you want to use">
    For example, to subscribe customers to the Demo brand, pick the data source for that brand's site.
  </Step>

  <Step title="Select that data source in Step 3 of the import" />
</Steps>

## Step 4. Review and start the import

Before launching, Maestra Platform shows the first rows of your file with the mapping applied. Confirm that values land in the correct fields.

If everything looks right, click **Start import**.

## Tracking the import

After it starts, the import appears in the list on the Import page. Each job shows:

* Date started
* Import type
* Who started it

If errors occurred, some rows will have been skipped. Open the import details to see which rows failed and why.

<Note>
  An edit action is recorded for a customer only if the customer was actually changed by the import **and** the file included a `SourceActionTemplate` column with a "Personal action" template.
</Note>
