Skip to main content

Membership dunning collections in the data source

As a business, you can know about your future cashflows from recurring memberships using membership_dunning_consolidated table. This table uses membership dunning data.

To read more about dunning settings for a center, refer to Set up Dunning Settings for a Center.

Recurring memberships have different statuses:

  • Active membership: Membership is active, and there are no issues with payments. You can expect future collections are on a specific date based on the collection cycle.

  • Frozen membership: A guest requests the customer to freeze membership for a certain period. As the recurring fee is not collected in the freeze period, the next collection date shifts by the number of freeze days.

  • Suspended membership: When a payment fails for recurring memberships, it leads to membership suspension, and there are no collections in the future unless the guest gets the membership re-activated. In this case, do not expect future collections.

  • Expired membership: When a membership reaches its expiry date, the membership expires, and there are no future collections from this membership.

Column

Description

next collection date

Auto populated to the upcoming collection date, as per your previous payment.

cycle number

The number of payment cycles completed - monthly or annual. For example, if there is an active membership for 6 months, the cycle number will have 6 entries.

collection status

Displays the collection status - Refunded/cancelled/waived/collected.

expected collection date in freeze period

In case a membership is frozen, this column shows the expected collection date after which membership is resumed

final sale price

Amount collected as part of membership

collected date

Date of invoice

Assume you want to find out the collection amount for the next two months.

  1. Go to the column expected collection date in freeze period and apply a time filter for two months.

  2. Sum the filter results.

  3. Remove all filters.

  4. Apply filter on blank values for column expected collection date in freeze period and apply a filter for two months on the column next collection date.

  5. Sum the filter results.

  6. Sum the values calculated in steps 2 and 4.

  7. The corresponding value in the final sale price column represents the expected collection amount.

  8. To get granular or consolidated future collection details, apply filters on center, zone, or user membership id columns.

Use cases

Here we describe how the membership dunning data from Zenoti is stored in the data source.

1. Active memberships

In this example, the recurring membership has a collection date of 19th of every month in Zenoti. The last payment collection was done on June 19th. The next collection date is on the 19th of July.

image1.png

The following image shows how Zenoti's data is represented in the data source in the membership_dunning_consolidated table.

image2.png

2. Suspended membership

In the case of suspended membership, the next collected date stays as-is in the data source until the user pays the membership dues and activates the membership.

In this example, the collection date is the 24th of every month. The last collection date was 24th April. Here the membership is suspended and the next payment is due on 24th June. This screenshot was taken on the 30th of June.

image3.png

The following image captures the suspended membership scenario in the data source:

image4.png

The next collection date column displays 24th June until the membership becomes active again.

3. Frozen membership

Assume that membership was frozen on 24th May 2022. The next collection date shifts by the number of days the membership is frozen. If membership is frozen by 40 days then the next collection date extends by 40 days.

In Zenoti, a membership was frozen on 22nd May and the next collection date ideally would have been on 24th May.

image5.png

Data source representation

In this example, the membership is frozen. The expected collection date in freeze period displays the collection date after the unfreeze date. It doesn't display unfreeze date. In this case, unfreeze date is 22nd August, while the collection date is 24th August.

image6.png

View fact table

View data mappings

Table details

Group

Column name

Description

Values

Center

center city

city in which the center is located

Pre-configured values, sourced from center dimensions

Center

center company name

company name of the center

Pre-configured values, sourced from center dimensions

Center

center name

center name

Pre-configured values, sourced from center dimensions

Center

center state name

state in which center is located

Pre-configured values, sourced from center dimensions

Center

center time

zone geographical timezone of the center

Pre-configured values, sourced from center dimensions

Center

center wid

center id for the table

numerical value

Center

center zip

zipcode of the center

Pre-configured values, sourced from center dimensions

Center

zone name

zone to which the center is mapped

Pre-configured values, sourced from center dimensions

Center

operating center

tells if the center is void; "true" for void, "false" for active

"true", "false"

Center

organization account name

account name of organisation

Pre-configured values, sourced from center dimensions

Center

organization name

Name of the organisation

Pre-configured values, sourced from center dimensions

Center

country name

country of the center

Pre-configured values, sourced from center dimensions

Guest info

guest anniversary date

The guest's anniversary date

sourced from guest dimensions

Guest info

City in which guest resides sourced from guest dimensions.

City in which guest resides

sourced from guest dimensions

Guest info

guest code

code assigned to a guest in the core system

sourced from guest dimensions

Guest info

guest country name

country from which guest belongs

sourced from guest dimensions

Guest info

guest dob

date of birth of guest

sourced from guest dimensions

Guest info

guest email

email address of guest

sourced from guest dimensions

Guest info

guest first name

first name of guest

sourced from guest dimensions

Guest info

guest gender

gender of guest

sourced from guest dimensions

Guest info

guest home phone

guest home phone number

sourced from guest dimensions

Guest info

guest last name

last name of guest

sourced from guest dimensions

Guest info

guest middle name

middle name of guest

sourced from guest dimensions

Guest info

guest mobile phone

mobile phone number of guest

accepts numerical values or blank values

Guest info

guest phone code

guest phone code

accepts numerical values or blank values

Guest info

guest referral source

referral source for the guest s

sourced from guest dimensions.

Guest info

guest state

geographical state where guest lives

sourced from guest dimensions.

Guest info

guest tags

Tags assigned to guest in guest profile in core system

sourced from guest dimensions

Guest info

guest type name

Tells whether the person is a guest or employee

sourced from guest dimensions

Guest info

guest zipcode

zipcode of place where guest lives

sourced from guest dimensions

Guest info

user id

user id of the guest. Same across all data

sourced from guest dimensions

Guest info

user wid

id for the user created in BI table

sourced from guest dimensions

Guest info

is guest inactive

Tells if the guest is active

"true", "false"

membership details

membership recurring

Tells if membership is recurring type or not. "True" for recurring and "False" for non-recurring

"True", "False"

membership details

duration type

tells if payment cycle is in days or months

"Days", "Month"

membership details

duration

Number of "duration types" for a cycle. Join with "Duration type" field. Number of days or months for a cycle

integer

membership details

membership start date

Start date of membership

date

membership details

membership tags

tags associated with memberships

varchar

membership details

membership type

Tells if membership is recurring or a one time payment

"Recurring"

collection details

expected collection date in freeze period

Incase there is a freezing period, collection date gets extended. This field tells when is the next collection date in case of Freeze scenarios

date

collection details

final sale price

Final sale price after deducting "discount" from "Sale price"

float

collection details

invoice id

Id for the invoice generated

string

collection details

InvoiceNo

Invoice number that helps in identifying and tracking the invoice.

varchar(160)

collection details

invoice item id

item IDs for the items within an invoice

string

collection details

last tried on

Last attempted date to collect amount

date

collection details

membership credit amount

credit amount associated with membership

float

collection details

next collection date

Tells when is the next collection date in recurring membership scenarios

YES

collection details

next try at

next try to collect payments in case there is a failure. Usually, multiple attempts are made to collect amount based on settings in the product. This field tells when will the next attempt to collect payment be in case of failed attempts. While these attempts are made, "collection status" will show as "Pending". Once all attempts are completed and if customer is still unable to receive payment, "collection status" will change to "Failed"

date

collection details

recurring collection pk

PK value for table

bigint

collection details

sale price

sale price of membership. Sale price of the recurring payment in case of recurring memberships

float

collection details

discount

discount on the sale price

float

collection details

collection status

Indicates the status of the amount collection

collected-payment is collected

  • cancelled-transaction is cancelled

  • pending -payment status is pending. Multiple attempts are being made to collect payments. Until all attempts are done or until there is a successful transaction, the status will show as pending

  • failed: payment failed

  • Refunded: payment is refunded to guest

  • waived: payment is waived off

collection details

tax

Tax on the final sale price

float

collection details

collected date

date on which amount is collected

date

collection details

cycle number

tells about the recurring cycle number for which the collection is attempted

date

collection details

Record type

Indicates fee type like recurring collection, annual fee, setup fee, etc

collection details

Group invoice id

Unique identifier for group invoice

collection details

Primary Payment Type

Indicates primary payment type for recurring collections. E.g: cash, cheque, Credit card, etc.

collection details

Primary Payment Brand

Brand of primary payment type

collection details

Secondary Payment Type

Indicates Secondary payment type for recurring collections. E.g: cash, cheque, Credit card, etc.

collection details

Secondary Payment Brand

Brand of Secondary payment type