# Ninja Forms

Connect Ninja Forms so its submissions become contacts or leads in FlyCRM.

This page covers what is specific to Ninja Forms. The shared steps (field mapping, duplicate
handling, and defaults) are in Capturing leads from forms.

## Before you start

Install and activate Ninja Forms. Until it is active, the FlyCRM integration stays turned off.

You also need at least one Ninja Forms form that collects an email address. FlyCRM uses the email
to tell a new person from a returning one, so a form without an email field cannot feed the CRM.

## Connect a form

1. Go to **FlyCRM > Integrations**.
2. Open **Ninja Forms** and turn it on.
3. Select **Add Feed**.
4. Under **Create As**, choose **Contact** or **Lead**.
5. Under **Form**, pick the Ninja Forms form to listen to.
6. Map the fields (below), then set your defaults.
7. Select **Save Feed**.

## How fields appear

Ninja Forms shows each field by its label. A field labeled **Your Email** appears as **Your**
**Email** in the mapping table.

The list holds data fields only. Buttons, HTML blocks, and dividers do not appear, because there
is nothing in them to map.

## A worked example

A Ninja Forms contact form usually has a name, an email, a phone, and a message. Map it like
this:

| CRM field | Form field |
| --------- | ---------- |
| Full Name | Name       |
| Email     | Email      |
| Phone     | Phone      |

Leave the message field unmapped. To keep the message, turn on **Log form submission as**
**activity** in the feed. FlyCRM then saves the whole submission as a note on the record.

## Handle the name field

Most Ninja Forms forms use one field for the whole name. Map that field to **Full Name**. FlyCRM
splits it: the last word becomes the last name, and the rest becomes the first name.

If your form has two separate fields, map them to **First Name** and **Last Name** instead.

## Fields with more than one value

Map single-value fields, such as text, email, and phone. A checkbox field or a multi-select field
can hold several values, so it does not fit one CRM field.

To keep those answers, turn on **Log form submission as activity**. FlyCRM lists every submitted
field in the note, and joins multiple values with commas.

## When capture happens

FlyCRM captures the submission after Ninja Forms processes it. FlyCRM also records the page the
form was submitted on. For leads, it reads any UTM parameters in that page's URL. You do not map
these values.

## Test it

1. Open the form on your site and submit a test entry with a real email.
2. Go to **FlyCRM > Contacts** or **FlyCRM > Leads**, to match your feed.
3. Make sure that the record shows the mapped fields.

## Troubleshooting

1. If no record appears, make sure that the integration and the feed are both on.
2. If no record appears, make sure that a form field is mapped to **Email**.
3. If a field is missing from the mapping table, make sure that it is a data field, not a button
   or a divider.