# Update Contact Details in Zuora

Limio makes it easy to keep your customer contact details up-to-date in Zuora. When an order is submitted via Limio, it is possible to update the Bill To and Sold To contact details in Zuora, as long as the order includes the relevant fields with correctly structured values.

This guide explains how the update process works and outlines the fields that are mapped between Limio and Zuora.

## How the Update Process Works

When an order is created in Limio (e.g. from a new order from a checkout or subscription update from a self-serve page), Limio can send contact information to Zuora as part of that order. This ensures that your customer’s details are always up-to-date in your billing system, reducing the risk of failed deliveries or missed communications.

Additionally, if a sync is triggered in Limio to pull data from Zuora, the same mappings will be used to populate the contact fields on the Limio object.

## Field Mappings Between Limio and Zuora

Limio and Zuora use slightly different naming conventions for contact fields. To support synchronization, Limio uses a predefined mapping that links Limio’s field names with the corresponding Zuora fields.

**Here are the supported mappings:**

| **Limio Field** | **Zuora Contact Field (API)** | **Zuora UI Equivalent** |
| --------------- | ----------------------------- | ----------------------- |
| `address1`      | `Address1`                    | Street Address (Line 1) |
| `address2`      | `Address2`                    | Street Address (Line 2) |
| `city`          | `City`                        | City                    |
| `state`         | `State`                       | State/Province          |
| `county`        | `County`                      | County                  |
| `postalCode`    | `PostalCode`                  | ZIP / Postal Code       |
| `country`       | `Country`                     | Country                 |
| `firstName`     | `FirstName`                   | First Name              |
| `lastName`      | `LastName`                    | Last Name               |
| `email`         | `PersonalEmail`               | Email                   |
| `phone`         | `MobilePhone`                 | Mobile Phone            |
| `workPhone`     | `WorkPhone`                   | Work Phone              |
| `otherPhone`    | `OtherPhone`                  | Other Phone             |
| `workEmail`     | `WorkEmail`                   | Work Email              |

If these fields are included in the order payload and a sync is configured, Zuora will receive the updated values and apply them to the corresponding contacts.

## Example usage in Out-of-the-Box Limio components

Limio’s out-of-the-box (OOTB) components make it easy to populate contact details in Zuora using form inputs. [The Form Component and its customisable Subcomponents](https://docs.limio.com/components/component-library/modular-checkout-components/common-customisations-for-form-subcomponents) allow you to specify which fields you want to capture and send to Zuora.

To map a form field to Zuora, simply set the field name in the form to match the Limio field name listed in the table above, prefixed with `customerDetails.`. For example, to capture a work phone number, use:

`customerDetails.workPhone`

Once configured, rebuild and republish your page. No additional configuration is needed — these fields are handled by default in Zuora.

<figure><img src="/files/R5tBGchSQ0OU0pkYHqwk" alt=""><figcaption></figcaption></figure>

#### What Happens Next

Regardless of whether you use Limio's OOTB components or a custom one, once the order is submitted:

* The `customerDetails` fields are sent with the order payload.
* Limio maps these fields to the corresponding Zuora contact fields (e.g. `workPhone` → `WorkPhone`).
* Zuora updates the **Bill To** and **Sold To** contact details on the relevant customer account.

There’s no need for additional configuration, as long as:

* The fields match those listed in the mapping table.
* The payload follows the correct structure under `customerDetails`.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.limio.com/integrations/keeping-zuora-and-limio-in-sync/how-limio-events-updates-zuora-for-commerce/updating-contact-details-in-zuora-via-limio-orders.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
