# WhatsApp onboarding flow

**1.** Create a new WhatsApp contact (use the [Add a contact and/or advisors to a contact](https://rest-api-federation.symphony.com/contact#add-a-contact-and-or-advisors-to-a-contact) API).

**2.** Create a room (use the [Create room](https://rest-api-federation.symphony.com/room#create-room) API).

**3.** Add the new contact to the room (use the [Add room member ](https://rest-api-federation.symphony.com/room#add-room-member)API).

**4.** Symphony Connect Helper sends the welcome message template to the new contact.

**5.** Check whether:

* The message *"We couldn’t add to this room as their WhatsApp account was not found"* is sent in the room.\
  OR
* In the WhatsApp Connect app, the contact’s card shows the status *UNAVAILABLE* (if using a bot, check for `"status": "UNAVAILABLE"` in the API response).

**6.** If the contact’s status is *UNAVAILABLE*:

* The contact does not have the WhatsApp app, and you should remove them.

{% hint style="info" %}
If they're the last contact in the room, this will deactivate the room.
{% endhint %}

* Ask the user to create a WhatsApp account or provide their correct phone number and retry the onboarding.

**7.** If the contact’s status is **different from** *UNAVAILABLE* (see the [Contact status](https://rest-api-federation.symphony.com/readme/contact/contact-status) section):

* The contact has the WhatsApp app, and you can continue the flow as usual.

{% hint style="warning" %}
No status will be returned if the contact is created without being added to a room.
{% endhint %}

<figure><img src="https://3868048845-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRJrT3ZeHQnYGnLALMybb%2Fuploads%2Fgit-blob-a12c3c58eae154ac833102b395ca76639c6e02cb%2FWhatsApp_onboarding_flow.png?alt=media" alt=""><figcaption></figcaption></figure>
