MonetizeNow Account API

Accounts track all billing and selling details for a customer.

Operations 11

POST /api/accounts Create account #
GET /api/accounts Get all accounts #
GET /api/accounts/customId/{customId} Get account #
PUT /api/accounts/customId/{customId} Update account #
GET /api/accounts/search Search accounts by id, customId, and name #
GET /api/accounts/{accountId} Get account #
PUT /api/accounts/{accountId} Update account #
PUT /api/accounts/{accountId}/activate Activate account #
PUT /api/accounts/{accountId}/addresses Update account's shipping or billing address #
PUT /api/accounts/{accountId}/cancel Cancel account #
POST /api/accounts/{accountId}/manualBatchRun Run Billing Batch for Account #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/monetizenow-account-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

monetizenow-account-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpenAPI definition Account API
  version: v0
  description: "# About MonetizeNow\n\nMonetizeNow provides a Quoting, Billing, and Usage platform built for the B2B SaaS enterprise. Our platform simplifies monetization for SMBs by uniting these functions in a single application.\n\n<img src=\"https://i.ibb.co/VDN53ZF/MNArch.png\">\n\n## Core Platform Features\n\nMonetizeNow provides:\n\n- Product catalog specifically built to handle enterprise-grade selling complexity of subscriptions, one-time, and usage.\n- A single system that supports all your sales channels natively: self-serve, CRM, Partners, In-Product, and Marketplaces.\n- Complex enterprise quoting, flexible rules and approval engine, E-sign, Clean order forms\n- Broad API support for integrating with existing and future systems.\n    \n\n# Getting Started with MonetizeNow APIs\n\nThe MonetizeNow APIs are RESTful libraries that enable developers to integrate with the MonetizeNow platform for the complete revenue life cycle.\n\n## Authentication\n\nThe preferred authentication method is a generated API key.\n\n### Getting an API Key\n\nYou can request your API Key from your MonetizeNow tenant:\n\n1. Navigate to the **Settings -> API Keys** page to generate an API key for your tenant.\n    \n\n<img src=\"https://i.ibb.co/QMvvLtL/MNAPIKey.png\">\n\n1. Click **New Api Key**.\n2. Enter a name for the key as an identifier.\n3. Click **Ok**.\n    \n\n<img src=\"https://i.ibb.co/7WQM27b/MNKey-Sample.png\">\n\n1. Copy and store your key in a safe place.  \n    For security reasons, this is the only time we display it.\n2. Click **Ok**.\n    \n\nYou can now use this API key to interact with all MonetizeNow APIs.\n\n## Pagination\n\nThe MonetizeNow API provides pagination attributes for methods that return multiple records.\n\n**pageSize**\\=n  \npageSize indicates the number of elements in the page.\n\n**currentPage**\\=n  \ncurrentPage indicates the page to start with.\n\nUse currentPage and pageSize to return a sublist from a list of sorted resources where the sort criteria is defaulted or set via API:\n\n`GET /api/accounts?currentPage=3&pageSize=20`\n\n## Error Handling\n\nThe MonetizeNow API follows standard RESTful error handling. It returns the following error types:\n\n| Title | Code | Description |\n| --- | --- | --- |\n| Bad request | 400 | The request submitted was not acceptable. Missing parameters or a malformed request body will produce this error |\n| Resource not found by ID | 404 | The request submitted an identifier that does not match a record for the target entity. |\n| Resource is not in the required state | 409 | The identified resource is not an eligible target. For example, attempting to restore an offering that has not been archived returns a 409. |\n| Internal server error | 500 | An unexpected error occurred. Contact MonetizeNow Support. |\n\n## Webhooks\n\nUse webhooks to integrate MonetizeNow with external services. The following events are supported.\n\n| Entity | Event | Occurs When |\n| --- | --- | --- |\n| Account | account.created | an account is created |\n|  | account.updated | an account is updated |\n| Contact | contact.created | a contact is created |\n|  | contact.updated | a contact is updated |\n| Quote | quote.created | a quote is created |\n|  | quote.updated | a quote is updated |\n|  | quote.accepted | a quote is accepted |\n|  | quote.processed | a quote is processed |\n|  | quote.cancelled | a quote is cancelled |\n|  | quote.offering.created | an offering is added to a quote |\n|  | quote.offering.updated | an offering on a quote is updated |\n|  | quote.offering.deleted | an offering is deleted from a quote |\n| Opportunity | opportunity.created | an opportunity is created |\n|  | opportunity.updated | an opportunity is updated |\n| Offering | offering.created | an offering is created |\n|  | offering.updated | an offering is updated |\n| Contract | contract.created | a contract is created |\n|  | contract.updated | a contract is updated |\n| Rate | rate.created | a rate is created |\n|  | rate.updated | a rate is updated |\n|  | rate.deleted | a rate is deleted |\n|  | price.deleted | a rate's price is deleted |\n| Bill Group | dunning.step.tiggered | a dunning step is triggered |\n\n# Concepts\n\n## Product Catalog\n\nThe core of the MonetizeNow platform is the product catalog.\n\nThe entities that make up the Product Catalog are:\n\n- Product\n- Usage Type\n- Price\n- Offering\n- Rate\n    \n\nThe **Product** is the starting point for any quote, the simplest line item. If that line item has a usage component, then a **Usage Type** is assigned. A single Product has a **Price**. However, a Product can be one of several included in an **Offering**, or bundle. Offerings are available at one \\*_Rate \\*_or more. A Rate is a different way to price products and model an offering. You can create multiple Rates of different currencies and billing frequencies.\n\nFor example, the Products in a product catalog might include software access, services, setup fees, and API calls. Your organization may allow a customer to order a single set of 200 API calls, or you may provide a package of support hours and API calls as an Offering. Prices might be directly related to set of API calls or calculated by means of an \"Get Started\" Offering and Rate for API access.\n\n## Accounts\n\nAccounts represent your existing and potential customers.\n\nThe entities related to account records include:\n\n- Contacts\n- Bill Groups\n- Subscriptions\n- Quotes\n- Contracts\n- Invoices\n- Credits\n- Payments\n    \n\nEach **Account** represents a current or potential customer. **Contacts** are people your organization has interacted with. **Bill Groups** represent departments, divisions, or other separate destinations for billing within that business. A **Subscription** represents a renewable request for an **Offering**. A **Quote** is a formal statement of what is being ordered and how much the items will cost. A **Contract** stores information on the Subscriptions that have been quoted and captures the result of Quote acceptance. An **Invoice** results from the agreement to make a purchase. It includes items and costs, as well as payment conditions. An Invoice might include **Credits** as adjustments to the Invoice, reducing the final amount due.\n\nFor example, you might have an Account with Acme, Inc. During the sales process, your team has interacted with John, Paul, and Janis, who are now Contacts. John and Paul are in the Construction Bill Group, while Janis is in the Demolition Bill Group, reflecting their organization's structure and different payment policies. Once Janis requests a Quote for Offering A, your team adds that Offering to her Subscription. A Contract is included to specify the parameters of customer support limitations for onboarding. When Janis agrees to the purchase, your team generates an Invoice, including Credits for participation in a webinar.\n\n### Bill Day and Invoices\n\nEach **Bill Group** has a **Bill Day** field. Bill Day specifies the day of the month on which **Invoices** will be generated. Bill Day defaults to the day on which the Bill Group was created unless you specify an alternate number in the Bill Day field.\n\n### Quotes and Future Start Dates\n\nYou might set the **Start Date** of a **Quote** to a future date, maybe to align with your customer's budgeting process. That date automatically applies to the associated **Contract**. In this case, both the Contract and the quoted **Subscriptions** remain in a Pending state until the Start Date.\n\n### Payment Methods\n\nThe **Payment Methods** available to a **Bill Group** represent the payment service providers you have integrated with your MonetizeNow tenant. Payments made through integrated gateways are reflected in **Payment** records credited to the Bill Group.\n\n# Sample Workflows\n\n## Sending Usage/Consumption Data\n\nSending Usage Events to the MonetizeNow Usage Service requires calls to both the CPQ/Billing API and the Usage API. Here's a basic workflow:\n\n| Task | Call |\n| --- | --- |\n| Get Subscriptions for Account | GET /api/accounts/{accountId}/subscriptions |\n| Determine which Usage Types apply to each Subscription |  |\n| Post usage Events by Subscription | POST /events |\n\n# Object Life Cycles\n\n## Quotes\n\nThe Quote life cycle depends on whether the request for a new quote is actually a renewal or amendment of an existing quote. Event for a customer who has ordered before, any difference in the underlying contract makes a the new quote route necessary. The following diagram outlines the differences in the life cycles of new quotes and renewals.\n\n<img src=\"https://i.ibb.co/YyFztCC/Quote-Life-Cycle.png\">\n\n<!-- stackedit_data:<br>eyJoaXN0b3J5IjpbLTE0ODQxMzYzMzksLTExMDMyOTg1MzEsMT<br>M2MTI2MDY3MywtMTUwMTM1NjU1NywzODU3MzI2OTAsMjA1NTI2<br>NDUzMywtMjE0Mjk1NDY3NCwtMzYzNzk4NzAyLC0xNTEyNzQ4OD<br>Q2XX0=<br> -->"
servers:
- url: https://api.monetizeplatform.com
tags:
- name: Account
  description: Accounts track all billing and selling details for a customer.
paths:
  /api/accounts:
    post:
      tags:
      - Account
      summary: Create account
      description: Create account
      operationId: createAccount
      parameters:
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSaveDto'
        required: true
      responses:
        '201':
          description: Create Object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountDto'
        '409':
          description: Custom Id already exists
        '500':
          description: Internal server error. Please contact the support team.
    get:
      tags:
      - Account
      summary: Get all accounts
      description: Get all account as a list
      operationId: getAccounts
      parameters:
      - name: id
        in: query
        schema:
          type: string
          example: acct_jgPH8G33rELY6LQa
      - name: accountName
        in: query
        schema:
          type: string
          example: USW Sales
      - name: customId
        in: query
        schema:
          type: string
          example: 6b48c3f6-852e-4cd7-b4f4-a35ad60ad483
      - name: status
        in: query
        schema:
          type: string
          example: ACTIVE
      - name: createDate
        in: query
        schema:
          type: string
          example: 2023-07-28T06:01:22.684+0000
      - name: modifyDate
        in: query
        schema:
          type: string
          example: 2023-07-28T06:01:22.684+0000
      - name: sort
        in: query
        schema:
          type: string
          example: id
      - name: currentPage
        in: query
        schema:
          type: string
          example: 1
      - name: pageSize
        in: query
        schema:
          type: string
          example: 10
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: 'Object list retrieved '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountListDto'
        '500':
          description: Internal server error. Please contact the support team.
  /api/accounts/customId/{customId}:
    get:
      tags:
      - Account
      summary: Get account
      description: Get account by custom Id
      operationId: getAccountByCustomId
      parameters:
      - name: customId
        in: path
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: Get object by custom id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountDto'
        '404':
          description: Resource not found by Id
        '500':
          description: Internal server error. Please contact the support team.
    put:
      tags:
      - Account
      summary: Update account
      description: Update account by custom Id
      operationId: updateAccountByCustomId
      parameters:
      - name: customId
        in: path
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSaveDto'
        required: true
      responses:
        '200':
          description: Update object by custom id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountDto'
        '500':
          description: Internal server error. Please contact the support team.
  /api/accounts/search:
    get:
      tags:
      - Account
      summary: Search accounts by id, customId, and name
      description: Get all that meet the search criteria account as a list
      operationId: searchAccounts
      parameters:
      - name: query
        in: query
        schema:
          type: string
          example: query string
      - name: sort
        in: query
        schema:
          type: string
          example: id
      - name: currentPage
        in: query
        schema:
          type: string
          example: 1
      - name: pageSize
        in: query
        schema:
          type: string
          example: 10
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: 'Object list retrieved '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountListDto'
        '500':
          description: Internal server error. Please contact the support team.
  /api/accounts/{accountId}:
    get:
      tags:
      - Account
      summary: Get account
      description: Get account by account Id
      operationId: getAccountByAccountId
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          example: acct_jgPH8G33rELY6LQa
        example: acct_jgPH8G33rELY6LQa
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: get account by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountDto'
        '404':
          description: Resource not found by Id
        '500':
          description: Internal server error. Please contact the support team.
    put:
      tags:
      - Account
      summary: Update account
      description: Update account by Id
      operationId: updateAccountByAccountId
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          example: acct_jgPH8G33rELY6LQa
        example: acct_jgPH8G33rELY6LQa
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSaveDto'
        required: true
      responses:
        '200':
          description: Update object by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountDto'
        '500':
          description: Internal server error. Please contact the support team.
  /api/accounts/{accountId}/activate:
    put:
      tags:
      - Account
      summary: Activate account
      description: Activate account
      operationId: activateAccount
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          example: acct_jgPH8G33rELY6LQa
        example: acct_jgPH8G33rELY6LQa
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: Activating object by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
        '500':
          description: Internal server error. Please contact the support team.
  /api/accounts/{accountId}/addresses:
    put:
      tags:
      - Account
      summary: Update account's shipping or billing address
      description: Update account's shipping or billing address
      operationId: updateAccountAddresses
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          example: acct_jgPH8G33rELY6LQa
        example: acct_jgPH8G33rELY6LQa
      - name: type
        in: query
        required: true
        schema:
          type: string
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressSaveDto'
        required: true
      responses:
        '200':
          description: Update object by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.common.dto.ResponseDto'
        '404':
          description: Resource not found by Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.common.dto.ResponseDto'
        '500':
          description: Internal server error. Please contact the support team.
  /api/accounts/{accountId}/cancel:
    put:
      tags:
      - Account
      summary: Cancel account
      description: Cancel account
      operationId: cancelAccount
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          example: acct_jgPH8G33rELY6LQa
        example: acct_jgPH8G33rELY6LQa
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: Cancel object by id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.common.dto.ResponseDto'
        '404':
          description: Resource not found by Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.common.dto.ResponseDto'
        '500':
          description: Internal server error. Please contact the support team.
  /api/accounts/{accountId}/manualBatchRun:
    post:
      tags:
      - Account
      summary: Run Billing Batch for Account
      description: Run a Batch Manually
      operationId: manualBatchRun_1
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          example: acct_jgPH8G33rELY6LQa
        example: acct_jgPH8G33rELY6LQa
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '202':
          description: Scheduled billing batch for account
components:
  schemas:
    com.monytyz.billing.customer.dto.address.AddressSnapshotData:
      required:
      - city
      - country
      - description
      - line1
      - line2
      - postalCode
      - state
      - type
      type: object
      properties:
        type:
          $ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressType'
        line1:
          type: string
        line2:
          type: string
        city:
          type: string
        state:
          type: string
        postalCode:
          type: string
        country:
          type: string
        description:
          type: string
    com.monytyz.billing.invoice.model.InvoiceCreditCompositeId:
      type: object
    com.monytyz.billing.subscription.model.SubscriptionItem:
      type: object
      properties:
        createdBy:
          type: string
        createDate:
          type: string
          format: date-time
        lastModifiedBy:
          type: string
        modifyDate:
          type: string
          format: date-time
        id:
          type: string
        subscription:
          $ref: '#/components/schemas/com.monytyz.billing.subscription.model.Subscription'
        product:
          $ref: '#/components/schemas/com.monytyz.billing.catalog.model.Product'
        description:
          type: string
        units:
          type: number
          format: double
        charges:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/com.monytyz.billing.charge.model.Charge'
        applicableItemDiscounts:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/com.monytyz.billing.subscription.model.SubscriptionItemDiscount'
        customPrice:
          $ref: '#/components/schemas/com.monytyz.billing.catalog.model.CustomPrice'
        quoteItemId:
          type: string
        active:
          type: boolean
    com.monytyz.billing.customer.model.Contact:
      required:
      - customFields
      type: object
      properties:
        createdBy:
          type: string
        createDate:
          type: string
          format: date-time
        lastModifiedBy:
          type: string
        modifyDate:
          type: string
          format: date-time
        id:
          type: string
        customId:
          type: string
        address:
          $ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
        status:
          type: string
          enum:
          - ACTIVE
          - CANCELED
          - ARCHIVED
        fullName:
          type: string
        email:
          type: string
        phone:
          type: string
        title:
          type: string
        internal:
          type: boolean
        primary:
          type: boolean
        defaultESigner:
          type: boolean
        customFields:
          type: object
          additionalProperties:
            type: object
        esigner:
          type: boolean
      description: the billing contact for the order.
    com.monytyz.billing.customer.model.BillGroup:
      required:
      - netTerms
      type: object
      properties:
        createdBy:
          type: string
        createDate:
          type: string
          format: date-time
        lastModifiedBy:
          type: string
        modifyDate:
          type: string
          format: date-time
        id:
          type: string
        contracts:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/com.monytyz.billing.contract.model.Contract'
        paymentMethod:
          $ref: '#/components/schemas/com.monytyz.billing.payment.model.PaymentMethod'
        billingContact:
          $ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
        shippingContact:
          $ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
        name:
          type: string
        customId:
          type: string
        billDay:
          type: integer
          format: int32
        netTerms:
          type: string
          description: Default Net terms for this bill group
          enum:
          - NET_0
          - NET_5
          - NET_7
          - NET_8
          - NET_10
          - NET_14
          - NET_15
          - NET_20
          - NET_21
          - NET_30
          - NET_45
          - NET_60
          - NET_75
          - NET_90
          - NET_100
          - NET_120
          - NET_150
          - NET_180
        invoicingFrequency:
          type: string
          enum:
          - DAILY
          - MONTHLY
          - QUARTERLY
          - SEMIANNUALLY
          - ANNUALLY
          - CUSTOM
        invoicingFrequencyInMonths:
          type: integer
          format: int32
        nextInvoiceDate:
          type: string
          format: date
        previousInvoiceDate:
          type: string
          format: date
        status:
          type: string
          enum:
          - ACTIVE
          - INACTIVE
          - CANCELED
          - SUSPENDED
        dunningStatus:
          type: string
          enum:
          - CANCELED
          - GOOD_STANDING
          - IN_DUNNING
          - SUSPENDED
        dunningProcessId:
          type: string
        dunningStepId:
          type: string
        nextDunningStepDate:
          type: string
          format: date
        dunningStartDate:
          type: string
          format: date
        invoicingFailed:
          type: boolean
        collectInvoiceBalanceAutomatically:
          type: boolean
          description: If you want to override the global payment configuration and prevent collection at invoice time
        autoEmailInvoice:
          type: boolean
        purchaseOrderNumber:
          type: string
          description: The corresponding purchase order number
        invoiceCreation:
          type: string
          description: The invoice creation type
          enum:
          - AUTOMATIC
          - MANUAL
        invoiceDelay:
          type: integer
          description: Delay associated with invoice creation
          format: int32
        firstInvoiceCreationStrategy:
          type: string
          description: First invoice creation strategy when invoice is being created manually
          enum:
          - FOLLOW_EXISTING_SETTINGS
          - GENERATE_ON_QUOTE_PROCESSED
        subscriptions:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/com.monytyz.billing.subscription.model.Subscription'
        defaultPaymentGateway:
          $ref: '#/components/schemas/com.monytyz.billing.payment.model.PaymentGateway'
        ccEmails:
          uniqueItems: true
          type: array
          items:
            type: string
        legalEntity:
          $ref: '#/components/schemas/com.monytyz.billing.configuration.model.LegalEntity'
        currency:
          type: string
          enum:
          - AUD
          - BYN
          - CAD
          - CNY
          - DKK
          - EUR
          - GBP
          - INR
          - ISK
          - MYR
          - NOK
          - SEK
          - SGD
          - TWD
          - USD
        customFields:
          type: object
          additionalProperties:
            type: object
        errorStatus:
          type: string
          enum:
          - NONE
          - TAX_CALCULATION_ERROR
          - OVERINVOICING_HEURISTIC_FAILED
        shippingAddress:
          $ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
        billingAddress:
          $ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
        addressSource:
          type: string
        originalQuoteId:
          type: string
        vatNumber:
          type: string
          description: The corresponding VAT number of this Bill group
        registrationNumber:
          type: string
          description: The corresponding Registration number of this Bill group
        billingVersion:
          $ref: '#/components/schemas/com.monytyz.billing.data.billing.BillingVersion'
        latestInvoiceId:
          type: string
        contractRenewalDatePolicy:
          type: string
          enum:
          - FOLLOW_CONTRACT_START_DATE
          - FOLLOW_BILL_GROUP_BILL_DAY
        accountingDateCalculationStrategy:
          type: string
          description: Accounting date calculation strategy
          enum:
          - BILLING_ANNIVERSARY
          - CLOSEST_DATE_WITHIN_INVOICING_PERIOD
          - CLOSEST_DATE_WITHIN_USAGE_PERIOD
        linkedAccount:
          $ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
        billingAccountId:
          type: string
          description: Billing account ID for this bill group
        locked:
          type: boolean
        canceled:
          type: boolean
        contractManaged:
          type: boolean
        activePendingContracts:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/com.monytyz.billing.contract.model.Contract'
        eligiblePaymentMethod:
          $ref: '#/components/schemas/com.monytyz.billing.payment.model.PaymentMethod'
        invoiceable:
          type: boolean
    com.monytyz.billing.data.cpq.BillingAnchorData:
      required:
      - day
      - month
      type: object
      properties:
        day:
          type: integer
          format: int32
        month:
          type: integer
          format: int32
    com.monytyz.billing.quote.model.QuoteOffering:
      type: object
      properties:
        createdBy:
          type: string
        createDate:
          type: string
          format: date-time
        lastModifiedBy:
          type: string
        modifyDate:
          type: string
          format: date-time
        id:
          type: string
        quote:
          $ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
        items:
          uniqueItems: true
          type

# --- truncated at 32 KB (159 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/monetizenow/refs/heads/main/openapi/monetizenow-account-api-openapi.yml