@maxio-com/advanced-billing-sdk
Version:
Ultimate billing and pricing flexibility for B2B SaaS. Maxio integrates directly into your product, so you can seamlessly manage your product catalog, bill customers, and collect payments.
37 lines • 1.49 kB
JavaScript
/**
* AdvancedBilling
*
* This file was automatically generated for Maxio by APIMATIC v3.0 ( https://www.apimatic.io ).
*/
import { bigint, boolean, expandoObject, lazy, optional, string, } from '../schema.js';
import { compoundingStrategySchema, } from './compoundingStrategy.js';
import { couponPayloadPercentageSchema, } from './containers/couponPayloadPercentage.js';
export const couponPayloadSchema = lazy(() => expandoObject({
name: ['name', optional(string())],
code: ['code', optional(string())],
description: ['description', optional(string())],
percentage: ['percentage', optional(couponPayloadPercentageSchema)],
amountInCents: ['amount_in_cents', optional(bigint())],
allowNegativeBalance: ['allow_negative_balance', optional(boolean())],
recurring: ['recurring', optional(boolean())],
endDate: ['end_date', optional(string())],
productFamilyId: ['product_family_id', optional(string())],
stackable: ['stackable', optional(boolean())],
compoundingStrategy: [
'compounding_strategy',
optional(compoundingStrategySchema),
],
excludeMidPeriodAllocations: [
'exclude_mid_period_allocations',
optional(boolean()),
],
applyOnCancelAtEndOfPeriod: [
'apply_on_cancel_at_end_of_period',
optional(boolean()),
],
applyOnSubscriptionExpiration: [
'apply_on_subscription_expiration',
optional(boolean()),
],
}));
//# sourceMappingURL=couponPayload.js.map