New Customer Doesnt Import Into Sandbox

One of our partners will start sending us new Customer files soon. The files will only contain NEW customers (will not exist in NetSuite). We have an Import Customer flow and keep getting the below error when we try to import a dummy customer via txt file. The record type is Customer.

*Failed to save record because: Please enter value(s) for : Company Name"

We are trying to import new customers into

Here are the mappings:

Here is the field and field id in NetSuite. We've tried mapping Company Name and companyname but no luck

Here is a screenshot of our test file and dummy customer:

Any help as to why the import is failing would be very helpful and appreciative.

Thanks.

Would you mind posting the View Request tab??

Sure, here you go.

Hmmm. Something looks off here. Celigo sees the entire record as having no data in it. What does the preview look like in your export? Is it CSV data?

Here is the preview from the export step

And here is the preview from the import step, field mappings

The source file is a txt file,tab delimited.

Hi, You've got the column delimiter set to comma, you should set it to tab. In the retry data for your error you can see the data isnt split into columns correctly.

3 Likes

AHH, that was it! Such a simple fix and the new customer has imported. Thank you Bas!
However i noticed the Sales Rep is not importing, the field is just blank.
image

The Sales Rep ID is in the source file. The sales rep id is tied to an Employee name, which should populate.

Here is the current mapping for the sales rep
image

I also tried mapping to the sales rep (ID) field, but when i do, i get the below error.

For reference, here is the sale rep field at the customer level

And the sales rep id at the employee level.

Hello,
i forgot to mention we have a Sales Rep checkbox on the employee record, that is checked accordingly when the employee is initially created.

So to recap, our partner sends us a customer file that contains the sales rep number, 830, shown in previous post.

The sales rep checkbox is marked on the employee record and sales rep number populated.

Then we can select the sales rep name at the customer level.

Not sure if we can import the sales rep number, 830, and have the sales rep name populate when a new customer is imported.

Are you trying to CREATE a sales rep? Or just match them to a customer?

The error you posted regarding the reference key indicates that the sales rep is not marked as active in the NetSuite record, and is looking for an active rep. Have you checked for that in the reps record?

Im trying to match the customer sales rep number in the source file to the sales rep that is attached to the customer.

Yes, the sales rep is active.

Thank you.

I'm sorry, I overlooked this part:

I think a couple things you could consider. You might find success in using a lookup in the mapping: https://docs.celigo.com/hc/en-us/articles/360019506771-Map-source-data-fields-to-destination#h_01J8KSXB9BKKDFHH4TMZFJ97JS:~:text=Lookup%20field%20mapping

You could try this in the mappings:

  • If the customer_sales_rep_number in the FTP file does not directly match the required format or internal ID expected by NetSuite's salesrep field, perform a lookup or transformation.
  • Dynamic Lookup :
    • Add a lookup step in your flow to map the customer_sales_rep_number to the salesrep internal ID in NetSuite.
    • Use a NetSuite saved search or lookup configuration where customer_sales_rep_number matches a corresponding identifier (e.g., employee or sales team) in NetSuite's data.
    • Populate the salesrep field with the retrieved internal ID.

Someone else may have a better suggestion, or you could submit a support ticket for direct help

Thanks for the suggestions, Michael. If im not successful, i will indeed submit a ticket.

Yeah sure thing! If you do end up opening a support ticket, please feel free to DM me the ticket number and I will take a look along with you!

If you already have the sales rep's internal NetSuite ID, you just need to map it to Sales Rep (InternalId). If you don't, then you would map the Sales Rep (InternalId), go into the settings of the mapping, choose Lookup, then Dynamic: NetSuite search, and set everything else up to find the internal ID of the employee given their name, employee number, or whatever you have.


The lookup makes sense Michael and Tyler. However im still unclear on the logic.

In our source FTP file we have the customer_sales_rep_number that could be any number of different numbers.


Here is the sales rep id at the employee level. This is not the sales rep internal id.

Here is where the Customer record where the sales rep name is located. So the customer sales rep number (830) is imported, mapped to the employee sales rep id, then pulls the sales rep name from the employee records and attaches it to the newly imported record.

So there are three factors: the ftp source file, the employee record (sales rep id) and the customer record (sales rep name).

I appreciate your help as always.

What are you unclear on? In my screenshot above, you would just change the dynamic filter to be sales rep id = customer_sales_rep_number or sales rep id is customer_sales_rep_number depending on the type of field it is in NetSuite. You're telling Celigo, "given sales rep id 830, find me the internal id for that sales rep so I can attach that sales rep to the customer record".

that is what i have set up

image

But it throws this error

The sales rep is indeed active.
I still think it has something to do with this checkbox at the employee level.

You're probably not specifying IO to return the internal id of the employee. 830 is the sales rep number, not the internal id. The internal id is 157. In the value field, choose internal id.

Here is what i have . the destination field is sales rep (internal id)

But the import errored out

Why did you change your filter criteria to start looking at first name and not the sales rep id?