# More\_than\_one\_match\_found when updating a single custom record in NetSuite via Celigo

**URL:** <https://connective.celigo.com/t/more-than-one-match-found-when-updating-a-single-custom-record-in-netsuite-via-celigo/5963>\
**Category:** Integrator.io\
**Tags:** netsuite\
**Created:** [December 24, 2025, 12:53pm UTC](https://connective.celigo.com/t/more-than-one-match-found-when-updating-a-single-custom-record-in-netsuite-via-celigo/5963 "2025-12-24T12:53:18Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![nuriensing](https://sea1.discourse-cdn.com/flex001/user_avatar/connective.celigo.com/nuriensing/32/6918_2.png) [@nuriensing](https://connective.celigo.com/u/nuriensing)\
**Post date:** [December 24, 2025, 12:53pm UTC](https://connective.celigo.com/t/more-than-one-match-found-when-updating-a-single-custom-record-in-netsuite-via-celigo/5963/1 "2025-12-24T12:53:18Z")

</div>

I’m trying to update **one specific custom record** in NetSuite via **Celigo** , but every lookup returns a `more_than_one_match_found` error, even though only one record exists.

### 1. Background

- Custom record type: **AFP**
- NetSuite record type (internal): `customsale_afp`
- Goal: **Update exactly one AFP record via Celigo**

### 2. Problem with lookup criteria

In the **Celigo lookup criteria** for the AFP record:

- **Internal ID** is **not available** in the dropdown list for this custom record type.

Workaround I tried:

1. Temporarily change the record type to **Transaction**
2. Add a lookup criterion using `internalid`
3. Switch the record type back to **AFP**

### 3. Result when using Internal ID

Even when I use the **exact internal ID** of the AFP record, Celigo returns:

```auto
{
  "code": "more_than_one_match_found",
  "message": "A mapping error occurred. More than one match for \"[\"internalid\",\"is\",\"52719\"]\" for the record type \"customsale_afp\".",
  "source": "lookup"
}

```

This happens despite:

- Only **one AFP record** existing with this internal ID
- That record having **only one line**

### 4. Tried using a unique custom field instead

To rule out internal ID issues, I:

- Added a **custom body field** (`custbody_afp_id`) to the AFP record
- Populated **only one AFP record** with a unique value (`1337`)
- Used that field as the lookup criterion

Result:

```auto
{
  "code": "more_than_one_match_found",
  "message": "A mapping error occurred. More than one match for \"[\"custbody_afp_id\",\"is\",\"1337\"]\" for the record type \"customsale_afp\".",
  "source": "lookup"
}

```

### 5. Additional things I tried

- Different operators: `is`, `any of`, `equal to`
- Adding `mainline = T` and `mainline = F`
- Reducing the Celigo mapping to a **single field update**
- Ensuring only **one record** in NetSuite has that value

None of these changed the result.

### 6. What confuses me

- There is **only one AFP record**
- That record has **only one line**
- Both **internal ID** and a **unique custom field** still return “more than one match”

### 7. Possible clue

The **customer on the AFP record is a child customer** (sub-customer).  
I’m not sure if this could affect the lookup behavior.

### 8. Question

Has anyone seen `more_than_one_match_found`:

- On **custom transaction records**
- When the lookup clearly targets a **single record**
- Or related to **child / parent customers**

Any insight into what NetSuite or Celigo might be matching “multiple times” here would be appreciated.

---

<div class="post-metadata">

**Author:** ![tylerlamparter](https://sea1.discourse-cdn.com/flex001/user_avatar/connective.celigo.com/tylerlamparter/32/9204_2.png) [@tylerlamparter](https://connective.celigo.com/u/tylerlamparter)\
**Post date:** [December 26, 2025, 11:52pm UTC](https://connective.celigo.com/t/more-than-one-match-found-when-updating-a-single-custom-record-in-netsuite-via-celigo/5963/2 "2025-12-26T23:52:43Z")

</div>

What happens if you try the same criteria on a lookup as opposed to a lookup within an import?

---

<div class="post-metadata">

**Author:** ![nuriensing](https://sea1.discourse-cdn.com/flex001/user_avatar/connective.celigo.com/nuriensing/32/6918_2.png) [@nuriensing](https://connective.celigo.com/u/nuriensing)\
**Post date:** [December 28, 2025, 11:45am UTC](https://connective.celigo.com/t/more-than-one-match-found-when-updating-a-single-custom-record-in-netsuite-via-celigo/5963/3 "2025-12-28T11:45:24Z")

</div>

This did the trick, thanks @tylerlamparter .

What I did was create a lookup and determine the exact criteria needed to return a single record. It turned out the lookup only worked with these specific conditions:

– Record type: Transaction criteria  
– `custbody_afp_id` equal to `1337`  
– `mainline` is `true`

In the import step, I changed the record type from **AFP (custom record)** to **Transaction** so I could use the **equal to** operator and add the **mainline** condition. After that, I switched the record type back to **AFP**.

By the way, why can’t we use all fields or operators directly when working with a custom record, now you need to switch from record A to B in order to get the correct criteria in Celigo.

---

<div class="post-metadata">

**Author:** ![tylerlamparter](https://sea1.discourse-cdn.com/flex001/user_avatar/connective.celigo.com/tylerlamparter/32/9204_2.png) [@tylerlamparter](https://connective.celigo.com/u/tylerlamparter)\
**Post date:** [December 30, 2025, 2:10am UTC](https://connective.celigo.com/t/more-than-one-match-found-when-updating-a-single-custom-record-in-netsuite-via-celigo/5963/4 "2025-12-30T02:10:58Z")

</div>

Can you share what field type `custbody_afp_id` is on the NetSuite custom record? Also, if you run a search in the NetSuite UI for that custom record, what operand options does it give you? I think we detect the field type and provide the appropriate operands, but there may be an issue here. Usually, `equal to` is only for number-type fields.

---

<div class="post-metadata">

**Author:** ![nuriensing](https://sea1.discourse-cdn.com/flex001/user_avatar/connective.celigo.com/nuriensing/32/6918_2.png) [@nuriensing](https://connective.celigo.com/u/nuriensing)\
**Post date:** [December 30, 2025, 8:22am UTC](https://connective.celigo.com/t/more-than-one-match-found-when-updating-a-single-custom-record-in-netsuite-via-celigo/5963/5 "2025-12-30T08:22:45Z")

</div>

`custbody_afp_id` is an integer field so thats correct.
