Skip to main content

Edit a Campaign Type

This is where you update an existing campaign membership type. Think of a campaign as a special, time-limited membership offer — like a summer promotion or a New Year deal. On this screen you can change everything about the campaign: its name, pri...

Written by Ronny Christensen
Updated over 3 weeks ago

What This Screen Does

This is where you update an existing campaign membership type. Think of a campaign as a special, time-limited membership offer — like a summer promotion or a New Year deal. On this screen you can change everything about the campaign: its name, pricing rules, how long it lasts, which classes members can access, and more. When you save, the system updates the campaign and any changes take effect right away.


How to Get There

  1. Open the dashboard.

  2. In the left-hand menu, click Campaign type.

  3. Find the campaign you want to edit in the list.

  4. Click on it to open its details, then click the Edit button (or click the edit action directly from the list).

  5. You are now on the Edit Campaign Type screen.


Step-by-Step Guide

1. Basic Information

This section covers the core details that describe your campaign to members and staff.

Field

Required

What to Enter

Name

Yes

The display name of this campaign type. This is what members see when browsing memberships.

Short Description

No

A brief summary (a few sentences) that appears alongside the name in lists and cards. Use the multiline text box to write it.

Cover Image

Yes

Upload an image that represents this campaign. Click the image area to open the uploader. The image will be cropped to a 4:3 ratio. Only one image is allowed.

Description

Yes

A full, detailed description of the campaign, including benefits and features. Use the rich-text editor to format the text with bold, lists, links, etc.

Contract

Yes

Pick the legal contract template that members must agree to when purchasing. Select one from the dropdown.

Converts to contingent

No

Choose a contingent (ongoing) membership type that this campaign will automatically convert to after it expires. Select “None” if you do not want automatic conversion.

2. Properties

These settings control how the campaign behaves day-to-day.

Field

Required

What to Enter

Frequency

Yes

How often members are charged (e.g. Monthly, Quarterly, Yearly, OneTime). Pick the billing cycle from the dropdown.

Product Code

No

An internal product code for your own records and reporting.

Product SKU

No

A Stock Keeping Unit identifier, useful if you track inventory.

Number of seats

No

The maximum number of members who can hold this campaign membership at the same time. Leave empty for unlimited.

Account number for bookkeeping

No

The account number used when exporting financial data to your accounting system.

Publicly available

No

Toggle on to make this campaign visible in your online store and member portal. Toggle off to hide it. Defaults to on.

Has access to door system

No

Toggle on to allow members with this campaign to unlock doors via the access control system. Defaults to on.

Limit training hours

No

Only available on Premium or Platinum plans. Toggle on to restrict when members can access the facility (see the Training Hours section below).

Allows training in all gyms

No

Toggle on to let members train at any location in your chain, not just the one they signed up at.

Counts towards global limit

No

Only shown if your chain has a maximum number of active memberships configured. Toggle on to include this campaign when counting against that limit.

Anchor memberships renewal to the 1st day of the month

No

Only shown for certain billing frequencies (e.g. Monthly, Quarterly). Toggle on to align all renewals to the first day of each month. This may be locked on if set at the gym level.

Lock Access (shown only if your gym has locks configured)

Field

Required

What to Enter

Limit lock access

No

Toggle on to restrict which doors this membership can open.

Lock ID

Yes (if limit lock access is on)

Select one or more locks from the dropdown. Members will only be able to open these specific doors.

3. Validity

Define when the membership is active and when it expires.

Field

Required

What to Enter

Membership becomes active on

No

The date the membership starts being usable. Leave empty to activate immediately upon purchase. Useful if you sell memberships before they should begin (e.g. selling in December for a January start).

Membership expires on (fixed date)

No

A specific calendar date when the membership ends. Only shown if you have not entered a duration in months or days.

Duration in months

No

Number of months the membership remains valid after activation. Only shown if no fixed expiration date is set. For example, enter 3 for a three-month campaign.

Duration in days

No

Number of days the membership remains valid after activation. Only shown if no fixed expiration date is set. For example, enter 90 for a 90-day campaign.

Note: The expiration fields are mutually exclusive. If you enter a fixed expiration date, the duration fields hide. If you enter a duration in months or days, the fixed date field hides. Clear the value to switch between them.

4. Training

Control how members book classes with this campaign membership.

Field

Required

What to Enter

Maximum number of active bookings

No

How many upcoming classes a member can be registered for at the same time. Leave empty for unlimited.

Days in advance for bookings

No

How many days ahead members can book a class. For example, 7 means they can book up to one week in advance.

Maximum number of bookings

No

Total number of classes a member can book within the selected training limit period.

Training limit period

No (shown only if maximum bookings is set)

The time window for the booking limit: Monthly, Weekly, etc.

Allowed classes

No

Select which class types members can book. Leave empty to allow access to all classes.

5. Training Hours (optional)

This section only appears if you toggled on Limit training hours in the Properties section. It lets you define specific days and times when members can access the facility.

  • Each row represents a time window on a specific day of the week.

  • For each row:

Field

Required

What to Enter

Day of week

Yes

Pick the day (Monday through Sunday).

Open

Yes

The time the facility opens for this membership on that day (24-hour format).

Closed

Yes

The time the facility closes for this membership on that day (24-hour format).

  • Click Add opening hour to add another row (for example, to add a second time slot on the same day or a new day).

  • Click the red X button next to a row to remove it.

  • If you do not set any training hours, the system uses the gym’s regular opening hours.

6. Communication

Set up automated emails for this campaign.

Field

Required

What to Enter

Welcome email

Yes

Choose the email template sent to new members when they purchase this campaign. Only templates of type “Welcome Email” appear in the dropdown.

7. Pricing

Configure the cost and availability of this campaign.

Note: When editing an existing campaign, the Regular Price, VAT rate, and Available in gyms fields are not shown. Price is managed separately through the campaign’s price list. Only the fields below appear.

Field

Required

What to Enter

Setup fee (toggle)

No

Toggle on to charge a one-time fee when a new member purchases this campaign. Defaults to on.

Setup fee amount

Yes (if setup fee is on)

Enter the one-time fee amount. The VAT for the setup fee is based on your global chain settings.

Can be purchased from

Yes

The first date this campaign becomes available for purchase.

Can be purchased until

No

The last date this campaign can be purchased. Leave empty if there is no end date. Must be later than the “purchased from” date.

8. Save Changes

  • Review all sections to make sure everything is correct.

  • Click the Save Changes button in the bottom-right corner.

  • The system will:

    1. Validate all your inputs.

    2. Update the campaign record via the API.

    3. Upload the cover image (or replace the existing one).

    4. Navigate you back to the previous page.

  • You will see a green “Update success!” notification at the bottom of the screen.


What Happens Behind the Scenes

You click "Save Changes"
        |
        v
Form validates all fields (Yup schema)
        |
        v
API call: CampaignTypesService.edit({ id, body: formData })
        |
        v
Campaign record is updated on the server
        |
        v
API call: CampaignTypesService.addCoverImage({ id, files: [image] })
        |
        v
Cover image is uploaded / replaced
        |
        v
Success notification "Update success!" appears
        |
        v
You are navigated back to the previous page


Troubleshooting

“I filled everything in but the Save Changes button does not work”

  • Make sure all required fields have values. The form will not submit if anything is missing.

  • Look for small red error messages below the fields — they tell you exactly what needs fixing.

  • Check that the Description field is not empty. It uses a rich-text editor and may look filled but actually be blank.

  • Ensure a Contract and Welcome email are selected — the dropdowns default to a placeholder and must be changed.

“I cannot find the contract I need in the dropdown”

  • Contracts are loaded when the page opens. If the list is empty or missing your contract, try refreshing the page.

  • Make sure the contract has been created in the Contracts section first. You cannot select a contract that does not exist yet.

“The cover image did not upload”

  • The image must be a supported format (JPEG, PNG, or GIF).

  • The file must not exceed the maximum allowed size.

  • If the campaign was updated but the image failed, reload the edit page and try uploading the cover image again.

  • Make sure your internet connection is stable — large images take longer to upload.

“I do not see the Welcome email dropdown options”

  • Only email templates marked as Welcome Email type appear in this dropdown.

  • If the list is empty, go to the Email Templates section and create a template of type “Welcome Email” first.

  • Try refreshing the page — the templates load when the page opens.

“The ‘Valid to’ date shows an error”

  • The “Can be purchased until” date must be later than the “Can be purchased from” date.

  • Make sure you have not accidentally set them to the same day or reversed them.

  • Clear the “Can be purchased until” field if you want the campaign to have no end date.

“I do not see the ‘Limit training hours’ toggle”

  • This feature is only available on Premium or Platinum subscription plans.

  • If your chain is on a lower plan, this toggle will not appear. Contact your administrator about upgrading if you need this feature.

“I got an error after clicking Save Changes”

  • A red error message will appear. Read it carefully — it usually explains what went wrong.

  • Common causes: a server timeout, a required field that was missed, or a network issue.

  • Try again after a moment. If the error persists, contact support with the exact error message.

“I changed the price but it did not update”

  • When editing an existing campaign, the Regular Price and VAT rate fields are not shown on this screen. Prices for existing campaigns are managed through the campaign’s price list, not through the edit form.

  • Navigate to the campaign’s detail page and look for the price management section there.

“The ‘Membership expires on’ field disappeared”

  • The expiration fields are mutually exclusive. If you enter a value in Duration in months or Duration in days, the fixed date field hides automatically.

  • To use a fixed expiration date instead, clear the duration fields first, then the date picker will reappear.

“I cannot toggle the renewal anchor setting”

  • If this toggle is greyed out and stuck on “on”, it means your gym has already been configured to anchor all renewals to the first of the month at the gym level.

  • This gym-level setting overrides the per-campaign setting. To change it, go to your Gym settings and update the membership renewal date anchor there.

Did this answer your question?