> For the complete documentation index, see [llms.txt](https://docs.navigaglobal.com/naviga-subscribe/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.navigaglobal.com/naviga-subscribe/subscribe-features/new-starts-and-restarts/occupant-creation-update-during-a-new-start-ncs-circ.md).

# Occupant creation/update during a new start (NCS Circ)

{% hint style="danger" %}
**DISCLAIMER**

*Product Information contained within this document, including technical information and functional specifications, is subject to change without notice. Naviga reserves the right to make any changes to the information in this document at any time without notice. Naviga makes no warranty, representation, or guarantee regarding the suitability of its products and services for any particular purpose.*
{% endhint %}

A new Occupant is created in NCS circ during the new start from Subscription Panel or One CSR Portal in case the Occupant did not exist before. In PurchaseAPI the Occupant is created as a part of <mark style="color:purple;">**async flow**</mark>, the `1103 CREATESUBSCRIBER` event is fired. For more information about PurchaseAPI please check the [corresponding page](/naviga-subscribe/subscribe-features/new-starts-and-restarts/failed-starts-reprocessing-ncs-circ+payway.md). \
\ <mark style="color:purple;">**Starting from 3.16.0**</mark> we use realtime lookup in NCS circ. There are two types of lookup: standard and email only (**default**). Please see the details below:

* **Email Only**: If this mode is set up, send **Email** and **Exact Match=true** to NCS. We should always expect NCS to return one Occupant.
* **Standard**: If this mode is set up, send **Email** and **Exact Match=false to NCS**. We might get multiple records. The result set is filtered by **First Name**, **Last Name** and **Email** (all of them should match) and the first occurrence is picked.
* to switch between the lookup types please use `Purchase.GetSubscriber.LookUpStategy` setting in mg2control

Please see [Use case 1](#use-case-1.-creating-a-new-occupant-via-subscribe) below for more details about Occupant creation

In case an Occupant already exists in NCS circ but the new phone number is entered during the new start we save this new phone as 'Primary' or Other', please check [Use case 2 ](#use-case-2.-updating-the-occupant-that-didnt-have-a-phone-number-with-a-new-phone-number-via-subscri)and [Use case 3](#use-case-3.-updating-the-occupant-that-already-has-a-phone-number-with-a-new-phone-number-via-subscr), respectively

## Use cases

### Use case 1. Creating a new Occupant via Subscribe

**GIVEN** A new start was posted through Subscription Panel with all the required information (product data, payment data, email, address, FirstName, LastName, Phone) being valid

**WHEN** the Occupant does not exist in NCS Circ based on lookup performed against Email+FirstName+LastName+AddressID) or email only, based on lookup mode

**THEN** the new start is created in Subscribe

**AND** a new Occupant is created in NCS Circ with the collected phone saved as ‘Primary’ phone

### Use case 2. Updating the Occupant that didn’t have a phone number with a new phone number via Subscribe

**GIVEN** A new start was posted through Subscription Panel with all the required information (product data, payment data, email, address, FirstName, LastName, Phone) being valid

**WHEN** the Occupant exists in NCS Circ based on lookup performed against Email+FirstName+LastName+AddressID)

**AND** the Occupant in NCS Circ does NOT have any phone assigned

**THEN** the new start is created in Subscribe

**AND** the collected phone saved as ‘Primary’ phone for the existing Occupant in NCS Circ

### Use case 3. Updating the Occupant that already has a phone number with a new phone number via Subscribe

**GIVEN** A new start was posted through Subscription Panel with all the required information (product data, payment data, email, address, FirstName, LastName, Phone) being valid

**WHEN** the Occupant exists in NCS Circ based on lookup performed against Email+FirstName+LastName+AddressID)

**AND** the Occupant in NCS Circ has a phone assigned

**THEN** the new start is created in Subscribe

**AND** the collected phone saved as ‘Other’ phone for the existing Occupant in NCS Circ\
\ <br>
