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
\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
\n\n1. Click **New Api Key**.\n2. Enter a name for the key as an identifier.\n3. Click **Ok**.\n \n\n
\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
\n\n"
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: array
description: Quote items that are part of this quote group
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteItem'
offeringId:
type: string
description: The Offering ID for this item, null if a stand alone one time order.
rateId:
type: string
description: The Rate ID for this item, null if a stand alone one time order.
priceUpliftConfigId:
type: string
description: The PriceUpliftConfig Id for this offering, null if price uplift isn't configured
subscriptionId:
type: string
description: The subscription ID for this item
description:
type: string
debitProrationMultiplier:
type: number
debit:
type: number
creditProrationMultiplier:
type: number
credit:
type: number
amount:
type: number
amountWithoutDiscount:
type: number
discountAmount:
type: number
discountPercent:
type: number
previousId:
type: string
previousRateId:
type: string
previousAmount:
type: number
position:
type: integer
format: int32
offeringName:
type: string
offeringDescription:
type: string
rateName:
type: string
rateDescription:
type: string
billingFrequency:
type: string
enum:
- DAILY
- MONTHLY
- QUARTERLY
- SEMIANNUALLY
- ANNUALLY
- ONETIME
- CUSTOM
billingFrequencyInMonths:
type: integer
format: int32
subscriptionTiming:
type: string
example: ADVANCE
enum:
- ADVANCE
- ARREARS
mrr:
type: number
arr:
type: number
incrementalMrr:
type: number
incrementalArr:
type: number
endDate:
type: string
format: date
effectiveDate:
type: string
format: date
parentQuoteOfferingId:
type: string
subscriptionChangeId:
type: string
accountSpecificRate:
type: boolean
options:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteOfferingOptions'
role:
type: string
enum:
- STANDARD
- REFERENCE
root:
type: boolean
billingPeriod:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.internal.quote.BillingPeriod'
reference:
type: boolean
editable:
type: boolean
removed:
type: boolean
ramp:
type: boolean
description: Represents an offering on quote, which is a group of quote items
com.monytyz.billing.credit.model.CreditNoteSource:
required:
- source
type: object
properties:
source:
type: string
com.monytyz.billing.quote.model.QuoteItemDiscount:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
quoteItem:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteItem'
discount:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.Discount'
discountType:
type: string
enum:
- FLAT
- PERCENTAGE
discountAmountOrPercent:
type: number
calculatedDiscount:
type: number
description: Discounts that are finally applied to this quote item
com.monytyz.billing.payment.model.PaymentMethod:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
billGroups:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
paymentMethodName:
type: string
description: Name for this payment method
customId:
type: string
description: a provided id to reference this payment method uniquely
defaultPaymentMethod:
type: boolean
creditCardType:
type: string
enum:
- VISA
- MASTERCARD
- DISCOVER
- AMEX
- DINERS
- JCB
- UNIONPAY
creditCardNumber:
type: string
lastFour:
type: string
expirationYear:
type: integer
format: int32
expirationMonth:
type: integer
format: int32
cvcValidation:
type: boolean
addressValidation:
type: boolean
postalValidation:
type: boolean
paymentMethodType:
type: string
description: The type of payment method
enum:
- CREDIT_CARD
- DIRECT_DEBIT
- ACH_CREDIT
- US_BANK_TRANSFER
- MANUAL
creditCardGateWayToken:
type: string
gatewayCustomerId:
type: string
description: a provided id to reference this payment method uniquely
description:
type: string
description: The description for this payment method
status:
type: string
description: The status for this payment method
enum:
- ACTIVE
- INACTIVE
- CANCELED
- EXPIRED
oneTime:
type: boolean
description: False if this payment method should be available for further user
testPaymentMethod:
type: boolean
description: True if this payment method is associated with a test/staging payment gateway
externalPaymentMethodId:
type: string
accountType:
type: string
bankName:
type: string
routingNumber:
type: string
swiftCode:
type: string
accountNumber:
type: string
fullName:
type: string
email:
type: string
phone:
type: string
title:
type: string
line1:
type: string
line2:
type: string
city:
type: string
state:
type: string
postalCode:
type: string
country:
type: string
cancellationDate:
type: string
format: date-time
cancellationReason:
type: string
active:
type: boolean
notActive:
type: boolean
paymentMethodAllowed:
type: boolean
MNPageable:
required:
- pageNumber
- pageSize
type: object
properties:
pageNumber:
type: integer
format: int32
pageSize:
type: integer
format: int32
com.monytyz.billing.quote.model.QuoteItem:
required:
- position
- 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
customId:
type: string
description: Id provided by the external system
quoteOffering:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteOffering'
quoteItemDiscounts:
uniqueItems: true
type: array
description: Discounts that are finally applied to this quote item
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteItemDiscount'
customPrice:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.CustomPrice'
productId:
type: string
description: The product ID for this item
productName:
type: string
description: The product name of the item
productDescription:
type: string
description: The product description of the item
productType:
type: string
description: The product type of the item
enum:
- ADVANCE
- ARREARS
- USAGE
- ONETIME
- ONETIME_PREPAID_CREDIT
- MIN_COMMIT
subscriptionItemId:
type: string
description: The subscription item ID for this item
endDate:
type: string
format: date
isAddon:
type: boolean
addonId:
type: string
quantity:
type: number
format: double
unitPriceAfterDiscount:
type: number
unitPrice:
type: number
debitProrationMultiplier:
type: number
debit:
type: number
creditProrationMultiplier:
type: number
credit:
type: number
contractAmount:
type: number
amount:
type: number
amountWithoutDiscount:
type: number
customDiscountId:
type: string
customDiscountType:
type: string
enum:
- FLAT
- PERCENTAGE
customDiscountAmountOrPercent:
type: number
customDiscountName:
type: string
customDiscountDescription:
type: string
discountAmount:
type: number
discountPercent:
type: number
previousDiscountAmount:
type: number
previousDiscountPercent:
type: number
mrr:
type: number
arr:
type: number
incrementalMrr:
type: number
incrementalArr:
type: number
amendmentStatus:
type: string
enum:
- ADDED
- NO_CHANGE
- REMOVED
- UPDATED
previousItemId:
type: string
previousAmount:
type: number
previousQuantity:
type: number
format: double
previousCustomPriceId:
type: string
previousCustomDiscountId:
type: string
previousCustomDiscountType:
type: string
enum:
- FLAT
- PERCENTAGE
previousCustomDiscountAmountOrPercent:
type: number
options:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.internal.quoteitem.QuoteItemOptions'
position:
type: integer
format: int32
notes:
type: string
customDiscountLifecyclePolicies:
uniqueItems: true
type: array
items:
type: string
enum:
- EXCLUDE_FROM_RENEWAL
included:
type: boolean
unchanged:
type: boolean
description: An individual line on a quote, each item represents a product, discount, or fee
com.monytyz.billing.quote.v2.core.DateData:
required:
- billingAnchorConfig
- effectiveDate
- length
- previousLength
- startDateSource
- term
type: object
properties:
length:
type: integer
format: int32
billingAnchorConfig:
$ref: '#/components/schemas/com.monytyz.billing.data.cpq.BillingAnchorConfig'
term:
$ref: '#/components/schemas/com.monytyz.billing.data.cpq.ContractTerm'
effectiveDate:
type: string
format: date
startDateSource:
type: string
enum:
- ORIGINAL_CONTRACT_START
- AT_TIME_OF_SIGNING
- MANUAL
previousLength:
type: integer
format: int32
com.monytyz.billing.customer.model.ContactSnapshot.AddressSnapshot:
type: object
properties:
line1:
type: string
line2:
type: string
city:
type: string
state:
type: string
country:
type: string
postalCode:
type: string
description:
type: string
com.monytyz.billing.customer.model.CompanyInfoSnapshot.CompanyInfoAddressSnapshot:
type: object
properties:
line1:
type: string
line2:
type: string
city:
type: string
state:
type: string
country:
type: string
postalCode:
type: string
com.monytyz.billing.dealroom.model.DealRoomESignContactId:
required:
- contactId
- dealRoomId
type: object
properties:
contactId:
type: string
dealRoomId:
type: string
com.monytyz.billing.contract.model.Contract:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
description: Internal (unique) id
owner:
type: string
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
billGroup:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
latestQuote:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
quotes:
type: array
description: All quotes for this contract, including open ones
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
status:
type: string
description: Contract status
enum:
- ACTIVE
- CANCELED
- PENDING
- FINISHED
startDate:
type: string
description: The date when this contract comes into effect first
format: date
endDate:
type: string
description: The date when this contract ends
format: date
endAction:
type: string
description: Action to take when this contract ends
enum:
- MANUAL_RENEW
- RENEW
- CANCEL
renewalContractLength:
$ref: '#/components/schemas/com.monytyz.billing.quote.dto.quote.renewal.RenewalContractLength'
autoRenewalNoticePeriod:
type: integer
format: int32
totalValue:
type: number
description: '''total value'' of the contract; sum of Closed Won quotes'' contract amounts'
renewed:
type: boolean
previousContractId:
type: string
description: The previous contract that this contract is a renewal of
currency:
type: string
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
cancelled:
type: boolean
v2MigratedQuote:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
contractTerm:
$ref: '#/components/schemas/com.monytyz.billing.data.cpq.ContractTerm'
autoRenewable:
type: boolean
endActionCancel:
type: boolean
contractFinished:
type: boolean
com.monytyz.billing.catalog.model.FieldValueOverride:
required:
- fieldName
- userGivenValue
type: object
properties:
fieldName:
type: string
userGivenValue:
type: string
com.monytyz.billing.quote.model.QuoteOfferingOptions:
required:
- priceDisplay
type: object
properties:
priceDisplay:
type: string
enum:
- PRODUCT
- OFFERING
com.monytyz.billing.payment.model.PaymentGateway:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
status:
type: string
enum:
- ACTIVE
- INACTIVE
- ARCHIVED
type:
type: string
enum:
- STRIPEV2
- BRAINTREE
- WORLDPAY
- AUTHNET
- ADYEN
- VANTIV
- PAYPAL_PRO
- PAYMENT_TECH
- TEST_PASS
- TEST_FAIL
endpointOverride:
type: string
description: If you don't want to use the default endpoint provided by a gateway you can override here for mocking/testing
testGateway:
type: boolean
description: By setting this to true this gateway will not use a real gateway and will succeed or fail based on test credit card numbers
description:
type: string
secretKey:
type: string
publicKey:
type: string
defaultGateway:
type: boolean
description: If set to true this gateway will be used by default for payment methods of the gateway type
authAmount:
type: number
deprecated: true
authOnNew:
type: boolean
deprecated: true
authOnUpdate:
type: boolean
deprecated: true
acceptVisa:
type: boolean
deprecated: true
acceptMastercard:
type: boolean
deprecated: true
acceptAmex:
type: boolean
deprecated: true
acceptDiscover:
type: boolean
deprecated: true
acceptJCB:
type: boolean
deprecated: true
acceptDiners:
type: boolean
deprecated: true
locked:
type: boolean
webhookId:
type: string
webhookSecret:
type: string
allowedPaymentMethods:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodSupport'
paymentConfiguration:
$ref: '#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayConfigurations'
active:
type: boolean
notActive:
type: boolean
com.monytyz.billing.catalog.model.jpa.Rate:
required:
- currency
- name
- offering
- revenueChannels
- status
- subscriptionTiming
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
parent:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.jpa.Rate'
offering:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.Offering'
prices:
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.Price'
name:
type: string
description:
type: string
status:
type: string
enum:
- ACTIVE
- INACTIVE
- CANCELED
currency:
type: string
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
billingFrequency:
type: string
enum:
- DAILY
- MONTHLY
- QUARTERLY
- SEMIANNUALLY
- ANNUALLY
- ONETIME
- CUSTOM
billingFrequencyInMonths:
type: integer
format: int32
subscriptionTiming:
type: string
example: ADVANCE
enum:
- ADVANCE
- ARREARS
startDate:
type: string
format: date
endDate:
type: string
format: date
accountSpecificRate:
type: boolean
description: if this rate can only be applied to a certain account, it will be hidden from GET rate results unless you specify it in a query param
accountId:
type: string
usageBillingFrequency:
type: string
enum:
- MONTHLY
- QUARTERLY
- ANNUALLY
- SEMIANNUALLY
locked:
type: boolean
quotable:
type: boolean
internalDescription:
type: string
options:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.RateOptions'
revenueChannels:
uniqueItems: true
type: array
items:
type: string
enum:
- SELF_SERVICE
- SALES
priceDisplayOption:
type: string
enum:
- PRODUCT
- OFFERING
customRateOrPrices:
type: boolean
com.monytyz.billing.credit.model.Credit:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
description: Internal (unique) id
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
billGroup:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
creditNote:
$ref: '#/components/schemas/com.monytyz.billing.credit.model.CreditNote'
prepaidInvoiceItem:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceItem'
prepaidProduct:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.Product'
status:
type: string
description: Credit status
enum:
- ACTIVE
- INACTIVE
- VOID
- EXPIRED
- APPLIED
type:
type: string
description: Credit type
enum:
- CREDIT_NOTE
- SERVICE
- PREPAID
currency:
type: string
description: Currency
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
amount:
type: number
description: Amount
amountApplied:
type: number
description: Amount applied
deprecated: true
amountRemaining:
type: number
description: Amount remaining
deprecated: true
expirationDate:
type: string
description: Expiration date, if any, for this credit
format: date
reason:
type: string
description: Credit creation reason
name:
type: string
description: Name given to this credit
voidReason:
type: string
description: Voiding reason, if any for this credit.
invoiceCredits:
type: array
deprecated: true
items:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceCredit'
appliedDate:
type: string
description: Date when this credit was applied
format: date
customFields:
type: object
additionalProperties:
type: object
sourceType:
$ref: '#/components/schemas/com.monytyz.billing.transactable.model.enums.SourceType'
sourceId:
$ref: '#/components/schemas/com.monytyz.billing.transactable.SourceId'
fullyAppliedDate:
type: string
format: date-time
transactableAppliedAmount:
type: number
transactableAmount:
type: number
com.monytyz.billing.catalog.model.UsageType:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
name:
type: string
pluralName:
type: string
description:
type: string
unitName:
type: string
decimalPlaces:
type: integer
format: int32
status:
type: string
enum:
- ACTIVE
- INACTIVE
com.monytyz.billing.subscription.model.Subscription:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
referenceId:
type: string
customId:
type: string
billGroup:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
offering:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.Offering'
rate:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.jpa.Rate'
subscriptionItems:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.subscription.model.SubscriptionItem'
description:
type: string
nextBillDate:
type: string
format: date
nextUsageBillDate:
type: string
format: date
addOn:
type: boolean
billingStatus:
type: string
enum:
- ACTIVE
- CANCELED
- PENDING
- SUSPENDED
provisioningStatus:
type: string
enum:
- CANCELED
- PENDING
- PROVISIONED
- SUSPENDED
- INACTIVE
- DELETED
periodStartDate:
type: string
format: date-time
periodEndDate:
type: string
format: date-time
usagePeriodStart:
type: string
format: date-time
usagePeriodEnd:
type: string
format: date-time
prorationDate:
type: string
format: date
mrr:
type: number
firstPaidDate:
type: string
format: date
quoteOfferingId:
type: string
description: The ID of the quote offering that was most recently used to create/update this subscription.
billingVersion:
type: string
canceled:
type: boolean
com.monytyz.billing.payment.dto.paymentgateway.AmountConfiguration:
required:
- currency
type: object
properties:
currency:
type: string
description: Currency to which the amount configuration applies
example: USD
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
minimum:
type: number
description: Minimum payment amount allowed for payment type and currency
example: 25
maximum:
type: number
description: Maximum payment amount allowed for payment type and currency
example: 500
description: Minimum and maximum amounts for payment type per currency
com.monytyz.billing.customer.dto.address.AddressSaveDto:
required:
- city
- country
- description
- line1
- line2
- postalCode
- state
type: object
properties:
line1:
type: string
line2:
type: string
city:
type: string
state:
type: string
country:
type: string
postalCode:
type: string
description:
type: string
description: Address of the contact
com.monytyz.billing.quote.v2.core.QuoteCreationSource:
required:
- serialized
type: object
properties:
serialized:
type: string
com.monytyz.billing.invoice.model.Invoice:
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
userId:
type: string
accountCompanyName:
type: string
description: a snapshot of the account's company name at the time of invoicing.
fromCompanyInfo:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.CompanyInfoSnapshot'
billingContact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
billingContactSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot'
shippingContact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
shippingContactSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot'
billGroup:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
previousInvoice:
type: string
invoiceItems:
uniqueItems: true
type: array
description: the invoice items that are part of this invoice.
items:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceItem'
payments:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.payment.model.Payment'
invoicingDate:
type: string
description: The date at which this invoice is active if created in a non-active status, the date at whichit's created if it was created in an active status.
format: date
currency:
type: string
description: The currency for this invoice, only one currency per-invoice.
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
locale:
type: string
description: The locale for this invoice to use for internationalization.
startDate:
type: string
description: The billing period start date for this invoice.
format: date
endDate:
type: string
description: The billing period end date for this invoice.
format: date
usageStartDate:
type: string
description: The usage billing period start date for this invoice.
format: date
usageEndDate:
type: string
description: The usage billing period end date for this invoice.
format: date
orderId:
type: string
description: The corresponding order ID if this invoice was created as part of a one time order.
quoteId:
type: string
description: The corresponding quote ID if this invoice was created from a quote.
status:
type: string
description: The status of this invoice, see InvoiceStatus for possible values.
enum:
- DRAFT
- CANCELED
- UNPAID
- PENDING
- PAID
- REVERSED
testAccount:
type: boolean
description: If this invoice was created by a test account, collection won't be possible using a productionpayment processor.
dueDate:
type: string
description: The date in which this invoice is due in full.
format: date
amount:
type: number
description: The amount due as part of this invoice, this is the sum of all the line items amounts.
amountWithoutTax:
type: number
description: The amount due as part of this invoice not including tax, this is the sum of all the line items amounts.
tax:
type: number
description: Total tax due as part of this invoice.
exchangeRate:
type: number
description: The exchange rate at time of invoicing against the base currency you have set.
amountDue:
type: number
description: The amount that is still due if a partial payment was applied to this invoice.
amountPaid:
type: number
description: The amount paid, when this value is the same as the amount field, this invoice is considered paid
paidDate:
type: string
description: The date on which this invoice was considered paid in full
format: date
collectionAttempts:
type: integer
description: The number of collection attempts that have been made against this invoice
format: int32
deprecated: true
netTerms:
type: string
description: Net terms for this invoice
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
netTermsDays:
type: integer
description: The net terms days that have been applied to this invoice, this is used to determine if an invoice is past due
format: int32
recreatedInvoice:
type: boolean
description: True if this invoice has been void and recreated
amountWrittenOff:
type: number
description: The amount that has been writed off of this invoice, this is the sum of all item amounts that have been written off
amountCredited:
type: number
description: The amount credited if this invoice had a credit that was applied
pastDue:
type: boolean
description: This is true if the invoice is past due
amountWithoutDiscount:
type: number
discount:
type: number
contractId:
type: string
purchaseOrderNumber:
type: string
description: The corresponding purchase order number
invoiceTerms:
type: string
lastSent:
type: string
format: date-time
paymentInstruction:
$ref: '#/components/schemas/com.monytyz.billing.invoice.dto.PaymentInstruction'
billDate:
type: string
format: date
invoiceCredits:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceCredit'
customFields:
type: object
additionalProperties:
type: object
taxStatus:
type: string
enum:
- NOT_APPLICABLE
- CALCULATED
- FAILED
- FINALIZED_WITH_ERROR
taxError:
type: string
taxCommitted:
type: boolean
shippingAddress:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
billingAddress:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
shippingAddressLine1:
type: string
shippingAddressLine2:
type: string
shippingAddressCity:
type: string
shippingAddressState:
type: string
shippingAddressCountry:
type: string
shippingAddressPostalCode:
type: string
shippingAddressDescription:
type: string
billingAddressLine1:
type: string
billingAddressLine2:
type: string
billingAddressCity:
type: string
billingAddressState:
type: string
billingAddressCountry:
type: string
billingAddressPostalCode:
type: string
billingAddressDescription:
type: string
invoiceNumber:
type: string
originalQuoteId:
type: string
billingVersion:
type: string
creditRebilledTargetInvoiceId:
type: string
creditRebilledSourceInvoiceId:
type: string
creditRebilledTimestamp:
type: string
format: date-time
invoiceType:
type: string
enum:
- REBILLED
- ONETIME
- INCREMENTAL
- RECURRING
vatNumber:
type: string
description: The corresponding VAT number regarding this invoice
registrationNumber:
type: string
description: The corresponding Registration number regarding this invoice
migrated:
type: boolean
invoiceMemo:
type: string
metadata:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceMetadata'
accountingDate:
type: string
format: date
canceled:
type: boolean
unpaid:
type: boolean
finalized:
type: boolean
draft:
type: boolean
paid:
type: boolean
taxEstimatedInDraft:
type: boolean
oneTimeInvoice:
type: boolean
shippingAddressDto:
$ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto'
billingAddressDto:
$ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto'
invoiceEmailSent:
type: boolean
description: The core financial object, subscriptions, orders, activation fees, all are grouped by bill groupto created an invoice.
com.monytyz.billing.catalog.model.CustomPrice:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
unitAmount:
minimum: 0
type: number
referenceObjectType:
type: string
enum:
- QUOTE_ITEM
referenceObjectId:
type: string
type:
type: string
enum:
- USER_SPECIFIED
- SYSTEM_DERIVED
description: Optional custom price for entity
com.monytyz.billing.order.model.Order:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
type:
type: string
enum:
- NEW
- AMENDMENT
- RENEWAL
quote:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
invoice:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.Invoice'
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
billingContact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
billGroup:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
amount:
type: number
description: The total dollar value of this order
amountWithoutTax:
type: number
description: The total pre-tax dollar value of this order
discountAmount:
type: number
description: The total discount amount for this order
discountPercent:
type: number
description: The total percentage discount amount for this order
amountWithoutDiscount:
type: number
description: The total amount of this quote without discount
documentLocation:
type: string
status:
type: string
description: The status of this quote, see QuoteStatus for possible values.
enum:
- DRAFT
- CANCELED
- PENDING
- PROCESSED
- EXPIRED
currency:
type: string
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
netTerms:
type: string
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
orderOfferings:
uniqueItems: true
type: array
description: Order offerings that are part of this order.
items:
$ref: '#/components/schemas/com.monytyz.billing.order.model.OrderOffering'
notes:
uniqueItems: true
type: array
description: Notes that are set on this order.
items:
$ref: '#/components/schemas/com.monytyz.billing.order.model.OrderNote'
contractStartDate:
type: string
description: The date on which the services in the order need to start
format: date
contractAmendmentDate:
type: string
description: The date on which the services in the order need to be amended
format: date
contractEndDate:
type: string
description: The date on which the services in the order need to end
format: date
billDate:
type: string
format: date
description: Corresponding order
com.monytyz.billing.order.model.OrderOffering:
required:
- order
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
order:
$ref: '#/components/schemas/com.monytyz.billing.order.model.Order'
items:
uniqueItems: true
type: array
description: Order items that are part of this order offering
items:
$ref: '#/components/schemas/com.monytyz.billing.order.model.OrderItem'
quoteOfferingId:
type: string
description: Corresponding Quote Offering Id
offeringId:
type: string
description: The Offering ID for this item, null if a stand alone one time order.
rateId:
type: string
description: The Rate ID for this item, null if a stand alone one time order.
subscriptionId:
type: string
description: The subscription ID for this item
endDate:
type: string
format: date
description:
type: string
debitProrationMultiplier:
type: number
debit:
type: number
creditProrationMultiplier:
type: number
credit:
type: number
amount:
type: number
amountWithoutDiscount:
type: number
discountAmount:
type: number
discountPercent:
type: number
amendmentStatus:
type: string
enum:
- ADDED
- NO_CHANGE
- REMOVED
- UPDATED
previousId:
type: string
previousRateId:
type: string
previousAmount:
type: number
effectiveDate:
type: string
format: date
parentQuoteOfferingId:
type: string
subscriptionChangeId:
type: string
subscriptionTiming:
type: string
example: ADVANCE
enum:
- ADVANCE
- ARREARS
cancelled:
type: boolean
futureDatedAmendment:
type: boolean
currentOrPastDatedAmendment:
type: boolean
futureDatedNewSubscription:
type: boolean
futureDated:
type: boolean
unchanged:
type: boolean
currentOrPastDated:
type: boolean
description: Represents an offering on order, which is a group of order items
com.monytyz.billing.quote.model.AmendmentVersion:
required:
- versionString
type: object
properties:
versionString:
type: string
com.monytyz.billing.subscription.model.SubscriptionItemDiscount:
type: object
properties:
id:
type: string
subscriptionItem:
$ref: '#/components/schemas/com.monytyz.billing.subscription.model.SubscriptionItem'
discount:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.Discount'
applicableDiscountType:
type: string
enum:
- FLAT
- PERCENTAGE
applicableDiscountAmount:
type: number
com.monytyz.billing.customer.model.Address:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
line1:
type: string
line2:
type: string
city:
type: string
state:
type: string
country:
type: string
postalCode:
type: string
description:
type: string
countryUSA:
type: boolean
description: The address object, can be attached to Contacts
com.monytyz.billing.catalog.model.OfferingProductId:
required:
- offeringId
- productId
type: object
properties:
offeringId:
type: string
productId:
type: string
com.monytyz.billing.quote.model.QuoteESignContactId:
type: object
properties:
contactId:
type: string
quoteId:
type: string
com.monytyz.billing.invoice.dto.PaymentInstruction:
required:
- accountNumber
- bankName
- routingNumber
- swiftCode
type: object
properties:
accountNumber:
type: string
bankName:
type: string
routingNumber:
type: string
swiftCode:
type: string
description: Stores the instruction for payment if any
com.monytyz.billing.configuration.dto.legalEntity.InvoiceTerms:
required:
- currencyTerms
type: object
properties:
currencyTerms:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.configuration.dto.legalEntity.CurrencyWiseInvoiceTerms'
com.monytyz.billing.dealroom.dto.Document:
required:
- sections
type: object
properties:
sections:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.dealroom.dto.Section'
com.monytyz.billing.customer.model.CompanyInfoSnapshot:
required:
- addressFormat
type: object
properties:
id:
type: string
snapshotTimestamp:
type: string
format: date-time
name:
type: string
legalEntityId:
type: string
customId:
type: string
logoStorageId:
type: string
email:
type: string
addressFormat:
type: string
enum:
- US_FORMAT
- EUROPEAN_FORMAT
addressSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.CompanyInfoSnapshot.CompanyInfoAddressSnapshot'
description: a snapshot of the company issuing the invoice, at the time of invoicing.
com.monytyz.billing.common.dto.ResponseDto:
type: object
properties:
status:
type: integer
format: int32
message:
type: string
com.monytyz.billing.payment.model.Refund:
required:
- account
- amount
- currency
- description
- id
- payment
- reason
- sourceId
- sourceType
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
externalId:
type: string
deprecated: true
payment:
$ref: '#/components/schemas/com.monytyz.billing.payment.model.Payment'
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
currency:
type: string
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
amount:
type: number
status:
type: string
enum:
- SUCCEEDED
- PENDING
- FAILED
- CANCELED
description:
type: string
referenceNo:
type: string
settledDate:
type: string
format: date-time
gatewayReference:
type: string
sourceId:
type: string
sourceType:
$ref: '#/components/schemas/com.monytyz.billing.transactable.model.enums.SourceType'
reason:
type: string
deprecated: true
enum:
- BILLING_ERROR
- SERVICE_ISSUE
- CANCELLATION
- ADJUSTMENT
- OTHER
otherReason:
type: string
deprecated: true
errorCode:
type: string
errorMessage:
type: string
com.monytyz.billing.dealroom.model.DealRoomESignContact:
required:
- contact
- dealRoom
- id
- role
type: object
properties:
id:
$ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoomESignContactId'
contact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
dealRoom:
$ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoom'
role:
type: string
enum:
- PRIMARY_SIGNER
- SECONDARY_SIGNER
- CARBON_COPY
com.monytyz.billing.order.model.OrderItem:
required:
- orderOffering
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
orderOffering:
$ref: '#/components/schemas/com.monytyz.billing.order.model.OrderOffering'
productId:
type: string
description: The Product ID for this item
sku:
type: string
description: The SKU of the product
subscriptionItemId:
type: string
description: The subscription item ID for this item
quoteItemId:
type: string
description: Corresponding QuoteItem ID for this item
endDate:
type: string
format: date
description:
type: string
isAddon:
type: boolean
addonId:
type: string
quantity:
type: number
format: double
unitPriceAfterDiscount:
type: number
unitPrice:
type: number
debitProrationMultiplier:
type: number
debit:
type: number
creditProrationMultiplier:
type: number
credit:
type: number
contractAmount:
type: number
amount:
type: number
amountWithoutDiscount:
type: number
discountAmount:
type: number
discountPercent:
type: number
customDiscountId:
type: string
customDiscountType:
type: string
enum:
- FLAT
- PERCENTAGE
customDiscountAmountOrPercent:
type: number
amendmentStatus:
type: string
enum:
- ADDED
- NO_CHANGE
- REMOVED
- UPDATED
previousItemId:
type: string
previousAmount:
type: number
previousQuantity:
type: number
format: double
previousCustomDiscountId:
type: string
previousCustomDiscountType:
type: string
enum:
- FLAT
- PERCENTAGE
previousCustomDiscountAmountOrPercent:
type: number
customPriceId:
type: string
previousCustomPriceId:
type: string
description: An individual line on an order. Each item represents a product, discount, or fee
com.monytyz.billing.quote.model.QuoteConditionalTerms:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
ruleId:
type: string
format: uuid
quote:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
terms:
type: string
displayOrder:
type: integer
format: int32
editableOnQuote:
type: boolean
ruleName:
type: string
status:
type: string
enum:
- ACTIVE
- INACTIVE
edited:
type: boolean
com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodSupport:
required:
- enabled
- method
type: object
properties:
method:
type: string
description: Payment method type like CREDIT_CARD, DIRECT_DEBIT, ACH_CREDIT etc
example: DIRECT_DEBIT
enum:
- CREDIT_CARD
- DIRECT_DEBIT
- ACH_CREDIT
- US_BANK_TRANSFER
- MANUAL
enabled:
type: boolean
description: A boolean field indicating that the payment method type should be enabled or not
example: true
description: A list of allowed payment methods
com.monytyz.billing.catalog.model.Product:
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
financeId:
type: string
offeringProducts:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.OfferingProduct'
name:
type: string
description:
type: string
status:
type: string
enum:
- ACTIVE
- INACTIVE
productType:
type: string
enum:
- ADVANCE
- ARREARS
- USAGE
- ONETIME
- ONETIME_PREPAID_CREDIT
- MIN_COMMIT
usageTypes:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.UsageType'
sku:
type: string
locked:
type: boolean
recognitionMethod:
type: string
enum:
- IMMEDIATE
- EVENLY_MONTHLY_IN_ADVANCE
customFields:
type: object
additionalProperties:
type: object
taxItemCode:
type: string
taxExempt:
type: boolean
prePaidCreditConfig:
$ref: '#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData'
notTaxExempt:
type: boolean
description: Product associated with the credit note
com.monytyz.billing.credit.model.CreditNote:
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
description: Internal (unique) id
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
billGroup:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
invoice:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.Invoice'
credit:
$ref: '#/components/schemas/com.monytyz.billing.credit.model.Credit'
creditNoteItems:
uniqueItems: true
type: array
description: Credit note items that are part of this credit note
items:
$ref: '#/components/schemas/com.monytyz.billing.credit.model.CreditNoteItem'
description:
type: string
description: Credit note description
type:
type: string
description: Credit note type
enum:
- ADJUSTMENT
- WRITE_OFF
status:
type: string
description: Credit note status
enum:
- APPLIED
- VOID
amount:
type: number
description: Amount
deprecated: true
amountWithoutTax:
type: number
tax:
type: number
taxCalculationStatus:
type: string
enum:
- NOT_APPLICABLE
- CALCULATED
- FAILED
- FINALIZED_WITH_ERROR
taxCalculationError:
type: string
refundable:
type: boolean
description: Is the credit corresponding to this credit note refundable?
deprecated: true
currency:
type: string
description: The currency for this credit note, only one currency per-credit note.
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
customFields:
type: object
additionalProperties:
type: object
billingContact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
billingContactSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot'
shippingContact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
shippingContactSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot'
shippingAddress:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
billingAddress:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
shippingAddressLine1:
type: string
shippingAddressLine2:
type: string
shippingAddressCity:
type: string
shippingAddressState:
type: string
shippingAddressCountry:
type: string
shippingAddressPostalCode:
type: string
shippingAddressDescription:
type: string
billingAddressLine1:
type: string
billingAddressLine2:
type: string
billingAddressCity:
type: string
billingAddressState:
type: string
billingAddressCountry:
type: string
billingAddressPostalCode:
type: string
billingAddressDescription:
type: string
voidReason:
type: string
metadata:
$ref: '#/components/schemas/com.monytyz.billing.credit.model.CreditNoteMetadata'
shippingAddressInfo:
$ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressSnapshotData'
sourceType:
$ref: '#/components/schemas/com.monytyz.billing.transactable.model.enums.SourceType'
sourceId:
$ref: '#/components/schemas/com.monytyz.billing.transactable.SourceId'
fullyAppliedDate:
type: string
format: date-time
transactableAppliedAmount:
type: number
transactableAmount:
type: number
description: Corresponding credit note, if credit is for credit note
com.monytyz.billing.transactable.SourceId:
required:
- value
type: object
properties:
value:
type: string
com.monytyz.billing.quote.model.internal.quote.BillingPeriod:
type: object
properties:
start:
type: string
format: date
end:
type: string
format: date
com.monytyz.billing.dealroom.dto.Section:
required:
- contents
- key
type: object
properties:
key:
type: string
title:
type: string
description:
type: string
contents:
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.dealroom.dto.DealRoomContent'
com.monytyz.billing.dunning.model.DunningProcess:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
name:
type: string
dunningSteps:
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.dunning.model.DunningStep'
defaultProcess:
type: boolean
com.monytyz.billing.catalog.model.Price:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
from:
type: integer
format: int64
to:
type: integer
format: int64
amount:
minimum: 0
type: number
description:
type: string
priceModel:
type: string
enum:
- VOLUME
- TIERED
- FLAT
- CUSTOM
- PERCENT_OF_TOTAL
rateId:
type: string
productId:
type: string
com.monytyz.billing.data.billing.BillingVersion:
required:
- version
type: object
properties:
version:
type: string
com.monytyz.billing.invoice.model.InvoiceItem:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
invoice:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.Invoice'
subscriptionId:
type: string
referenceId:
type: string
subscription:
type: boolean
quoteItemId:
type: string
productId:
type: string
productName:
type: string
offeringId:
type: string
offeringName:
type: string
offeringDescription:
type: string
offeringType:
type: string
enum:
- SUBSCRIPTION
- ONETIME
- MIN_COMMIT
- CUSTOM_PERCENT_OF_TOTAL
rateId:
type: string
subscriptionItemId:
type: string
rateName:
type: string
multiTier:
type: boolean
productType:
type: string
enum:
- ADVANCE
- ARREARS
- USAGE
- ONETIME
- ONETIME_PREPAID_CREDIT
- MIN_COMMIT
description:
type: string
isAddon:
type: boolean
addonId:
type: string
quantity:
type: number
format: double
amount:
type: number
amountWithoutTax:
type: number
tax:
type: number
previousQuantity:
type: number
format: double
unitPrice:
type: number
amountCredited:
type: number
amountWrittenOff:
type: number
writeOffDate:
type: string
format: date
priceModel:
type: string
enum:
- VOLUME
- TIERED
- FLAT
- CUSTOM
- PERCENT_OF_TOTAL
amountWithoutDiscount:
type: number
discount:
type: number
periodStartDate:
type: string
format: date
periodEndDate:
type: string
format: date
prorationMultiplier:
type: number
minCommitAvailableAmount:
type: number
minCommitAdditionalBilledAmount:
type: number
financeId:
type: string
lineNumber:
type: integer
format: int32
priceDisplayOption:
type: string
enum:
- PRODUCT
- OFFERING
discounts:
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceItemDiscount'
description: the invoice items that are part of this invoice.
com.monytyz.billing.quote.model.Quote:
required:
- startDateSource
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
description: Internal (unique) id
owner:
type: string
customId:
type: string
description: Id provided by the external system
type:
type: string
enum:
- NEW
- AMENDMENT
- RENEWAL
newQuoteType:
type: string
description: Types of new quotes
enum:
- NET_NEW
- MANUAL_RENEWAL
- EARLY_RENEWAL
migrated:
type: boolean
description: Migration data
description:
type: string
description: Quote description
order:
$ref: '#/components/schemas/com.monytyz.billing.order.model.Order'
contract:
$ref: '#/components/schemas/com.monytyz.billing.contract.model.Contract'
previousContract:
$ref: '#/components/schemas/com.monytyz.billing.contract.model.Contract'
originalQuote:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
previousQuote:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
companyInfoSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.CompanyInfoSnapshot'
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
secondaryAccount:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
billingAccountId:
type: string
description: Account Id that drives billing associated with this quote
primaryContact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
primaryContactSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot'
billingContact:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact'
billingContactSnapshot:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot'
billGroup:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup'
opportunity:
$ref: '#/components/schemas/com.monytyz.billing.opportunity.model.Opportunity'
expirationDate:
type: string
description: The date on which this quote becomes invalid
format: date
approvalSubmittedAt:
type: string
description: The date/time on which this quote was submitted for approval
format: date-time
approvalGrantedAt:
type: string
description: The date/time on which this quote was approved
format: date-time
credit:
type: number
description: The total credit issued against this quote
contractAmount:
type: number
description: The total dollar value of this quote
amount:
type: number
description: Amount to be paid each invoice
amountWithoutTax:
type: number
description: The total pre-tax dollar value of this quote
discountAmount:
type: number
description: The total discounted amount of this quote
amountWithoutDiscount:
type: number
description: The total amount of this quote without discount
discountPercent:
type: number
description: Calculated discount percent for the overall quote
documentLocation:
type: string
documentUrl:
type: string
status:
type: string
description: The status of this quote, see QuoteStatus for possible values
enum:
- DRAFT
- REVIEW
- APPROVED
- DENIED
- SENT
- ACCEPTED
- ACCEPTED_ADMIN_EDITABLE
- PROCESSED
- CANCELED
- EXPIRED
- ARCHIVED
manualAcceptanceReason:
type: string
description: Reason quote was manually accepted
cancellationReason:
type: string
description: Optional reason associated with the Canceled status
enum:
- EXPIRED
- CUSTOMER_DECLINED
- DUPLICATE
- BY_USER
- SUPERSEDED_BY_PROCESSED_QUOTE
- BY_MIGRATION
currency:
type: string
enum:
- AUD
- BYN
- CAD
- CNY
- DKK
- EUR
- GBP
- INR
- ISK
- MYR
- NOK
- SEK
- SGD
- TWD
- USD
netTerms:
type: string
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
quoteOfferings:
uniqueItems: true
type: array
description: Quote offerings that are part of this quote
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteOffering'
notes:
uniqueItems: true
type: array
description: Notes for this Quote
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteNote'
contractStartDate:
type: string
description: The date on which the services in the quote need to start
format: date
originalContractStartDate:
type: string
description: The date on which the services in the quote were originally slated to start
format: date
contractAmendmentDate:
type: string
description: The amended date on which the services in the quote need to start
format: date
contractEndDate:
type: string
description: The date on which the services in the quote need to end
format: date
contractLength:
type: integer
description: Length of the contract in months
format: int32
contractTerms:
type: string
description: Contract terms
contractEndAction:
type: string
enum:
- MANUAL_RENEW
- RENEW
- CANCEL
renewalTermLength:
$ref: '#/components/schemas/com.monytyz.billing.quote.dto.quote.renewal.RenewalTermLength'
autoRenewalNoticePeriod:
type: integer
format: int32
signedDocumentStorageId:
type: string
sowDocumentStorageId:
type: string
approvals:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteApproval'
validations:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteValidation'
eSignContacts:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteESignContact'
eSignContactSnapshots:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteESignContactSnapshot'
signingOrder:
type: string
enum:
- INTERNAL_FIRST
- EXTERNAL_FIRST
- EXTERNAL_ONLY
- INSTANTANEOUS
showProration:
type: boolean
showCredits:
type: boolean
showPricePerUnit:
type: boolean
showOfferingDescription:
type: boolean
showProductDescription:
type: boolean
showPricing:
type: boolean
showDiscount:
type: boolean
showBillingSchedule:
type: boolean
showBillingFrequency:
type: boolean
showPriorContractOnAmendments:
type: boolean
showDeltaViewOnAmendments:
type: boolean
hideUpdatedContractWhenDeltaViewIsSuccessfulOnAmendments:
type: boolean
showRateName:
type: boolean
mrr:
type: number
arr:
type: number
incrementalMrr:
type: number
incrementalArr:
type: number
previousMrr:
type: number
previousArr:
type: number
declinedDate:
type: string
format: date-time
sentDate:
type: string
format: date-time
autoRenewContract:
type: boolean
deprecated: true
requiresEsign:
type: boolean
acceptedAt:
type: string
description: The date/time on which this quote was accepted
format: date-time
processedAt:
type: string
description: The date/time on which this quote was processed
format: date-time
collaborationAccess:
type: string
enum:
- NONE
- VIEW
- EDIT
purchaseOrderNumber:
type: string
description: The corresponding purchase order number
vatNumber:
type: string
description: The corresponding VAT number
showUnusedItems:
type: boolean
showSigningPage:
type: boolean
coverDocumentStorageId:
type: string
footerDocumentStorageId:
type: string
source:
type: string
description: The _creation_ source of this quote
customFields:
type: object
additionalProperties:
type: object
legalEntity:
$ref: '#/components/schemas/com.monytyz.billing.configuration.model.LegalEntity'
conditionalTerms:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteConditionalTerms'
shippingAddress:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
billingAddress:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Address'
addressSource:
type: string
startDateSource:
type: string
shippingAddressLine1:
type: string
shippingAddressLine2:
type: string
shippingAddressCity:
type: string
shippingAddressState:
type: string
shippingAddressCountry:
type: string
shippingAddressPostalCode:
type: string
shippingAddressDescription:
type: string
billingAddressLine1:
type: string
billingAddressLine2:
type: string
billingAddressCity:
type: string
billingAddressState:
type: string
billingAddressCountry:
type: string
billingAddressPostalCode:
type: string
billingAddressDescription:
type: string
amendmentVersion:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.AmendmentVersion'
billingAnchor:
$ref: '#/components/schemas/com.monytyz.billing.data.cpq.BillingAnchorData'
activeConditionalTerms:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteConditionalTerms'
esignContacts:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteESignContact'
currentOrPastDatedAmendment:
type: boolean
typedStartDateSource:
type: string
enum:
- ORIGINAL_CONTRACT_START
- AT_TIME_OF_SIGNING
- MANUAL
dateData:
$ref: '#/components/schemas/com.monytyz.billing.quote.v2.core.DateData'
billingAnchorConfig:
$ref: '#/components/schemas/com.monytyz.billing.data.cpq.BillingAnchorConfig'
contractTerm:
$ref: '#/components/schemas/com.monytyz.billing.data.cpq.ContractTerm'
renewal:
type: boolean
esignEnvelopeId:
type: string
esignContactSnapshots:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteESignContactSnapshot'
expirationDateExtendable:
type: boolean
typedAddressSource:
type: string
enum:
- ACCOUNT
- CONTACT
typedCreationSource:
$ref: '#/components/schemas/com.monytyz.billing.quote.v2.core.QuoteCreationSource'
previousContractLength:
type: integer
format: int32
description: latest processed quote for this contract
com.monytyz.billing.invoice.model.InvoiceCredit:
type: object
properties:
id:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceCreditCompositeId'
invoice:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.Invoice'
credit:
$ref: '#/components/schemas/com.monytyz.billing.credit.model.Credit'
amountApplied:
type: number
com.monytyz.billing.invoice.model.InvoiceMetadata:
required:
- invoiceDelay
- source
- sourceId
- type
type: object
properties:
source:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceSource'
invoiceDelay:
type: integer
format: int32
sourceId:
type: string
type:
type: string
description: Invoice metadata mainly about source of the invoice and other details
discriminator:
propertyName: type
com.monytyz.billing.credit.model.CreditNoteItem:
type: object
properties:
createdBy:
type: string
createDate:
type: string
format: date-time
lastModifiedBy:
type: string
modifyDate:
type: string
format: date-time
id:
type: string
description: Internal (unique) id
creditNote:
$ref: '#/components/schemas/com.monytyz.billing.credit.model.CreditNote'
invoiceItem:
$ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceItem'
product:
$ref: '#/components/schemas/com.monytyz.billing.catalog.model.Product'
description:
type: string
periodStartDate:
type: string
format: date
periodEndDate:
type: string
format: date
quantity:
type: number
format: double
amount:
type: number
amountWithoutTax:
type: number
tax:
type: number
prorationMultiplier:
type: number
description: Credit note items that are part of this credit note
com.monytyz.billing.quote.model.QuoteValidation:
required:
- errorLevel
- message
- ruleId
type: object
properties:
ruleId:
type: string
format: uuid
ruleDescription:
type: string
errorLevel:
type: string
enum:
- INFO
- WARN
- ERROR
message:
type: string
com.monytyz.billing.dealroom.model.DealRoomQuote:
required:
- id
- position
type: object
properties:
id:
$ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoomQuoteId'
dealRoom:
$ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoom'
position:
type: integer
format: int32
quoteName:
type: string
note:
type: string
com.monytyz.billing.data.cpq.ContractTerm:
required:
- billDay
- end
- start
type: object
properties:
start:
type: string
format: date
end:
type: string
format: date
billDay:
type: integer
format: int32
lengthInDays:
type: integer
format: int64
com.monytyz.billing.dealroom.dto.DealRoomContractDocument:
required:
- storageType
type: object
properties:
storageType:
type: string
enum:
- MSA
- DPA
- NPA
- NDA
- LOGO
- ESIGN
- SOW
- COVER
- FOOTER
- ATTACHMENT
discriminator:
propertyName: storageType
com.monytyz.billing.opportunity.model.Opportunity:
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
name:
type: string
quotes:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
primaryQuote:
$ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote'
owner:
type: string
account:
$ref: '#/components/schemas/com.monytyz.billing.customer.model.Account'
dealRoomId:
type: string
dealRoom:
$ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoom'
opportunityStatus:
type: string
enum:
- WON
- CANCELED
- ACTIVE
- LOST
com.monytyz.billing.configuration.dto.legalEntity.LegalEntityOptions:
required:
- invoiceTerms
type: object
properties:
invoiceTerms:
$ref: '#/components/schemas/com.monytyz.billing.configuration.dto.legalEntity.InvoiceTerms'
description: Options for the legal entity, contains the custom invoice terms for legal entity an other options
example:
currencyWiseInvoiceTerms:
- currency: USD
terms:
I am the terms
- currency: SEK terms:I am the terms
invoiceTermsActive: true com.monytyz.billing.customer.dto.account.AccountListDto: required: - content - totalElements - totalPages type: object properties: content: type: array items: $ref: '#/components/schemas/com.monytyz.billing.customer.dto.account.AccountDto' totalElements: type: integer format: int64 totalPages: type: integer format: int32 pageable: $ref: '#/components/schemas/MNPageable' com.monytyz.billing.order.model.OrderNote: type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: type: string order: $ref: '#/components/schemas/com.monytyz.billing.order.model.Order' description: Notes that are set on this order. com.monytyz.billing.configuration.model.LegalEntity: required: - addressFormat - defaultEntity type: object properties: id: type: string customId: type: string defaultEntity: type: boolean name: type: string line1: type: string line2: type: string city: type: string state: type: string postalCode: type: string country: type: string logoStorageId: type: string email: type: string addressFormat: type: string enum: - US_FORMAT - EUROPEAN_FORMAT quoteTemplate: type: string options: $ref: '#/components/schemas/com.monytyz.billing.configuration.dto.legalEntity.LegalEntityOptions' createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time com.monytyz.billing.data.cpq.BillingAnchorConfig: required: - anchoredDate type: object properties: anchoredDate: type: string format: date com.monytyz.billing.payment.model.Payment: required: - currency - sourceId - sourceType - transactableAmount type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: type: string account: type: string paymentDate: type: string format: date collectionDate: type: string format: date deprecated: true settledDate: type: string format: date-time refundDate: type: string format: date deprecated: true voidDate: type: string format: date description: type: string gatewayId: type: string gatewayReference: type: string gatewayCode: type: string gatewayMessage: type: string amount: type: number deprecated: true appliedAmount: type: number deprecated: true unAppliedAmount: type: number deprecated: true fullyApplied: type: boolean deprecated: true paymentStatus: type: string enum: - PROCESSING - SUCCESS - FAILED - CANCELED - REFUNDED - PARTIAL_REFUND paymentType: type: string enum: - CREDIT_CARD - DIRECT_DEBIT - ACH_CREDIT - US_BANK_TRANSFER - MANUAL currency: type: string enum: - AUD - BYN - CAD - CNY - DKK - EUR - GBP - INR - ISK - MYR - NOK - SEK - SGD - TWD - USD paymentMethod: type: string paymentApplications: uniqueItems: true type: array deprecated: true items: $ref: '#/components/schemas/com.monytyz.billing.invoice.model.Invoice' referenceNo: type: string description: Manual payment reference number refunds: uniqueItems: true type: array deprecated: true items: $ref: '#/components/schemas/com.monytyz.billing.payment.model.Refund' sourceType: $ref: '#/components/schemas/com.monytyz.billing.transactable.model.enums.SourceType' refundableType: type: boolean directDebit: type: boolean successful: type: boolean sourceId: $ref: '#/components/schemas/com.monytyz.billing.transactable.SourceId' manualPayment: type: boolean fullyAppliedDate: type: string format: date-time successfulOrProcessing: type: boolean transactableAppliedAmount: type: number transactableAmount: type: number com.monytyz.billing.customer.model.Account: required: - accountType - customFields - defaultCurrency - status 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 isTestAccount: type: boolean description: A test account cannot use production payment processors and is excluded from reporting locale: type: string description: the locale of the account, used for localization accountName: type: string description: the name of the account associated with this account defaultCurrency: type: string description: The currency of the account, cannot be changed once invoices are created enum: - AUD - BYN - CAD - CNY - DKK - EUR - GBP - INR - ISK - MYR - NOK - SEK - SGD - TWD - USD status: type: string enum: - ACTIVE - CANCELED - SUSPENDED - INACTIVE accountType: type: string description: The type of the account enum: - CUSTOMER - PARTNER billGroups: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup' paymentMethods: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.payment.model.PaymentMethod' defaultLegalEntity: $ref: '#/components/schemas/com.monytyz.billing.configuration.model.LegalEntity' shippingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.model.Address' billingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.model.Address' customFields: type: object additionalProperties: type: object taxEntityUseCode: type: string taxExemptionNumber: type: string defaultDunningProcess: $ref: '#/components/schemas/com.monytyz.billing.dunning.model.DunningProcess' ccEmails: uniqueItems: true type: array items: type: string com.monytyz.billing.customer.model.ContactSnapshot: type: object properties: id: type: string snapshotTimestamp: type: string format: date-time contactId: type: string accountId: type: string customId: type: string internal: type: boolean fullName: type: string email: type: string phone: type: string title: type: string addressSnapshot: $ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot.AddressSnapshot' com.monytyz.billing.quote.model.QuoteApproval: required: - mandatory - name - ruleId - skipped type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: type: string ruleId: type: string format: uuid userId: type: string description: Id of the user who should approve teamId: type: string description: Id of the team whose member should approve teamName: type: string approverOrDeclinerId: type: string description: Id of the user that approved or declined this approval name: maxLength: 255 minLength: 0 type: string description: type: string description: Description of why approval is required. This will be provided by rules engine rank: type: integer description: Integer field to indicate the rank of approval. Lower rank must be approved first format: int32 status: type: string enum: - NO_ACTION - APPROVED - DECLINED declineReason: type: string approvalTimestamp: type: string format: date-time skipped: type: boolean quote: $ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote' mandatory: type: boolean lifecycleBehavior: type: string enum: - RESET_APPROVAL - RETAIN_APPROVAL com.monytyz.billing.customer.dto.address.AddressDto: type: object properties: createdBy: type: string description: Identifier for the user who created the record example: usr_X0XZ05bvkrB1RpLS createDate: type: string description: Timestamp of when the record was created format: date-time lastModifiedBy: type: string description: Identifier for the user who last modified the record example: usr_X0XZ05bvkrB1RpLS modifyDate: type: string description: Timestamp of when the record was last modified format: date-time id: type: string description: Unique identifier for the address example: addr_bkoY6dCoLRblllsJ line1: type: string description: First line of the address example: 344 Clinton Street, Apartment 3D line2: type: string description: Second line of the address example: Apartment 3D city: type: string description: City of the address example: New York state: type: string description: State of the address example: New York country: type: string description: Country of the address example: US postalCode: type: string description: Postal code of the address example: '12345' description: type: string description: Description of the address example: Permanent Address description: Billing address for the account com.monytyz.billing.dealroom.model.DealRoomQuoteId: required: - dealRoomId - quoteId type: object properties: quoteId: type: string dealRoomId: type: string com.monytyz.billing.catalog.model.RateOptions: required: - priceDisplay - productOptions type: object properties: productOptions: type: array items: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.ProductRateOptions' priceDisplay: type: string enum: - PRODUCT - OFFERING com.monytyz.billing.quote.model.QuoteESignContact: type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: $ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteESignContactId' contact: $ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact' quote: $ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote' role: type: string enum: - PRIMARY_SIGNER - SECONDARY_SIGNER - CARBON_COPY com.monytyz.billing.customer.dto.address.AddressType: required: - serialized type: object properties: serialized: type: string com.monytyz.billing.catalog.model.OfferingProduct: required: - id - isMandatory - offering - position - product - quantityDisplayType type: object properties: id: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.OfferingProductId' offering: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.Offering' product: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.Product' isMandatory: type: boolean position: type: integer format: int32 quantityDisplayType: type: string enum: - INPUT - DROPDOWN com.monytyz.billing.dealroom.dto.DealRoomDocument: required: - document - version type: object properties: version: type: string document: $ref: '#/components/schemas/com.monytyz.billing.dealroom.dto.Document' com.monytyz.billing.catalog.model.Offering: 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 type: type: string enum: - SUBSCRIPTION - ONETIME - MIN_COMMIT - CUSTOM_PERCENT_OF_TOTAL rates: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.jpa.Rate' offeringProducts: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.OfferingProduct' name: type: string description: type: string status: type: string enum: - ACTIVE - INACTIVE - CANCELED - PENDING - EXPIRED - ARCHIVED startDate: type: string format: date endDate: type: string format: date locked: type: boolean financeId: type: string customFields: type: object additionalProperties: type: object products: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.Product' minimumCommit: type: boolean com.monytyz.billing.credit.model.CreditNoteMetadata: required: - action - source - sourceId - type type: object properties: source: $ref: '#/components/schemas/com.monytyz.billing.credit.model.CreditNoteSource' action: type: string enum: - DOWNGRADE - CREDIT_REBILL - CREDIT_NOTE sourceId: type: string type: type: string discriminator: propertyName: type com.monytyz.billing.quote.dto.quote.renewal.RenewalTermLength: required: - type type: object properties: type: type: string discriminator: propertyName: type com.monytyz.billing.customer.dto.account.AccountDto: type: object properties: createdBy: type: string description: Identifier for the user who created the record example: usr_X0XZ05bvkrB1RpLS createDate: type: string description: Timestamp of when the record was created format: date-time lastModifiedBy: type: string description: Identifier for the user who last modified the record example: usr_X0XZ05bvkrB1RpLS modifyDate: type: string description: Timestamp of when the record was last modified format: date-time id: type: string description: Unique identifier for the account example: acct_m0CB9LflojZxytfC customId: type: string description: A user provided identifier for the account example: c993f52b-0bbd-454b-9849-fd6c1991efb6 isTestAccount: type: boolean description: Boolean value indicating if the account is a test account locale: type: string description: 'Locale of the account. Example: en_US' example: en accountName: type: string description: Name of the account. example: Netflix defaultCurrency: type: string description: Represents the currency of the account. It is the ISO 4217 assigned three-digit code. If no currency is specified, the tenant's default currency will be set for the account. example: USD enum: - AUD - BYN - CAD - CNY - DKK - EUR - GBP - INR - ISK - MYR - NOK - SEK - SGD - TWD - USD status: type: string description: Status of the account. An account can be ACTIVE, INACTIVE, CANCELED or SUSPENDED enum: - ACTIVE - CANCELED - SUSPENDED - INACTIVE accountType: type: string description: Type of the account. An account can be CUSTOMER, PARTNER enum: - CUSTOMER - PARTNER primaryContact: $ref: '#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactDto' noteCount: type: integer description: Number of notes that is associated with this account format: int64 example: 100000 defaultLegalEntityId: type: string description: Legal entity ID for this account. Default legal entity will be used as default when no legal entity is specified example: lgen_e33f05749111f shippingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto' billingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto' customFields: type: object additionalProperties: type: object description: User configured custom fields for the account description: User configured custom fields for the account taxEntityUseCode: type: string description: Tax entity use code for the account example: M taxExemptionNumber: type: string description: Tax exemption number for the account example: F60730EE-4127-49C0-B490-CBDF29BFD235 defaultDunningProcessId: type: string description: Optional dunning process id for the account example: dunpr_tDbC2FxuCwQoxcjm ccEmails: type: string description: A list of account level email addresses to which the dunning mail will be copied example: abc@gmail.com,def@gmail.com com.monytyz.billing.invoice.model.InvoiceSource: required: - source type: object properties: source: type: string com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayConfiguration: required: - amountConfigurations - type type: object properties: type: type: string description: Payment method type example: US_BANK_TRANSFER enum: - CREDIT_CARD - DIRECT_DEBIT - ACH_CREDIT - US_BANK_TRANSFER - MANUAL amountConfigurations: type: array description: Minimum and maximum amounts for payment type per currency items: $ref: '#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.AmountConfiguration' description: Configuration for minimum and maximum payments amounts example: US_BANK_TRANSFER com.monytyz.billing.dealroom.model.DealRoom: required: - contractDocuments - document - eSignContacts - esignContacts - expirationDate - legalEntity - quotes - requiresEsign - signingOrder - status type: object properties: id: type: string customId: type: string ownerId: type: string selectedQuoteId: type: string expirationDate: type: string format: date sharedAt: type: string format: date-time declinedAt: type: string format: date-time signedAt: type: string format: date-time cancelledAt: type: string format: date-time purchaseOrderNumber: type: string status: type: string enum: - DRAFT - SHARED - IN_REVIEW - DECLINED - SIGNED - EXPIRED - CANCELED legalEntity: $ref: '#/components/schemas/com.monytyz.billing.configuration.model.LegalEntity' companyInfoSnapshot: $ref: '#/components/schemas/com.monytyz.billing.customer.model.CompanyInfoSnapshot' signingOrder: type: string enum: - INTERNAL_FIRST - EXTERNAL_FIRST - EXTERNAL_ONLY - INSTANTANEOUS requiresEsign: type: boolean esignEnvelopeId: type: string shippingContact: $ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact' billingContact: $ref: '#/components/schemas/com.monytyz.billing.customer.model.Contact' shippingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.model.Address' billingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.model.Address' eSignContacts: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoomESignContact' quotes: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoomQuote' document: $ref: '#/components/schemas/com.monytyz.billing.dealroom.dto.DealRoomDocument' contractDocuments: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.dealroom.dto.DealRoomContractDocument' createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time esignContacts: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.dealroom.model.DealRoomESignContact' com.monytyz.billing.configuration.dto.legalEntity.CurrencyWiseInvoiceTerms: required: - active - currencies - terms type: object properties: currencies: uniqueItems: true type: array items: type: string enum: - AUD - BYN - CAD - CNY - DKK - EUR - GBP - INR - ISK - MYR - NOK - SEK - SGD - TWD - USD terms: type: string active: type: boolean com.monytyz.billing.dunning.model.DunningStep: type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: type: string stepName: type: string stepSequence: type: integer format: int32 customId: type: string daysSinceDueDate: type: integer format: int32 retryCollection: type: boolean sendEmail: type: boolean emailTemplateId: type: string emailBillGroupShippingContact: type: boolean emailBillGroupCCEmails: type: boolean internalCCEmails: uniqueItems: true type: array items: type: string dunningProcess: $ref: '#/components/schemas/com.monytyz.billing.dunning.model.DunningProcess' emailAccountCCEmails: type: boolean com.monytyz.billing.transactable.model.enums.SourceType: type: object com.monytyz.billing.customer.dto.account.AccountSaveDto: required: - accountName - status type: object properties: customId: type: string description: A user provided identifier for the account example: Net6b48c3f6-852e-4cd7-b4f4-a35ad60ad483flix defaultCurrency: type: string description: Represents the currency of the account. It is the ISO 4217 assigned three-digit code. If no currency is specified, the tenant's default currency will be set for the account. enum: - AUD - BYN - CAD - CNY - DKK - EUR - GBP - INR - ISK - MYR - NOK - SEK - SGD - TWD - USD isTestAccount: type: boolean description: Boolean value indicating if the account is a test account locale: type: string description: 'Locale of the account. Example: en_US' example: en accountName: type: string description: Name of the account. example: Netflix status: type: string description: Status of the account. An account can be ACTIVE, INACTIVE, CANCELED or SUSPENDED enum: - ACTIVE - CANCELED - SUSPENDED - INACTIVE accountType: type: string description: Type of the account. An account can be CUSTOMER, PARTNER enum: - CUSTOMER - PARTNER defaultLegalEntityId: type: string description: Legal entity ID for this account. Default legal entity will be used as default when no legal entity is specified example: lgen_e33f05749111f customFields: type: object additionalProperties: type: object taxEntityUseCode: maxLength: 100 minLength: 0 type: string description: Tax entity use code for the account example: M taxExemptionNumber: maxLength: 100 minLength: 0 type: string description: Tax exemption number for the account example: F60730EE-4127-49C0-B490-CBDF29BFD235 defaultDunningProcessId: type: string description: Optional dunning process id for the account example: dunpr_tDbC2FxuCwQoxcjm ccEmails: type: string description: A list of account level email addresses to which the dunning mail will be copied example: abc@gmail.com, def@gmail.com billingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressSaveDto' shippingAddress: $ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressSaveDto' com.monytyz.billing.charge.model.Charge: type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: type: string product: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.Product' billGroup: $ref: '#/components/schemas/com.monytyz.billing.customer.model.BillGroup' rate: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.jpa.Rate' status: type: string enum: - INVOICED - INVOICE_PENDING purchaseDate: type: string format: date quantity: minimum: 0 type: number format: double description: type: string sku: type: string subscriptionItem: $ref: '#/components/schemas/com.monytyz.billing.subscription.model.SubscriptionItem' type: type: string enum: - PREPAID - PURCHASE com.monytyz.billing.catalog.model.ProductRateOptions: required: - aggregationModel - productId type: object properties: productId: type: string aggregationModel: type: string enum: - SUM - AVERAGE com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData: required: - type type: object properties: type: type: string discriminator: propertyName: type com.monytyz.billing.quote.model.internal.quoteitem.QuoteItemOptions: required: - displayedPriceIds - fieldValueOverrides - showPrices type: object properties: showPrices: type: boolean displayUnitPriceFrequency: type: integer format: int32 priceDisplayMode: type: string description: Modes for displaying quote prices enum: - ALL_PRICES - USED_PRICES - CUSTOM_PRICES displayedPriceIds: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.data.catalog.PriceId' fieldValueOverrides: uniqueItems: true type: array items: $ref: '#/components/schemas/com.monytyz.billing.catalog.model.FieldValueOverride' com.monytyz.billing.quote.model.QuoteESignContactSnapshotId: type: object com.monytyz.billing.quote.dto.quote.renewal.RenewalContractLength: required: - months - type type: object properties: type: type: string enum: - CONTRACT_LENGTH - FIXED_MONTHS months: type: integer format: int32 com.monytyz.billing.dealroom.dto.DealRoomContent: required: - contentType - key type: object properties: name: type: string key: type: string description: type: string contentType: type: string enum: - TEXT - RICH_TEXT - URL - LIST - ATTACHMENT - REFERENCE_RESOURCE discriminator: propertyName: contentType com.monytyz.billing.data.catalog.PriceId: required: - value type: object properties: value: type: string com.monytyz.billing.catalog.model.Discount: type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: type: string name: type: string description: The name of the discount description: type: string description: The description of this discount discountType: type: string description: The type of discount - fixed or % enum: - FLAT - PERCENTAGE status: type: string description: The status of the discount enum: - ACTIVE - INACTIVE - PENDING - EXPIRED discountCode: type: string description: A code that is user friendly and can be referenced to add this discount quoteId: type: string description: Quote ID if this discount was created as part of a Quote discountAmount: type: number description: The fixed or percentage discount amount currency: type: string description: The fixed discount currency enum: - AUD - BYN - CAD - CNY - DKK - EUR - GBP - INR - ISK - MYR - NOK - SEK - SGD - TWD - USD durationType: type: string description: The type of discount duration enum: - ONE_TIME - UNLIMITED - LIMITED durationMonths: type: integer description: The number of months this discount should last if this discount type is Limited format: int32 maxUses: type: integer description: The maximum number of times this discount can be applied format: int32 remainingUses: minimum: 0 type: integer description: The remaining number of times this discount can be applied format: int32 startDate: type: string description: The starting date for when this discount can be applied format: date endDate: type: string description: The ending date for when this discount can be applied format: date autoRemove: type: boolean description: If the discount should be removed from all accounts after the end date accountId: type: string description: If this discount should only apply to a certain account scopeProductId: type: string description: If this discount should only apply to a certain product scopeOfferingId: type: string description: If this discount should only apply to a certain offering locked: type: boolean description: This discount is locked from most changes because it has been used by another part of the application lifecyclePolicies: uniqueItems: true type: array items: type: string enum: - EXCLUDE_FROM_RENEWAL com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayConfigurations: required: - configurations type: object properties: configurations: type: array description: Configuration for minimum and maximum payments amounts example: US_BANK_TRANSFER items: $ref: '#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayConfiguration' description: Configuration for minimum and maximum payments amounts com.monytyz.billing.invoice.model.InvoiceItemDiscount: type: object properties: id: type: string invoiceItem: $ref: '#/components/schemas/com.monytyz.billing.invoice.model.InvoiceItem' discountId: type: string description: type: string amount: type: number discountType: type: string description: The type of discount - fixed or % enum: - FLAT - PERCENTAGE com.monytyz.billing.customer.dto.contact.ContactDto: type: object properties: createdBy: type: string description: Identifier for the user who created the record example: usr_X0XZ05bvkrB1RpLS createDate: type: string description: Timestamp of when the record was created format: date-time lastModifiedBy: type: string description: Identifier for the user who last modified the record example: usr_X0XZ05bvkrB1RpLS modifyDate: type: string description: Timestamp of when the record was last modified format: date-time id: type: string description: A unique identifier for the contact example: cntct_8P9ijCslTprCI7Wu customId: type: string description: A user provided identifier for the contact example: c993f52b-0bbd-454b-9849-fd6c1991efb6 accountId: type: string description: Account ID where the contact belongs example: acct_m0CB9LflojZxytfC address: $ref: '#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto' status: type: string description: Status of the contact. Status can be ACTIVE, CANCELED or ARCHIVED example: ACTIVE enum: - ACTIVE - CANCELED - ARCHIVED fullName: type: string description: Full name of the contact example: Bob Smith email: type: string description: Email of the contact example: contact@example.com phone: type: string description: Phone of the contact example: +1 800 444 4444 title: type: string description: Title of the contact example: CFO internal: type: boolean description: Boolean value indicating if the contact is internal or external which is used for e-Signing example: false primary: type: boolean description: Boolean value indicating if the contact is primary or not example: true defaultESigner: type: boolean description: Boolean value indicating if the contact is default eSigner example: false customFields: type: object additionalProperties: type: object description: User configured custom fields for the contact description: User configured custom fields for the contact esigner: type: boolean description: Primary contact information for this account com.monytyz.billing.quote.model.QuoteESignContactSnapshot: type: object properties: id: $ref: '#/components/schemas/com.monytyz.billing.quote.model.QuoteESignContactSnapshotId' contactSnapshot: $ref: '#/components/schemas/com.monytyz.billing.customer.model.ContactSnapshot' quote: $ref: '#/components/schemas/com.monytyz.billing.quote.model.Quote' role: type: string enum: - PRIMARY_SIGNER - SECONDARY_SIGNER - CARBON_COPY com.monytyz.billing.quote.model.QuoteNote: type: object properties: createdBy: type: string createDate: type: string format: date-time lastModifiedBy: type: string modifyDate: type: string format: date-time id: type: string quoteId: type: string description: Notes for this Quote