# Forms

> Choose the right approach to collect data in your application: online form, custom form using the Text Input component, or offline form with Tripetto.

https://docs.pandasuite.com/essentials/data/form/

**Collect data on your users (contact forms, lead capture, satisfaction surveys) within your application using a form.**

Thanks to PandaSuite's offline capabilities, you can also retrieve the data without an Internet connection through a caching system.

There are several ways to create a form based on your needs:

1. **Online form**: integrate an existing service ([Google Forms](https://www.google.com/intl/en/forms/about/), [Typeform](https://www.typeform.com/)...) via the [Web](https://docs.pandasuite.com/essentials/components/web/) component. Simple to set up, but requires an Internet connection.
2. **Custom form**: build your own form with the [Text Input](https://docs.pandasuite.com/essentials/components/text-input/) component, connected to an external service via the [HTTP component](https://docs.pandasuite.com/essentials/components/http/). Also works offline.
3. **Offline form (Tripetto)**: insert the [Tripetto](https://docs.pandasuite.com/essentials/components/tripetto/) component to display and store data without Internet, with a customized workflow. Creating or editing the form requires a paid Tripetto account.

## 1. Online form

There are many free online form editors: [Google Forms](https://www.google.com/intl/en/forms/about/), [Typeform](https://www.typeform.com/), [Tally](https://tally.so/)... Some database tools like [Airtable](https://airtable.com/) or CRM systems (Salesforce...) also offer forms to directly input data into their databases.

This is the simplest way to insert a form. Results can be viewed from the editor's interface. The only constraint for your application: users must have an Internet connection to display the form.

To integrate a form, insert the [Web](https://docs.pandasuite.com/essentials/components/web/) component, and in the **Properties** window, specify the form's **URL**.

> **Info**
>
> This component has **Offline** and **Online** triggers that allow you to
> display an informative message if your users don't have network access, and
> give them the option to view the form.

## 2. Custom form

You can create a custom form in PandaSuite.

The [Text Input](https://docs.pandasuite.com/essentials/components/text-input/) component allows you to vary input formats (text, URL, password, date, etc.). This data can then be stored locally via the [Datastore](https://docs.pandasuite.com/essentials/data/datastore/), and you need to connect an external service via the [HTTP component](https://docs.pandasuite.com/essentials/components/http/) to send/retrieve the data.

You can store data in the cache using the HTTP component and only send it when the connection is restored.

[Image: Custom form on a smartphone, step 2: email address and name fields, with Previous and Confirm buttons]

## 3. Offline form (Tripetto)

> **Info**
>
> [Tripetto](https://tripetto.com/) allows you to create traditional forms with
> checkboxes, dropdown menus, text, multiple choices, numbers, etc. The forms
> and surveys are built visually with a drag-and-drop editor, requiring no
> coding knowledge. Creating or editing a form requires a paid Tripetto
> account.

Prepare the form from the Tripetto editor and insert it into the component. Forms already inserted in your projects keep working, even without a Tripetto account: see the [Tripetto](https://docs.pandasuite.com/essentials/components/tripetto/) page. The component offers several advantages:

- It allows you to display the form and store data **without any Internet connection.**
- You can **associate actions** with this form and set up a **customized workflow**, for example, sending the data by email or to an external service (CRM tool). In this case, you will need to use the [HTTP component](https://docs.pandasuite.com/essentials/components/http/) to create a webhook via Integromat or Zapier.

[Image: Inside a Tripetto component in PandaSuite Studio: the Your product selection question offers Champagne, Basket Ball, Cake and Flashlight]

> **Info**
>
> If you are looking for how to integrate a login/authentication form, please
> refer to this article: [Login &
> Authentication](https://docs.pandasuite.com/essentials/data/user-authentication-methods-for-your-app/)

[Template: Incident Form](https://pandasuite.com/dashboard/use-template/_2-3vY4BsEg4iwlB5iHk)
