async add(data) {
        if (data.type === 'free') {
            throw new BadRequestError({
                message: 'Cannot create free Tier'
            });
        }

        const slug = await this.#slugService.generate(data.slug || data.name);
        const tier = await Tier.create({
            slug,
            type: 'paid',
            status: 'active',
            visibility: data.visibility,
            name: data.name,
            description: data.description,
            benefits: data.benefits,
            welcomePageURL: data.welcomePageURL,
            monthlyPrice: data.monthlyPrice,
            yearlyPrice: data.yearlyPrice,
            currency: data.currency,
            trialDays: data.trialDays
        });

        await this.#repository.save(tier);

        return tier;
    }
@param {object} data
@returns {Promise<Tier>}