{
"openapi": "3.0.3",
"info": {
"title": "OpenAPI definition",
"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."
},
{
"name": "BillGroup",
"description": "Billgroup is an object that allows you to group subscriptions. An account can have multiple bill groups representing different departments, people or groups under the account. The bill group is where the payment method and dunning method is linked."
},
{
"name": "Contact",
"description": "Contacts represent individual, address, and company deatils for your customers."
},
{
"name": "Credit",
"description": "Credits can be used to adjust account balances."
},
{
"name": "Invoice",
"description": "An invoice is an itemized commercial document that records the products or services delivered to the customer, the total amount due, and the preferred payment method."
},
{
"name": "Offering",
"description": "Offerings are collections of products that you can sell to customers, they can be subscriptions, one-time, or minimum commit types."
},
{
"name": "Payment",
"description": "Payment is an object that represents an amount paid to an invoice."
},
{
"name": "Payment Gateway",
"description": "Payment gateway is a service that helps customer transfer money to pay for invoices."
},
{
"name": "PaymentMethod",
"description": "Payment methods are entities representing the instrument used to collect payments for invoices on a bill group. This can be Credit Cards, Direct Debit, ACH Credit etc."
},
{
"name": "Products",
"description": "A product is an item that a business sells to its customers."
},
{
"name": "Rate",
"description": "Rates allow you to add prices, pricing logic, currency details, and billing frequency to an offering"
},
{
"name": "Subscription",
"description": "Subscriptions are things your customers have been sold or signed up for that can be billed on a recurring basis."
},
{
"name": "Usage",
"description": "APIs to record, update and query usage events"
}
],
"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}/accountDocuments": {
"post": {
"tags": [
"AccountDocument"
],
"operationId": "createAccountDocuments",
"parameters": [
{
"name": "accountId",
"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": {
"multipart/form-data": {
"schema": {
"required": [
"data",
"file"
],
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentCreateRequest"
},
"file": {
"type": "string",
"format": "binary"
}
}
}
}
}
},
"responses": {
"201": {
"description": "Create account document.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},
"get": {
"tags": [
"AccountDocument"
],
"operationId": "searchAccountDocuments",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "refresrc_BLAZsAN6fowzX"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string",
"example": "Test resource"
}
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string",
"example": "marketing resource description"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "CREATED"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "name"
}
},
{
"name": "currentPage",
"in": "query",
"schema": {
"type": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"example": 10
}
},
{
"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": "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": "Search account documents.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.util.MNPage"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/accountDocuments/{accountDocumentId}": {
"delete": {
"tags": [
"AccountDocument"
],
"operationId": "deleteAccountDocument",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"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": {
"204": {
"description": "Delete account document.",
"content": {
"application/json": {}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},
"get": {
"tags": [
"AccountDocument"
],
"operationId": "getAccountDocument",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"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 account document.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},
"put": {
"tags": [
"AccountDocument"
],
"operationId": "updateAccountDocument",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"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": {
"multipart/form-data": {
"schema": {
"required": [
"data",
"file"
],
"type": "object",
"properties": {
"data": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentUpdateRequest"
},
"file": {
"type": "string",
"format": "binary"
}
}
}
}
}
},
"responses": {
"200": {
"description": "Update account document.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/accountDocuments/{accountDocumentId}/attachments/{storageId}": {
"get": {
"tags": [
"AccountDocument"
],
"operationId": "downloadAccountDocumentAttachment",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "storageId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "attachContent",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
},
{
"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": "Download account document's attachment.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/accountDocuments/{accountDocumentId}/contacts": {
"put": {
"tags": [
"AccountDocument"
],
"operationId": "updateAccountDocumentContacts",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"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.v2.dto.AccountDocumentContactUpdateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update account document's esign contacts.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/accountDocuments/{accountDocumentId}/draft": {
"post": {
"tags": [
"AccountDocument"
],
"operationId": "draftAccountDocument",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"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": "Move an account document to Draft state.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/accountDocuments/{accountDocumentId}/send": {
"post": {
"tags": [
"AccountDocument"
],
"operationId": "sendForSigning",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"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": "Send account document for signing.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/accountDocuments/{accountDocumentId}/signerStats": {
"get": {
"tags": [
"AccountDocument"
],
"operationId": "getSignerStats",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "accountDocumentId",
"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 signer stats of account document.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.esign.dto.ESignRecipientResponse"
}
}
}
},
"404": {
"description": "Account not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/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}/billGroups": {
"get": {
"tags": [
"BillGroup"
],
"summary": "Get billgroups for an account",
"description": "Get all of the billgroups for an account with account id",
"operationId": "getAllBillGroups_1",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "addressSource",
"in": "query",
"schema": {
"type": "string",
"example": "ACCOUNT"
}
},
{
"name": "billDay",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "billingContactId",
"in": "query",
"schema": {
"type": "string",
"example": "cntct_QEPqCDqeaVte5WzM"
}
},
{
"name": "collectInvoiceBalanceAutomatically",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "createDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "currency",
"in": "query",
"schema": {
"type": "string",
"example": "USD"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "dunningProcessId",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "dunningStepId",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
}
},
{
"name": "invoiceDelay",
"in": "query",
"schema": {
"type": "integer",
"example": 2
}
},
{
"name": "invoicingFrequency",
"in": "query",
"schema": {
"type": "string",
"example": "Monthly"
}
},
{
"name": "invoicingFrequencyInMonths",
"in": "query",
"schema": {
"type": "integer",
"example": 1
}
},
{
"name": "legalEntityId",
"in": "query",
"schema": {
"type": "string",
"example": "lgen_cf77b4252b0e4"
}
},
{
"name": "locked",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "modifyDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string",
"example": "Netflix Bill Group"
}
},
{
"name": "netTerms",
"in": "query",
"schema": {
"type": "string",
"example": "NET_30"
}
},
{
"name": "nextInvoiceDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "purchaseOrderNumber",
"in": "query",
"schema": {
"type": "string",
"example": "PO 12345"
}
},
{
"name": "registrationNumber",
"in": "query",
"schema": {
"type": "string",
"example": 12345
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "name"
}
},
{
"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.billgroup.BillGroupBillGroupListDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}": {
"get": {
"tags": [
"BillGroup"
],
"summary": "Get a single billgroup",
"description": "Get a single billgroup information by id",
"operationId": "getBillGroup_1",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"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 bill group by account Id and billgroup Id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"put": {
"tags": [
"BillGroup"
],
"summary": "Update a billgroup",
"description": "Update a billgroup which holds the billing information for a quote in a specific account",
"operationId": "updateBillGroup",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"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.billgroup.BillGroupSaveDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update object by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/activate": {
"put": {
"tags": [
"BillGroup"
],
"summary": "Activate a billgroup",
"description": "Activate a billgroup",
"operationId": "activateBillGroup",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"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": "Activate bill group",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/contacts": {
"post": {
"tags": [
"Contact"
],
"summary": "Create bill group contact",
"description": "Create bill group contact",
"operationId": "createBillGroupContact",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"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.contact.ContactSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/contacts/{contactId}": {
"put": {
"tags": [
"Contact"
],
"summary": "Update bill group contact",
"description": "Update bill group contact details",
"operationId": "updateBillGroupContact",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"name": "contactId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "cntct_HcDS5ya4Fpsi5Wky"
},
"example": "cntct_HcDS5ya4Fpsi5Wky"
},
{
"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": "Update object by id"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/credits": {
"post": {
"tags": [
"Credit"
],
"summary": "Create a credit",
"description": "Create a credit which can be used to adjust account balance",
"operationId": "createCredit",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"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.credit.dto.credit.CreditSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Credit saved successfully.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.credit.dto.credit.CreditDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/credits/{creditId}": {
"put": {
"tags": [
"Credit"
],
"summary": "Update a credit",
"description": "Update a credit which can be used to adjust account balance",
"operationId": "updateCredit",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"name": "creditId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crdt_3oUtURRnJJ8Afdw0"
},
"example": "crdt_3oUtURRnJJ8Afdw0"
},
{
"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.credit.dto.credit.CreditSaveDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update credit",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.credit.dto.credit.CreditDetailDto"
}
}
}
},
"404": {
"description": "Credit not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/deactivate": {
"put": {
"tags": [
"BillGroup"
],
"summary": "Deactivate a billgroup",
"description": "Deactivate a billgroup",
"operationId": "deactivateBillGroup",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"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": "Deactivate bill group",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/invoices": {
"get": {
"tags": [
"Invoice"
],
"summary": "Get Invoices By Account ID and BillGroup id",
"description": "Get Invoices for an account and billgroup by associated account id and billgroup id",
"operationId": "getInvoiceByAccountAndBillGroup",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"name": "currentPage",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int32",
"default": 0
}
},
{
"name": "pageSize",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"format": "int32",
"default": 10
}
},
{
"name": "sort",
"in": "query",
"required": false,
"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 list with search/sort/pagination",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/billGroups/{billGroupId}/invoices/pay": {
"post": {
"tags": [
"Payment"
],
"summary": "Pay all invoices of a bill group",
"description": "Endpoint to pay all invoices of a bill group",
"operationId": "payAllInvoicesByBillGroup",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "billGroupId",
"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": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"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}/contacts": {
"post": {
"tags": [
"Contact"
],
"summary": "Create contact for account",
"description": "Create contact to associate with an account",
"operationId": "createAccountContact",
"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.contact.ContactSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"409": {
"description": "Custom Id already exists"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Contact"
],
"summary": "Get all contacts",
"description": "Get all contacts by account Id",
"operationId": "getAllContactsByAccountId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "cont_CABapaOcqQbmo"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "fullName",
"in": "query",
"schema": {
"type": "string",
"example": "Mr Twist"
}
},
{
"name": "email",
"in": "query",
"schema": {
"type": "string",
"example": "test@mail.com"
}
},
{
"name": "phone",
"in": "query",
"schema": {
"type": "string",
"example": "+12099216581"
}
},
{
"name": "addressId",
"in": "query",
"schema": {
"type": "string",
"example": "addr_snXlpJfqys6nU"
}
},
{
"name": "city",
"in": "query",
"schema": {
"type": "string",
"example": "New York"
}
},
{
"name": "state",
"in": "query",
"schema": {
"type": "string",
"example": "New York"
}
},
{
"name": "country",
"in": "query",
"schema": {
"type": "string",
"example": "US"
}
},
{
"name": "postalCode",
"in": "query",
"schema": {
"type": "string",
"example": 12345
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "showInternal",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "esigner",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "defaultESigner",
"in": "query",
"schema": {
"type": "boolean",
"example": false
}
},
{
"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": 20
}
},
{
"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": "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.contact.ContactListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/contacts/customId/{customId}": {
"get": {
"tags": [
"Contact"
],
"summary": "Get contact",
"description": "Get contact by account Id and account custom Id",
"operationId": "getContactByAccountIdAndCustomId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/contacts/{contactId}": {
"get": {
"tags": [
"Contact"
],
"summary": "Get contact",
"description": "Get contact by account Id and contact Id",
"operationId": "getContactByAccountIdAndId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "contactId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "cntct_QEPqCDqeaVte5WzM"
},
"example": "cntct_QEPqCDqeaVte5WzM"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/contracts": {
"get": {
"tags": [
"Contract"
],
"operationId": "getAllContractsByAccountId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "totalValue",
"in": "query",
"schema": {
"type": "string",
"example": 100000
}
},
{
"name": "currency",
"in": "query",
"schema": {
"type": "string",
"example": "USD"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE",
"enum": [
"ACTIVE",
"CANCELED"
]
}
},
{
"name": "owner",
"in": "query",
"schema": {
"type": "string",
"example": "usr_X0XZ05bvkrB1RpLS"
}
},
{
"name": "team",
"in": "query",
"schema": {
"type": "string",
"example": "team_X0XZ05bvkrB1RpLS"
}
},
{
"name": "endAction",
"in": "query",
"schema": {
"type": "string",
"example": "MANUAL_RENEW",
"enum": [
"MANUAL_RENEW",
"RENEW",
"CANCEL"
]
}
},
{
"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": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "billGroupId",
"in": "query",
"schema": {
"type": "string",
"example": "bilg_LSHGbqpydy83e"
}
},
{
"name": "previousContractId",
"in": "query",
"schema": {
"type": "string",
"example": "ctrct_vZTyL6E56aQmgjkx"
}
},
{
"name": "renewed",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "autoRenewalNoticePeriod",
"in": "query",
"schema": {
"type": "integer",
"example": 10
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "owner"
}
},
{
"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": "Get all contracts by account id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractListDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.util.MNPageCom.monytyz.billing.contract.dto.ContractDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.util.MNPageCom.monytyz.billing.contract.dto.ContractDto"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/creditNotes": {
"get": {
"tags": [
"CreditNote"
],
"operationId": "getAllCreditNotesByAccountId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "crnt_3oUtURRnJJ8Afdw0"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "APPLIED"
}
},
{
"name": "creditId",
"in": "query",
"schema": {
"type": "string",
"example": "crdt_3oUtURRnJJ8Afdw0"
}
},
{
"name": "invoiceId",
"in": "query",
"schema": {
"type": "string",
"example": "invc_3oUtURRnJJ8Afdw0"
}
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string",
"example": "Credit"
}
},
{
"name": "amount",
"in": "query",
"schema": {
"type": "number",
"example": 100
}
},
{
"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": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"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": "Get all the credit notes for an account",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnote.CreditNoteListDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/invoices": {
"get": {
"tags": [
"Invoice"
],
"summary": "Get Invoices By Account ID",
"description": "Get Invoices for an account by associated account id",
"operationId": "getInvoiceByAccount",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "invce_3oUtURRnJJ8Afdw0"
}
},
{
"name": "accountName",
"in": "query",
"schema": {
"type": "string",
"example": "Contoso Ltd"
}
},
{
"name": "amount",
"in": "query",
"schema": {
"type": "number",
"example": 100.5
}
},
{
"name": "amountCredited",
"in": "query",
"schema": {
"type": "number",
"example": 100.5
}
},
{
"name": "amountDue",
"in": "query",
"schema": {
"type": "number",
"example": 100.5
}
},
{
"name": "amountWithoutTax",
"in": "query",
"schema": {
"type": "number",
"example": 100.5
}
},
{
"name": "billDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "billGroupId",
"in": "query",
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
}
},
{
"name": "billingContactId",
"in": "query",
"schema": {
"type": "string",
"example": "cntct_QEPqCDqeaVte5WzM"
}
},
{
"name": "contractId",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "createDate",
"in": "query",
"schema": {
"type": "string",
"example": "023-07-28T06:01:22.684+0000"
}
},
{
"name": "currency",
"in": "query",
"schema": {
"type": "string",
"example": "USD"
}
},
{
"name": "dueDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "invoicingDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "legalEntityId",
"in": "query",
"schema": {
"type": "string",
"example": "lgen_e33f05749111f"
}
},
{
"name": "modifyDate",
"in": "query",
"schema": {
"type": "string",
"example": "023-07-28T06:01:22.684+0000"
}
},
{
"name": "netTerms",
"in": "query",
"schema": {
"type": "string",
"example": "NET_0",
"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"
]
}
},
{
"name": "paidDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "shippingContactId",
"in": "query",
"schema": {
"type": "string",
"example": "cntct_QEPqCDqeaVte5WzM"
}
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "PAID",
"enum": [
"DRAFT",
"CANCELED",
"UNPAID",
"PENDING",
"PAID",
"REVERSED"
]
}
},
{
"name": "tax",
"in": "query",
"schema": {
"type": "number",
"example": 100.5
}
},
{
"name": "usageEndDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "usageStartDate",
"in": "query",
"schema": {
"type": "string",
"example": "2024-01-01"
}
},
{
"name": "migrated",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"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 list with search/sort/pagination",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceListDto"
}
}
}
},
"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"
}
}
}
},
"/api/accounts/{accountId}/overview": {
"get": {
"tags": [
"Account Overview"
],
"summary": "Get account overview by account",
"description": "Account overview with billgroup and subscriptions",
"operationId": "accountOverview",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "currency",
"in": "query",
"required": false,
"schema": {
"type": "string",
"example": "USD"
},
"example": "USD"
},
{
"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 Overview",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.overview.AccountOverview"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/paymentGateways/{paymentGatewayId}/gatewayAccount": {
"post": {
"tags": [
"PaymentMethod"
],
"summary": "Create a gateway account",
"description": "Endpoint to create a gateway account for the specified account and gateway",
"operationId": "createGatewayAccount",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "paymentGatewayId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmtgw_EMfbqn56S9h9CweL"
},
"example": "pmtgw_EMfbqn56S9h9CweL"
},
{
"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": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.GatewayAccountDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"PaymentMethod"
],
"summary": "Retrieve a gateway account",
"description": "Endpoint to retrieve a gateway account for the specified account and gateway",
"operationId": "retrieveGatewayAccount",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "paymentGatewayId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmtgw_EMfbqn56S9h9CweL"
},
"example": "pmtgw_EMfbqn56S9h9CweL"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/paymentMethods": {
"post": {
"tags": [
"PaymentMethod"
],
"summary": "Create payment method for an account",
"description": "Endpoint to create payment method for an account. It will verify the token and retrieve payment method from the gateway to create MonetizeNow payment method",
"operationId": "createPaymentMethod",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"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.payment.dto.paymentmethod.PaymentMethodSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"PaymentMethod"
],
"summary": "Retrieve all the payment methods for the account",
"description": "Endpoint to retrieve all the payment methods for the specified account",
"operationId": "retrievePaymentMethodList",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
},
"example": "acct_jgPH8G33rELY6LQa"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "pmtm_HcDS5ya4Fpsi5Wky"
}
},
{
"name": "paymentMethodName",
"in": "query",
"schema": {
"type": "string",
"example": "Visa Payment"
}
},
{
"name": "contactId",
"in": "query",
"schema": {
"type": "string",
"example": "cntct_9TkhFbhZ5oY4q2fw"
}
},
{
"name": "paymentGatewayId",
"in": "query",
"schema": {
"type": "string",
"example": "pmtgw_EMfbqn56S9h9CweL"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "PENDING"
}
},
{
"name": "paymentMethodType",
"in": "query",
"schema": {
"type": "string",
"example": "DIRECT_DEBIT"
}
},
{
"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": 20
}
},
{
"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.payment.dto.paymentmethod.PaymentMethodListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/paymentMethods/import": {
"post": {
"tags": [
"PaymentMethod"
],
"summary": "Import external payment methods for an account",
"description": "Endpoint to import external payment methods for an account",
"operationId": "importPaymentMethod",
"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.payment.dto.paymentmethod.PaymentMethodImportRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Import External PGW Account",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodImportResponse"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/payments": {
"get": {
"tags": [
"Payment"
],
"summary": "Retrieve payments for an invoice",
"description": "Endpoint to retrieve payments for an invoice by account",
"operationId": "retrievePayments",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "paymt_4tNy5UtdAtnSD7Nd"
}
},
{
"name": "collectionDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-13"
}
},
{
"name": "amount",
"in": "query",
"schema": {
"type": "string",
"example": 1000
}
},
{
"name": "paymentStatus",
"in": "query",
"schema": {
"type": "string",
"example": "PENDING"
}
},
{
"name": "paymentType",
"in": "query",
"schema": {
"type": "string",
"example": "Monthly"
}
},
{
"name": "paymentGatewayId",
"in": "query",
"schema": {
"type": "string",
"example": "pmgw_MSCkYBrfDEFN1"
}
},
{
"name": "gatewayCustomerId",
"in": "query",
"schema": {
"type": "string",
"example": "cus_SPMgUFAFNNwMsw"
}
},
{
"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": 20
}
},
{
"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": {
"201": {
"description": "Object list retrieved ",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/payments/invoice/{invoiceId}/pay": {
"post": {
"tags": [
"Payment"
],
"summary": "Pay an invoice",
"description": "Endpoint to pay an invoice",
"operationId": "payInvoice",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "invoiceId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "invce_3oUtURRnJJ8Afdw0"
},
"example": "invce_3oUtURRnJJ8Afdw0"
},
{
"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.payment.dto.payment.ApplyPaymentToInvoiceDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/payments/invoice/{invoiceId}/pay/manual": {
"post": {
"tags": [
"Payment"
],
"summary": "Pay an invoice using manually payment",
"description": "Endpoint to pay an invoice using manually payment",
"operationId": "invoiceManualPayment",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "invoiceId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "invce_3oUtURRnJJ8Afdw0"
},
"example": "invce_3oUtURRnJJ8Afdw0"
},
{
"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.payment.dto.payment.ManualPaymentSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/payments/manual/{paymentId}": {
"put": {
"tags": [
"Payment"
],
"summary": "Update Manual Payment",
"description": "Update reference number, description or payment date of a manual payment",
"operationId": "updateManualPayment",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "paymentId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pymt_xgAOiEhQZWgY2"
},
"example": "pymt_xgAOiEhQZWgY2"
},
{
"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.payment.dto.payment.UpdateManualPaymentDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentDetailDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/payments/{paymentId}": {
"get": {
"tags": [
"Payment"
],
"summary": "Retrieve payment by id",
"description": "Endpoint to retrieve payment by id",
"operationId": "retrievePaymentById",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "paymentId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmt_EMfbqn56S9h9CweL"
},
"example": "pmt_EMfbqn56S9h9CweL"
},
{
"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": {
"201": {
"description": "Get object by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/quotes": {
"get": {
"tags": [
"Quote"
],
"operationId": "getAllQuotesByAccountId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
}
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string",
"example": "Bob's Account"
}
},
{
"name": "accountName",
"in": "query",
"schema": {
"type": "string",
"example": "USW Sales"
}
},
{
"name": "amount",
"in": "query",
"schema": {
"type": "string",
"example": 1000
}
},
{
"name": "discountAmount",
"in": "query",
"schema": {
"type": "string",
"example": 100
}
},
{
"name": "expirationDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "orderId",
"in": "query",
"schema": {
"type": "string",
"example": "order_bkoY6dCoLRblllsJ"
}
},
{
"name": "billGroupId",
"in": "query",
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
}
},
{
"name": "contactEmail",
"in": "query",
"schema": {
"type": "string",
"example": "example@mail.com"
}
},
{
"name": "addressId",
"in": "query",
"schema": {
"type": "string",
"example": "addr_bkoY6dCoLRblllsJ"
}
},
{
"name": "billday",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "type",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "billingContactStatus",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "createdBy",
"in": "query",
"schema": {
"type": "string",
"example": "usr_X0XZ05bvkrB1RpLS"
}
},
{
"name": "owner",
"in": "query",
"schema": {
"type": "string",
"example": "usr_X0XZ05bvkrB1RpLS"
}
},
{
"name": "contractEndDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"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": "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": "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 quote list with pagination",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/subscriptions": {
"get": {
"tags": [
"Subscription"
],
"summary": "Get a list of subscriptions by providing an accountId",
"description": "Get a list of subscriptions by an accountId",
"operationId": "getSubscriptionByAccountId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6"
},
"example": "acct_jgPH8G33rELY6"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "subs_9TkhFbhZ5oY4q"
}
},
{
"name": "billGroupId",
"in": "query",
"schema": {
"type": "string",
"example": "bilg_tDbC2FxuCwQox"
}
},
{
"name": "offeringId",
"in": "query",
"schema": {
"type": "string",
"example": "offr_iJuVJLgQKIFc9"
}
},
{
"name": "rateId",
"in": "query",
"schema": {
"type": "string",
"example": "rate_fvCOerGF0bC8JuV2"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string",
"example": "Netflix Monthly Subscription"
}
},
{
"name": "addOn",
"in": "query",
"schema": {
"type": "string",
"example": "Add On"
}
},
{
"name": "periodStartDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "periodEndDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "prorationDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "billingStatus",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "provisioningStatus",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": 20
}
},
{
"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": "Get a list of subscriptions by an accountId",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/accounts/{accountId}/trials": {
"get": {
"tags": [
"Trial"
],
"operationId": "getTrialsByAccountId",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.data.account.AccountId"
}
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "trl_iJuVJLgQKIFc98RE"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "SUCCEEDED"
}
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2023-07-28T06:01:22.684+0000"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2023-07-28T06:01:22.684+0000"
}
},
{
"name": "endAction",
"in": "query",
"schema": {
"type": "string",
"example": "CANCEL"
}
},
{
"name": "type",
"in": "query",
"schema": {
"type": "string",
"example": "NEW"
}
},
{
"name": "quoteId",
"in": "query",
"schema": {
"type": "string",
"example": "quot_W4Zj6cKgHwoII"
}
},
{
"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": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.util.MNPageCom.monytyz.billing.trial.dto.TrialResponse"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/trials/{trialId}/cancel": {
"post": {
"tags": [
"Trial"
],
"operationId": "cancelTrial",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_afnasdl98RE"
}
},
{
"name": "trialId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "trl_iJuVJLgQKIFc98RE"
}
},
{
"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.trial.dto.CancelTrialRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/accounts/{accountId}/trials/{trialId}/convert": {
"post": {
"tags": [
"Trial"
],
"operationId": "convertTrial",
"parameters": [
{
"name": "accountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_afnasdl98RE"
}
},
{
"name": "trialId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "trl_iJuVJLgQKIFc98RE"
}
},
{
"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.trial.dto.ConvertTrialRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/billGroups/{billGroupId}": {
"get": {
"tags": [
"BillGroup"
],
"summary": "Get a single billgroup",
"description": "Get a single billgroup information by id",
"operationId": "getBillGroup",
"parameters": [
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
},
"example": "billg_tDbC2FxuCwQoxcjm"
},
{
"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 BillGroup by accountId and billGroupId ",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/billGroups/{billGroupId}/invoices/preview": {
"get": {
"tags": [
"Invoice"
],
"summary": "Preview an upcoming invoice",
"description": "Preview an upcoming invoice for a subscription",
"operationId": "previewInvoice",
"parameters": [
{
"name": "Accept",
"in": "header",
"required": false,
"schema": {
"type": "string",
"default": "application/json"
}
},
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "billg_3oUtURRnJJ8Afdw0"
},
"example": "billg_3oUtURRnJJ8Afdw0"
},
{
"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": "Invoice Previewed",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceDto"
}
}
}
},
"204": {
"description": "Processed request successfully, but no invoice was produced"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/billGroups/{billGroupId}/subscriptions": {
"get": {
"tags": [
"Subscription"
],
"summary": "Get a list of subscriptions by providing a billGroupId",
"description": "Get a list of subscriptions by providing a billGroupId",
"operationId": "getAllSubscriptionByBillGroupId",
"parameters": [
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "bilg_tDbC2FxuCwQox"
},
"example": "bilg_tDbC2FxuCwQox"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "subs_9TkhFbhZ5oY4q"
}
},
{
"name": "offeringId",
"in": "query",
"schema": {
"type": "string",
"example": "offr_iJuVJLgQKIFc9"
}
},
{
"name": "rateId",
"in": "query",
"schema": {
"type": "string",
"example": "rate_fvCOerGF0bC8JuV2"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string",
"example": "Netflix Monthly Subscription"
}
},
{
"name": "addOn",
"in": "query",
"schema": {
"type": "string",
"example": "Add On"
}
},
{
"name": "periodStartDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "periodEndDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "prorationDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "billingStatus",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "provisioningStatus",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": 20
}
},
{
"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": "Get a list of subscriptions by providing a billGroupId",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/billGroups/{billGroupId}/subscriptions/{subscriptionId}": {
"get": {
"tags": [
"Subscription"
],
"summary": "Get a list of subscriptions by providing a billGroupId and a subscriptionId",
"description": "Get a list of subscriptions by providing a billGroupId and a subscriptionId",
"operationId": "getSubscriptionByBillGroupIdAndSubscriptionId",
"parameters": [
{
"name": "billGroupId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "bilg_tDbC2FxuCwQox"
},
"example": "bilg_tDbC2FxuCwQox"
},
{
"name": "subscriptionId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "subs_9TkhFbhZ5oY4q"
},
"example": "subs_9TkhFbhZ5oY4q"
},
{
"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 a list of subscriptions by providing a billGroupId and a subscriptionId",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Get object by id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/contacts": {
"post": {
"tags": [
"Contact"
],
"summary": "Create contact",
"description": "Create contact",
"operationId": "createContact",
"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.contact.ContactSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"409": {
"description": "Custom Id already exists"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Contact"
],
"summary": "Get all contacts",
"description": "Get all contacts",
"operationId": "getAllContacts",
"parameters": [
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "fullName",
"in": "query",
"schema": {
"type": "string",
"example": "Mr Twist"
}
},
{
"name": "email",
"in": "query",
"schema": {
"type": "string",
"example": "test@mail.com"
}
},
{
"name": "phone",
"in": "query",
"schema": {
"type": "string",
"example": "+12099216581"
}
},
{
"name": "showInternal",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "esigner",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "defaultESigner",
"in": "query",
"schema": {
"type": "boolean",
"example": false
}
},
{
"name": "primary",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "addressId",
"in": "query",
"schema": {
"type": "string",
"example": "addr_m0CB9LflojZxytfC"
}
},
{
"name": "city",
"in": "query",
"schema": {
"type": "string",
"example": "New York"
}
},
{
"name": "state",
"in": "query",
"schema": {
"type": "string",
"example": "New York"
}
},
{
"name": "country",
"in": "query",
"schema": {
"type": "string",
"example": "US"
}
},
{
"name": "postalCode",
"in": "query",
"schema": {
"type": "string",
"example": 12345
}
},
{
"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": 20
}
},
{
"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": "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.contact.ContactListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/contacts/search": {
"get": {
"tags": [
"Contact"
],
"summary": "Search contact by id, customId, and name",
"description": "Get all contact's that meet the search criteria as a list",
"operationId": "searchContacts",
"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.contact.ContactListDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/contacts/{contactId}": {
"get": {
"tags": [
"Contact"
],
"summary": "Get contact",
"description": "Get contact by contact Id",
"operationId": "getContactByContactId",
"parameters": [
{
"name": "contactId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "cntct_QEPqCDqeaVte5WzM"
},
"example": "cntct_QEPqCDqeaVte5WzM"
},
{
"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 contact by id ",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/contracts": {
"get": {
"tags": [
"Contract"
],
"operationId": "getAllContracts",
"parameters": [
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
}
},
{
"name": "totalValue",
"in": "query",
"schema": {
"type": "string",
"example": 100000
}
},
{
"name": "currency",
"in": "query",
"schema": {
"type": "string",
"example": "USD"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE",
"enum": [
"ACTIVE",
"CANCELED"
]
}
},
{
"name": "owner",
"in": "query",
"schema": {
"type": "string",
"example": "usr_X0XZ05bvkrB1RpLS"
}
},
{
"name": "team",
"in": "query",
"schema": {
"type": "string",
"example": "team_X0XZ05bvkrB1RpLS"
}
},
{
"name": "endAction",
"in": "query",
"schema": {
"type": "string",
"example": "MANUAL_RENEW",
"enum": [
"MANUAL_RENEW",
"RENEW",
"CANCEL"
]
}
},
{
"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": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "billGroupId",
"in": "query",
"schema": {
"type": "string",
"example": "bilg_LSHGbqpydy83e"
}
},
{
"name": "previousContractId",
"in": "query",
"schema": {
"type": "string",
"example": "ctrct_vZTyL6E56aQmgjkx"
}
},
{
"name": "renewed",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "autoRenewalNoticePeriod",
"in": "query",
"schema": {
"type": "integer",
"example": 10
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "owner"
}
},
{
"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": "Get all contracts",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractListDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.util.MNPageCom.monytyz.billing.contract.dto.ContractDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.util.MNPageCom.monytyz.billing.contract.dto.ContractDto"
}
}
}
}
}
}
},
"/api/contracts/{contractId}": {
"get": {
"tags": [
"Contract"
],
"operationId": "getContractById",
"parameters": [
{
"name": "contractId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "ctrct_QEPqCDqeaVte5WzM"
},
"example": "ctrct_QEPqCDqeaVte5WzM"
},
{
"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 contract by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},
"put": {
"tags": [
"Contract"
],
"operationId": "updateContract",
"parameters": [
{
"name": "contractId",
"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.contract.dto.ContractUpdateDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update contract by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDto"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDto"
}
}
}
}
}
}
},
"/api/contracts/{contractId}/amend": {
"post": {
"tags": [
"Contract"
],
"operationId": "amendContract",
"parameters": [
{
"name": "contractId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "amendmentDate",
"in": "query",
"required": false,
"schema": {
"type": "string",
"format": "date"
}
},
{
"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.contract.dto.AmendContractDto"
}
}
}
},
"responses": {
"200": {
"description": "Amend contract by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/contracts/{contractId}/changeOwner/{userId}": {
"post": {
"tags": [
"Contract"
],
"operationId": "changeContractOwner",
"parameters": [
{
"name": "contractId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "ctrct_QEPqCDqeaVte5WzM"
},
"example": "ctrct_QEPqCDqeaVte5WzM"
},
{
"name": "userId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "user_REGwM7fYVn3DkvFa"
},
"example": "user_REGwM7fYVn3DkvFa"
},
{
"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": "Change contract owner",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDetailDto"
}
}
}
},
"403": {
"description": "Not authorized to update contract",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDetailDto"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDetailDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDetailDto"
}
}
}
}
}
}
},
"/api/contracts/{contractId}/renew": {
"post": {
"tags": [
"Contract"
],
"operationId": "renewContract",
"parameters": [
{
"name": "contractId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "ctrct_QEPqCDqeaVte5WzM"
},
"example": "ctrct_QEPqCDqeaVte5WzM"
},
{
"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": {
"oneOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractRenewDto.AutoRenew"
},
{
"$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractRenewDto.ProvisionQuote"
}
]
}
}
}
},
"responses": {
"200": {
"description": "Renew contract by id",
"content": {
"application/json": {
"schema": {
"oneOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.contract.service.RenewContractResponse.NewContract"
},
{
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
]
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/creditNotes/{creditNoteId}": {
"get": {
"tags": [
"CreditNote"
],
"operationId": "getCreditNoteById",
"parameters": [
{
"name": "creditNoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crnt_xpVuUnhoRdlfM7HS"
},
"example": "crnt_xpVuUnhoRdlfM7HS"
},
{
"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 credit note by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnote.CreditNoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"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.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/creditNotes/{creditNoteId}/customFields": {
"put": {
"tags": [
"CreditNote"
],
"summary": "Set Custom Fields for CreditNote By id",
"description": "Set the custom fields for a CreditNote",
"operationId": "setCustomFieldsForCreditNote",
"parameters": [
{
"name": "creditNoteId",
"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": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"required": true
},
"responses": {
"204": {
"description": "Custom fields updated"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Credit note not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/creditNotes/{creditNoteId}/print": {
"get": {
"tags": [
"CreditNote"
],
"operationId": "printCreditNote",
"parameters": [
{
"name": "Accept",
"in": "header",
"required": false,
"schema": {
"type": "string",
"default": "application/pdf"
}
},
{
"name": "creditNoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crnt_xpVuUnhoRdlfM7HS"
},
"example": "crnt_xpVuUnhoRdlfM7HS"
},
{
"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": "Credit Note PDF by ID",
"content": {
"application/pdf": {
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"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.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/creditNotes/{creditNoteId}/void": {
"post": {
"tags": [
"CreditNote"
],
"summary": "Void a credit note by credit note id",
"description": "Void a credit note",
"operationId": "voidCreditNote",
"parameters": [
{
"name": "creditNoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crnt_3oUtURRnJJ8Afdw0"
},
"example": "crnt_3oUtURRnJJ8Afdw0"
},
{
"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.credit.dto.credit.CreditVoidRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Credit note voided"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Credit note not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/credits/{creditId}": {
"get": {
"tags": [
"Credit"
],
"summary": "Get credit by id",
"description": "Get credit by credit id",
"operationId": "getCreditsById",
"parameters": [
{
"name": "creditId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crdt_3oUtURRnJJ8Afdw0"
},
"example": "crdt_3oUtURRnJJ8Afdw0"
},
{
"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 credit by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.credit.dto.credit.CreditDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"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.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/credits/{creditId}/customFields": {
"put": {
"tags": [
"Credit"
],
"summary": "Set Custom Fields For Credit",
"description": "Set Custom Fields For Credit by id",
"operationId": "setCustomFields_1",
"parameters": [
{
"name": "creditId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crdt_3oUtURRnJJ8Afdw0"
},
"example": "crdt_3oUtURRnJJ8Afdw0"
},
{
"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": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"required": true
},
"responses": {
"204": {
"description": "Custom fields updated"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Quote not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/credits/{creditId}/print": {
"get": {
"tags": [
"Credit"
],
"summary": "Get credit in pdf",
"description": "Get credit in pdf by credit id",
"operationId": "getCreditInPdf",
"parameters": [
{
"name": "Accept",
"in": "header",
"required": false,
"schema": {
"type": "string",
"default": "application/pdf"
}
},
{
"name": "creditId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crdt_3oUtURRnJJ8Afdw0"
},
"example": "crdt_3oUtURRnJJ8Afdw0"
},
{
"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": "Credit PDF by ID",
"content": {
"application/pdf": {
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"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.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/credits/{creditId}/void": {
"post": {
"tags": [
"Credit"
],
"summary": "Void a credit by credit id",
"description": "Void a credit",
"operationId": "voidCredit",
"parameters": [
{
"name": "creditId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "crdt_3oUtURRnJJ8Afdw0"
},
"example": "crdt_3oUtURRnJJ8Afdw0"
},
{
"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.credit.dto.credit.CreditVoidRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Credit voided"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Credit not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/invoices/{invoiceId}": {
"get": {
"tags": [
"Invoice"
],
"summary": "Get Invoices By id",
"description": "Get a single invoice by it's id",
"operationId": "getInvoiceById",
"parameters": [
{
"name": "invoiceId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "invce_3oUtURRnJJ8Afdw0"
},
"example": "invce_3oUtURRnJJ8Afdw0"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"put": {
"tags": [
"Invoice"
],
"summary": "Update vat number, purchase order number, registration number, custom fields for invoice",
"description": "Update vat number, purchase order number, registration number, custom fields for invoice",
"operationId": "updateInvoice",
"parameters": [
{
"name": "invoiceId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "invce_ccGOWY81nvqg6xxA"
},
"example": "invce_ccGOWY81nvqg6xxA"
},
{
"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.invoice.dto.InvoiceUpdateDto"
}
}
},
"required": true
},
"responses": {
"204": {
"description": "Update invoice"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Invoice not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/invoices/{invoiceId}/creditNotes": {
"get": {
"tags": [
"CreditNote"
],
"operationId": "getAllCreditNotes",
"parameters": [
{
"name": "invoiceId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "invce_jgPH8G33rELY6LQa"
},
"example": "invce_jgPH8G33rELY6LQa"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "crnt_3oUtURRnJJ8Afdw0"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "APPLIED"
}
},
{
"name": "creditId",
"in": "query",
"schema": {
"type": "string",
"example": "crdt_3oUtURRnJJ8Afdw0"
}
},
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string",
"example": "acct_jgPH8G33rELY6LQa"
}
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string",
"example": "Credit"
}
},
{
"name": "amount",
"in": "query",
"schema": {
"type": "number",
"example": 100
}
},
{
"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": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"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": "Get all the credit notes for this invoice",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnote.CreditNoteListDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
},
"post": {
"tags": [
"CreditNote"
],
"operationId": "saveCreditNote",
"parameters": [
{
"name": "invoiceId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "invce_3oUtURRnJJ8Afdw0"
},
"example": "invce_3oUtURRnJJ8Afdw0"
},
{
"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.credit.dto.creditnote.CreditNoteSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Credit Note saved successfully.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnote.CreditNoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/invoices/{invoiceId}/print": {
"get": {
"tags": [
"Invoice"
],
"summary": "Generate Invoice Pdf",
"description": "Generate a pdf for an invoice",
"operationId": "getInvoicePdf",
"parameters": [
{
"name": "invoiceId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "invce_3oUtURRnJJ8Afdw0"
},
"example": "invce_3oUtURRnJJ8Afdw0"
},
{
"name": "Accept",
"in": "header",
"required": false,
"schema": {
"type": "string",
"default": "application/pdf"
}
},
{
"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": "Invoice PDF by ID",
"content": {
"application/pdf": {
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings": {
"post": {
"tags": [
"Offering"
],
"summary": "Create an Offering",
"description": "Create an offering to define the way products can be sold",
"operationId": "createOffering_1",
"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.catalog.dto.offering.OfferingSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Offering"
],
"summary": "Get all Offerings",
"description": "Get all Offerings as a list.",
"operationId": "getAllOffering",
"parameters": [
{
"name": "showArchived",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string",
"example": "Primary Offering"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "rateId",
"in": "query",
"schema": {
"type": "string",
"example": "rate_fvCOerGF0bC8JuV2"
}
},
{
"name": "productId",
"in": "query",
"schema": {
"type": "string",
"example": "prod_nStU73ZJahgBSxnh"
}
},
{
"name": "discountId",
"in": "query",
"schema": {
"type": "string",
"example": "disc_m0CB9LflojZxytfC"
}
},
{
"name": "accountSpecificRate",
"in": "query",
"schema": {
"type": "boolean",
"example": false
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "name"
}
},
{
"name": "currentPage",
"in": "query",
"schema": {
"type": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"example": 10
}
},
{
"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": "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 list with search/sort/pagination",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingListDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/search": {
"get": {
"tags": [
"Offering"
],
"summary": "Search offerings by id, customId, and name",
"description": "Get all offering's that meet the search criteria as a list",
"operationId": "searchOfferings",
"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/offerings/summary": {
"get": {
"tags": [
"Offering"
],
"summary": "Get all Offerings",
"description": "Get all Offerings as a list.",
"operationId": "getAllOffering_1",
"parameters": [
{
"name": "showArchived",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string",
"example": "Primary Offering"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "rateId",
"in": "query",
"schema": {
"type": "string",
"example": "rate_fvCOerGF0bC8JuV2"
}
},
{
"name": "productId",
"in": "query",
"schema": {
"type": "string",
"example": "prod_nStU73ZJahgBSxnh"
}
},
{
"name": "discountId",
"in": "query",
"schema": {
"type": "string",
"example": "disc_m0CB9LflojZxytfC"
}
},
{
"name": "accountSpecificRate",
"in": "query",
"schema": {
"type": "boolean",
"example": false
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "name"
}
},
{
"name": "currentPage",
"in": "query",
"schema": {
"type": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"example": 10
}
},
{
"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": "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 list with search/sort/pagination",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingListDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}": {
"get": {
"tags": [
"Offering"
],
"summary": "Get an Offering",
"description": "Get an Offering by Offering id",
"operationId": "getOfferingById",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
},
"example": "offer_iJuVJLgQKIFc98RE"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingDetailDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"put": {
"tags": [
"Offering"
],
"summary": "Update an Offering",
"description": "Update an offering to add or remove products. Some fields cannot be udpated if an offering is locked.",
"operationId": "updateOfferingById_1",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
},
"example": "offer_iJuVJLgQKIFc98RE"
},
{
"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.catalog.dto.offering.OfferingSaveDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update object by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/activate": {
"put": {
"tags": [
"Offering"
],
"summary": "Activate an Offering",
"description": "Activate an Offering by id",
"operationId": "activateOfferingById",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
},
"example": "offer_iJuVJLgQKIFc98RE"
},
{
"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": "Offering has been successfully activated.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/archive": {
"post": {
"tags": [
"Offering"
],
"summary": "Archive Offering",
"description": "Archive Offering by id",
"operationId": "offeringArchiveById",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
},
"example": "offer_iJuVJLgQKIFc98RE"
},
{
"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": "Offering has been successfully archived",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/cancel": {
"put": {
"tags": [
"Offering"
],
"summary": "Cancel an Offering",
"description": "Cancelling an by id.",
"operationId": "cancelOfferingById",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
},
"example": "offer_iJuVJLgQKIFc98RE"
},
{
"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": "Offering has been successfully canceled",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/deactivate": {
"put": {
"tags": [
"Offering"
],
"summary": "Deactivate Offering",
"description": "Deactivate Offering by id",
"operationId": "offeringDeactivateById",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_iJuVJLgQKIFc98RE"
},
"example": "offer_iJuVJLgQKIFc98RE"
},
{
"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": "Offering has been successfully deactivated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/rates": {
"post": {
"tags": [
"Rate"
],
"summary": "Create a rate for offering",
"description": "Creates a new Rate that you can use to define pricing and billing frequency for products.",
"operationId": "createRateForOffering",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
},
"example": "offer_FzQSTr9oPD1NXHcd"
},
{
"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": {
"oneOf": [
{
"$ref": "#/components/schemas/RateCreateDataAccount"
},
{
"$ref": "#/components/schemas/RateCreateDataCatalog"
}
]
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Rate"
],
"summary": "Get all the rates for an offering",
"description": "Get all the rate by providing offering Id",
"operationId": "getAllRatesByOfferingId",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
},
"example": "offer_FzQSTr9oPD1NXHcd"
},
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string",
"example": "Premium Rate"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "cix-aXtf-mnw"
}
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-02-01"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-02-01"
}
},
{
"name": "productId",
"in": "query",
"schema": {
"type": "string",
"example": "prod_hQqN4qlz6ZV4R221"
}
},
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string"
},
"example": "acct_hXmqN4FtgzMKjR22"
},
{
"name": "rateType",
"in": "query",
"schema": {
"type": "string",
"example": "catalog"
}
},
{
"name": "parentRateId",
"in": "query",
"schema": {
"type": "string",
"example": "rate_JLVVON0OzUDX2"
}
},
{
"name": "currency",
"in": "query",
"schema": {
"type": "string",
"example": "USD"
}
},
{
"name": "billingFrequency",
"in": "query",
"schema": {
"type": "string",
"example": "MONTHLY"
}
},
{
"name": "billingFrequencyInMonths",
"in": "query",
"schema": {
"type": "number",
"example": 12
}
},
{
"name": "subscriptionTiming",
"in": "query",
"schema": {
"type": "string",
"example": "ADVANCE"
}
},
{
"name": "usageBillingFrequency",
"in": "query",
"schema": {
"type": "string",
"example": "MONTHLY"
}
},
{
"name": "locked",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "name"
}
},
{
"name": "currentPage",
"in": "query",
"schema": {
"type": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"example": 20
}
},
{
"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": "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.catalog.dto.rate.RateListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/rates/{rateId}": {
"delete": {
"tags": [
"Rate"
],
"summary": "Delete rate.",
"description": "Delete rate by providing offering Id and rate Id. This cannot be done on locked rates.",
"operationId": "deleteRateByOfferingIdAndRateId",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
},
"example": "offer_FzQSTr9oPD1NXHcd"
},
{
"name": "rateId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
},
"example": "rate_1p4Z5Upb9Yh4Z"
},
{
"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": "Rate has been successfully deleted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Rate"
],
"summary": "Get a rate object by providing offering and rate Id",
"description": "Get a rate object by providing offering and rate Id",
"operationId": "getRateByOfferingAndRateId",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
},
"example": "offer_FzQSTr9oPD1NXHcd"
},
{
"name": "rateId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
},
"example": "rate_1p4Z5Upb9Yh4Z"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"put": {
"tags": [
"Rate"
],
"summary": "Update a rate for offering",
"description": "Update a rate for offering, some fields will be locked once a rate is in use.",
"operationId": "updateRateForOffering",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
},
"example": "offer_FzQSTr9oPD1NXHcd"
},
{
"name": "rateId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
},
"example": "rate_1p4Z5Upb9Yh4Z"
},
{
"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": {
"oneOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateUpdateData.Account"
},
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateUpdateData.Catalog"
}
]
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update object by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/rates/{rateId}/activate": {
"put": {
"tags": [
"Rate"
],
"summary": "Activate rate",
"description": "Activate rate by providing offering Id and rate Id",
"operationId": "activateRateByOfferingIdAndId",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
},
"example": "offer_FzQSTr9oPD1NXHcd"
},
{
"name": "rateId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
},
"example": "rate_1p4Z5Upb9Yh4Z"
},
{
"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.catalog.dto.rate.RateDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/offerings/{offeringId}/rates/{rateId}/cancel": {
"put": {
"tags": [
"Rate"
],
"summary": "Cancel rate",
"description": "Cancel rate by providing offering Id and rate Id",
"operationId": "cancelRateByOfferingIdAndId",
"parameters": [
{
"name": "offeringId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
},
"example": "offer_FzQSTr9oPD1NXHcd"
},
{
"name": "rateId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
},
"example": "rate_1p4Z5Upb9Yh4Z"
},
{
"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": "Rate has been successfully canceled",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/opportunities": {
"post": {
"tags": [
"Opportunity"
],
"operationId": "createOpportunity",
"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.opportunity.dto.OpportunityCreateDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityResponseDto"
}
}
}
},
"409": {
"description": "Custom Id already exists"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Opportunity"
],
"operationId": "getOpportunities",
"parameters": [
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "owner"
}
},
{
"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": "Get object by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityListDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/opportunities/customId/{customId}": {
"get": {
"tags": [
"Opportunity"
],
"operationId": "getOpportunityByCustomId",
"parameters": [
{
"name": "customId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
},
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityResponseDto"
}
}
}
},
"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/opportunities/{opportunityId}": {
"get": {
"tags": [
"Opportunity"
],
"operationId": "getOpportunity",
"parameters": [
{
"name": "opportunityId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "opp_VDafd3FooHfe"
},
"example": "opp_VDafd3FooHfe"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityResponseDto"
}
}
}
},
"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/opportunities/{opportunityId}/quotes/{quoteId}/link": {
"put": {
"tags": [
"Opportunity"
],
"operationId": "linkOpportunityToQuote",
"parameters": [
{
"name": "opportunityId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "opp_X0XZ05bvkrB1RpLS"
},
"example": "opp_X0XZ05bvkrB1RpLS"
},
{
"name": "quoteId",
"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": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityQuoteLinkResponseDto"
}
}
}
},
"409": {
"description": "Another opportunity has already been linked to this quote."
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/opportunities/{opportunityId}/quotes/{quoteId}/setPrimary": {
"put": {
"tags": [
"Opportunity"
],
"operationId": "setPrimaryQuote",
"parameters": [
{
"name": "opportunityId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "opp_X0XZ05bvkrB1RpLS"
},
"example": "opp_X0XZ05bvkrB1RpLS"
},
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_X0XZ05bvkrB1RpLS"
},
"example": "quote_X0XZ05bvkrB1RpLS"
},
{
"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": "OK",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/paymentGateways": {
"get": {
"tags": [
"Payment Gateway"
],
"summary": "Get payment gateway list",
"description": "Endpoint to retrieve payment gateway list within a tenant.",
"operationId": "getPaymentGatewayList",
"parameters": [
{
"name": "currentPage",
"in": "query",
"required": false,
"schema": {
"type": "string",
"example": 1
},
"example": 1
},
{
"name": "pageSize",
"in": "query",
"required": false,
"schema": {
"type": "string",
"example": 20
},
"example": 20
},
{
"name": "sort",
"in": "query",
"required": false,
"schema": {
"type": "string",
"example": "tenantId"
},
"example": "tenantId"
},
{
"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.payment.dto.paymentgateway.PaymentGatewayListDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/paymentGateways/{paymentGatewayId}/gatewayAccounts/{paymentGatewayAccountId}/setupIntent": {
"post": {
"tags": [
"Payment Gateway"
],
"summary": "Create setup intent",
"description": "Endpoint to create setup intent for the allowed payment methods.",
"operationId": "createSetupIntent",
"parameters": [
{
"name": "paymentGatewayId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmtgw_EMfbqn56S9h9CweL"
},
"example": "pmtgw_EMfbqn56S9h9CweL"
},
{
"name": "paymentGatewayAccountId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
},
"example": "acct_m0CB9LflojZxytfC"
},
{
"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": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.stripe.StripeSetupIntentDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/paymentMethods/{paymentMethodId}": {
"get": {
"tags": [
"PaymentMethod"
],
"summary": "Retrieve a payment method",
"description": "Endpoint to retrieve a payment method",
"operationId": "retrievePaymentMethod",
"parameters": [
{
"name": "paymentMethodId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmtm_GDJKaum7vI9vf9tl"
},
"example": "pmtm_GDJKaum7vI9vf9tl"
},
{
"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 PaymentMethod by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/paymentMethods/{paymentMethodId}/default": {
"put": {
"tags": [
"PaymentMethod"
],
"summary": "Set default payment method",
"description": "Endpoint to specify a payment method as the default",
"operationId": "setDefault",
"parameters": [
{
"name": "paymentMethodId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmtm_4tNy5UtdAtnSD7Nd"
},
"example": "pmtm_4tNy5UtdAtnSD7Nd"
},
{
"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": {
"204": {
"description": "Default Payment Method Changed"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/payments/{paymentId}/print": {
"get": {
"tags": [
"Payment"
],
"operationId": "printPayment_1",
"parameters": [
{
"name": "Accept",
"in": "header",
"required": false,
"schema": {
"type": "string",
"default": "application/pdf"
}
},
{
"name": "paymentId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmt_EMfbqn56S9h9CweL"
},
"example": "pmt_EMfbqn56S9h9CweL"
},
{
"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": "Payment PDF by ID",
"content": {
"application/pdf": {
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"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.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
}
}
}
},
"/api/payments/{paymentId}/refund": {
"post": {
"tags": [
"Payment"
],
"summary": "Refund a payment",
"description": "Endpoint to refund a payment",
"operationId": "paymentRefund_1",
"parameters": [
{
"name": "paymentId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pmt_m0CB9LflojZxytfC"
},
"example": "pmt_m0CB9LflojZxytfC"
},
{
"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.payment.dto.refund.RefundInitiateDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.payment.dto.refund.RefundDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
},
"deprecated": true
}
},
"/api/priceUplift/{priceUpliftConfigurationId}": {
"get": {
"tags": [
"Price Uplift Configuration"
],
"operationId": "getPriceUpliftConfiguration",
"parameters": [
{
"name": "priceUpliftConfigurationId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pucfg_cHCX0TFN79rDgDyg"
},
"example": "pucfg_cHCX0TFN79rDgDyg"
},
{
"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 price uplift configuration by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},
"put": {
"tags": [
"Price Uplift Configuration"
],
"operationId": "updatePriceUpliftConfiguration",
"parameters": [
{
"name": "priceUpliftConfigurationId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "pucfg_cHCX0TFN79rDgDyg"
},
"example": "pucfg_cHCX0TFN79rDgDyg"
},
{
"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": {
"oneOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData.ApplyToAllProducts"
},
{
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData.ProductSpecific"
}
]
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update price uplift configuration by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/products": {
"post": {
"tags": [
"Products"
],
"summary": "Creates a new product",
"description": "Creates a new product given some information",
"operationId": "createProduct",
"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.catalog.dto.product.ProductSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create product",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Products"
],
"summary": "Get all products",
"description": "Get a list of all product",
"operationId": "getAllProduct",
"parameters": [
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "prod_nStU73ZJahgBSxnh"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string",
"example": "Netflix Premium"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "productType",
"in": "query",
"schema": {
"type": "string",
"example": "Software"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "name"
}
},
{
"name": "currentPage",
"in": "query",
"schema": {
"type": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"example": 10
}
},
{
"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": "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": "Product list retrieved ",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductListDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/products/search": {
"get": {
"tags": [
"Products"
],
"summary": "Search products by id, customId, and name",
"description": "Get all product's that meet the search criteria as a list",
"operationId": "searchProducts",
"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.catalog.dto.product.ProductListDto"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/products/{productId}": {
"get": {
"tags": [
"Products"
],
"summary": "Get product by Id",
"description": "Get a particular product by product Id",
"operationId": "getProductById",
"parameters": [
{
"name": "productId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "prod_nStU73ZJahgBSxnh"
},
"example": "prod_nStU73ZJahgBSxnh"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"put": {
"tags": [
"Products"
],
"summary": "Updates a product",
"description": "Updates a product given some information",
"operationId": "updateProduct",
"parameters": [
{
"name": "productId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "prod_nStU73ZJahgBSxnh"
},
"example": "prod_nStU73ZJahgBSxnh"
},
{
"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.catalog.dto.product.ProductSaveDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update product by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/products/{productId}/activate": {
"put": {
"tags": [
"Products"
],
"summary": "Activate product by product Id",
"description": "Change product status to active by product Id",
"operationId": "activateProductById",
"parameters": [
{
"name": "productId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "prod_nStU73ZJahgBSxnh"
},
"example": "prod_nStU73ZJahgBSxnh"
},
{
"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 product by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/products/{productId}/deactivate": {
"put": {
"tags": [
"Products"
],
"summary": "Deactivate product",
"description": "Change product status to deactive by product Id",
"operationId": "deactivateProductById",
"parameters": [
{
"name": "productId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "prod_nStU73ZJahgBSxnh"
},
"example": "prod_nStU73ZJahgBSxnh"
},
{
"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": "Deactivate product",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes": {
"post": {
"tags": [
"Quote"
],
"summary": "Create a new quote",
"description": "Creates a new quote",
"operationId": "createNetNewQuote",
"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.quote.dto.quote.QuoteCreateData"
}
}
}
},
"responses": {
"201": {
"description": "Quote saved successfully.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Quote"
],
"operationId": "getAllQuotes",
"parameters": [
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
}
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string",
"example": "Bob's Account"
}
},
{
"name": "accountName",
"in": "query",
"schema": {
"type": "string",
"example": "USW Sales"
}
},
{
"name": "amount",
"in": "query",
"schema": {
"type": "string",
"example": 1000
}
},
{
"name": "discountAmount",
"in": "query",
"schema": {
"type": "string",
"example": 100
}
},
{
"name": "expirationDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "orderId",
"in": "query",
"schema": {
"type": "string",
"example": "order_HcDS5ya4Fpsi5Wky"
}
},
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string",
"example": "acct_m0CB9LflojZxytfC"
}
},
{
"name": "billGroupId",
"in": "query",
"schema": {
"type": "string",
"example": "billg_tDbC2FxuCwQoxcjm"
}
},
{
"name": "contactEmail",
"in": "query",
"schema": {
"type": "string",
"example": "example@test.com"
}
},
{
"name": "addressId",
"in": "query",
"schema": {
"type": "string",
"example": "addr_bkoY6dCoLRblllsJ"
}
},
{
"name": "billday",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "type",
"in": "query",
"schema": {
"type": "string",
"example": "Monthly"
}
},
{
"name": "acceptedAt",
"in": "query",
"schema": {
"type": "string",
"example": "2023-07-28T06:01:22.684+0000"
}
},
{
"name": "contractId",
"in": "query",
"schema": {
"type": "string",
"example": "ctrct_QEPqCDqeaVte5WzM"
}
},
{
"name": "contractStartDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"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": "billingContactStatus",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "createdBy",
"in": "query",
"schema": {
"type": "string",
"example": "usr_X0XZ05bvkrB1RpLS"
}
},
{
"name": "owner",
"in": "query",
"schema": {
"type": "string",
"example": "usr_X0XZ05bvkrB1RpLS"
}
},
{
"name": "contractEndDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-04-07"
}
},
{
"name": "currency",
"in": "query",
"schema": {
"type": "string",
"example": "USD"
}
},
{
"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": "Get quote list with pagination",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}": {
"delete": {
"tags": [
"Quote"
],
"operationId": "deleteQuoteByQuoteId",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"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": "Delete quote by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Quote"
],
"operationId": "getQuote",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.data.cpq.QuoteId"
}
},
{
"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 quote By id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Resource not found by Id",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},
"put": {
"tags": [
"Quote"
],
"summary": "Updates an existing quote",
"description": "Updates an existing quote",
"operationId": "updateQuote",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"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.quote.dto.quote.QuoteUpdateData"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update quote",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Quote not found"
},
"409": {
"description": "%s: Custom Id (%s) already exists"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/accept": {
"post": {
"tags": [
"Quote"
],
"operationId": "acceptQuote_1",
"parameters": [
{
"name": "quoteId",
"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.quote.dto.quote.QuoteAcceptanceRequest"
}
},
"multipart/form-data": {
"schema": {
"required": [
"metadata",
"signedQuote"
],
"type": "object",
"properties": {
"signedQuote": {
"type": "string",
"format": "binary"
},
"metadata": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteAcceptanceDto"
}
}
}
}
}
},
"responses": {
"200": {
"description": "Quote has been successfully Accepted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/quotes/{quoteId}/addresses": {
"put": {
"tags": [
"Quote"
],
"operationId": "updateAddress",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"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": {
"oneOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.SourcedAddressData.Account"
},
{
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.SourcedAddressData.Contact"
}
]
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update quote's address",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Quote not found",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/quotes/{quoteId}/archive": {
"put": {
"tags": [
"Quote"
],
"operationId": "archiveQuote",
"parameters": [
{
"name": "quoteId",
"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": {
"204": {
"description": "Quote has been successfully archived",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.validate.ArchiveQuoteError.InvalidStatus"
}
}
}
},
"403": {
"description": "Principal unauthorized to archive quote.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Quote not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/quotes/{quoteId}/cancel": {
"post": {
"tags": [
"Quote"
],
"operationId": "cancelQuote",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "reason",
"in": "query",
"required": true,
"schema": {
"type": "string",
"enum": [
"EXPIRED",
"CUSTOMER_DECLINED",
"DUPLICATE",
"BY_USER",
"SUPERSEDED_BY_PROCESSED_QUOTE",
"BY_MIGRATION"
]
}
},
{
"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": "Quote has been successfully canceled",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/quotes/{quoteId}/contacts": {
"get": {
"tags": [
"Quote"
],
"operationId": "getContactsByQuoteId",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"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": "Contacts for the specified quote"
},
"400": {
"description": "Bad Request"
},
"403": {
"description": "Not authorized to view quote"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"put": {
"tags": [
"Quote"
],
"operationId": "setContactsByQuoteId",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"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.quote.dto.quote.QuoteContactsWriteDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Newly updated contacts for the specified quote"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/customFields": {
"put": {
"tags": [
"Quote"
],
"summary": "Set Custom Fields for Quote By id",
"description": "Set the custom fields for an quote",
"operationId": "setCustomFieldsForQuote",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_ccGOWY81nvqg6xxA"
},
"example": "quote_ccGOWY81nvqg6xxA"
},
{
"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": {
"type": "object",
"additionalProperties": {
"type": "object"
}
}
}
},
"required": true
},
"responses": {
"204": {
"description": "Custom fields updated"
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Quote not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/edit": {
"post": {
"tags": [
"Quote"
],
"operationId": "editQuote_1",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"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.quote.dto.quote.QuoteDraftRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Quote ",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/quotes/{quoteId}/opportunity": {
"get": {
"tags": [
"Quote"
],
"operationId": "getOpportunityForQuote",
"parameters": [
{
"name": "quoteId",
"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 a quote's opportunity, if present. When not present, the opportunity returned is null.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.opportunity.QuoteOpportunityDto"
}
}
}
},
"400": {
"description": "Invalid quote ID supplied.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"403": {
"description": "Principal unauthorized to read opportunity of supplied quote.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Quote not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/quotes/{quoteId}/process": {
"post": {
"tags": [
"Quote"
],
"operationId": "processQuote",
"parameters": [
{
"name": "quoteId",
"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": "Quote was successfully processed.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.controller.v2.ProcessedQuoteResponseDto"
}
}
}
},
"400": {
"description": "Quote state is invalid; cannot be processed.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"403": {
"description": "Principal unauthorized to process quote.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"404": {
"description": "Quote not found.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"500": {
"description": "Internal server error. Please contact the support team.",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
}
},
"/api/quotes/{quoteId}/quoteOfferings": {
"post": {
"tags": [
"Quote"
],
"summary": "Creates a quote offering",
"description": "Creates a root or ramp quote offering depending on the request configuration",
"operationId": "saveQuoteOffering",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"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.quote.dto.quoteoffering.QuoteOfferingSaveDto"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Create Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/quoteOfferings/{quoteOfferingId}": {
"delete": {
"tags": [
"Quote"
],
"operationId": "deleteQuoteOffering",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"name": "quoteOfferingId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quoff_yaxpYI9w4AaI2blT"
},
"example": "quoff_yaxpYI9w4AaI2blT"
},
{
"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": "Quote Offering has been successfully deleted",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.common.dto.ResponseDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"get": {
"tags": [
"Quote"
],
"operationId": "getQuoteOffering",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"name": "quoteOfferingId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quoff_yaxpYI9w4AaI2blT"
},
"example": "quoff_yaxpYI9w4AaI2blT"
},
{
"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 quote offering by id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"put": {
"tags": [
"Quote"
],
"summary": "Updates a quote offering",
"description": "Updates an existing root or ramp quote offering",
"operationId": "updateQuoteOffering",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"name": "quoteOfferingId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quoff_yaxpYI9w4AaI2blT"
},
"example": "quoff_yaxpYI9w4AaI2blT"
},
{
"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.quote.dto.quoteoffering.QuoteOfferingSaveDto"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update Object",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingDetailDto"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/quoteOfferings/{quoteOfferingId}/priceUplift": {
"post": {
"tags": [
"Quote"
],
"operationId": "configurePriceUplift",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"name": "quoteOfferingId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quoff_yaxpYI9w4AaI2blT"
},
"example": "quoff_yaxpYI9w4AaI2blT"
},
{
"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": {
"oneOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData.ApplyToAllProducts"
},
{
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData.ProductSpecific"
}
]
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create price uplift configuration",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigDto"
}
}
}
},
"404": {
"description": "Quote Offering not found"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
},
"delete": {
"tags": [
"Quote"
],
"operationId": "removePriceUpliftConfiguration",
"parameters": [
{
"name": "quoteId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quote_cHCX0TFN79rDgDyg"
},
"example": "quote_cHCX0TFN79rDgDyg"
},
{
"name": "quoteOfferingId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "quoff_yaxpYI9w4AaI2blT"
},
"example": "quoff_yaxpYI9w4AaI2blT"
},
{
"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": "Price uplift configuration deleted",
"content": {
"application/json": {}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/retract": {
"post": {
"tags": [
"Quote"
],
"operationId": "retractQuote",
"parameters": [
{
"name": "quoteId",
"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": "Quote has been successfully Retracted"
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/review": {
"post": {
"tags": [
"Quote"
],
"operationId": "reviewQuote",
"parameters": [
{
"name": "quoteId",
"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.quote.dto.quote.QuoteStateTransitionNoteDto"
}
}
}
},
"responses": {
"200": {
"description": "Quote state changed to Review",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/quotes/{quoteId}/send": {
"post": {
"tags": [
"Quote"
],
"operationId": "sendQuote",
"parameters": [
{
"name": "quoteId",
"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": "Quote has been successfully sent",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/rates": {
"get": {
"tags": [
"Rate"
],
"summary": "Get all the rates",
"description": "Get all the rate as list",
"operationId": "getAllRates",
"parameters": [
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string",
"example": "Premium Rate"
}
},
{
"name": "customId",
"in": "query",
"schema": {
"type": "string",
"example": "cix-aXtf-mnw"
}
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-02-01"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2022-02-01"
}
},
{
"name": "offeringId",
"in": "query",
"schema": {
"type": "string",
"example": "offer_FzQSTr9oPD1NXHcd"
}
},
{
"name": "productId",
"in": "query",
"schema": {
"type": "string",
"example": "prod_hQqN4qlz6ZV4R221"
}
},
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string"
},
"example": "acct_hXmqN4FtgzMKjR22"
},
{
"name": "accountSpecific",
"in": "query",
"schema": {
"type": "string",
"example": false
}
},
{
"name": "parentRateId",
"in": "query",
"schema": {
"type": "string",
"example": "rate_JLVVON0OzUDX2"
}
},
{
"name": "currency",
"in": "query",
"schema": {
"type": "string",
"example": "USD"
}
},
{
"name": "billingFrequency",
"in": "query",
"schema": {
"type": "string",
"example": "MONTHLY"
}
},
{
"name": "billingFrequencyInMonths",
"in": "query",
"schema": {
"type": "number",
"example": 12
}
},
{
"name": "subscriptionTiming",
"in": "query",
"schema": {
"type": "string",
"example": "ADVANCE"
}
},
{
"name": "usageBillingFrequency",
"in": "query",
"schema": {
"type": "string",
"example": "MONTHLY"
}
},
{
"name": "locked",
"in": "query",
"schema": {
"type": "boolean",
"example": true
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "ACTIVE"
}
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"example": "name"
}
},
{
"name": "currentPage",
"in": "query",
"schema": {
"type": "number",
"example": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"type": "number",
"example": 20
}
},
{
"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": "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 list with search/sort/pagination",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateListDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/rates/{rateId}": {
"get": {
"tags": [
"Rate"
],
"summary": "Get rate",
"description": "Get rate object by Id",
"operationId": "getRateById",
"parameters": [
{
"name": "rateId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "rate_1p4Z5Upb9Yh4Z"
},
"example": "rate_1p4Z5Upb9Yh4Z"
},
{
"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 id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/subscriptions/{subscriptionId}": {
"get": {
"tags": [
"Subscription"
],
"summary": "Get subscription by Id",
"description": "Get subscription by Id",
"operationId": "getSubscriptionById",
"parameters": [
{
"name": "subscriptionId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"example": "subs_9TkhFbhZ5oY4q"
},
"example": "subs_9TkhFbhZ5oY4q"
},
{
"name": "includeInactiveItems",
"in": "query",
"required": false,
"schema": {
"type": "boolean",
"default": false
}
},
{
"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 subscription by Id",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionDetailDto"
}
}
}
},
"400": {
"description": "Bad Request"
},
"404": {
"description": "Get object by id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/api/trials": {
"post": {
"tags": [
"Trial"
],
"operationId": "createTrial",
"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.trial.dto.CreateTrialRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
}
}
},
"get": {
"tags": [
"Trial"
],
"operationId": "getTrials",
"parameters": [
{
"name": "id",
"in": "query",
"schema": {
"type": "string",
"example": "trl_iJuVJLgQKIFc98RE"
}
},
{
"name": "accountId",
"in": "query",
"schema": {
"type": "string",
"example": "acct_afnasdl98RE"
}
},
{
"name": "status",
"in": "query",
"schema": {
"type": "string",
"example": "SUCCEEDED"
}
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"example": "2023-07-28T06:01:22.684+0000"
}
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"example": "2023-07-28T06:01:22.684+0000"
}
},
{
"name": "endAction",
"in": "query",
"schema": {
"type": "string",
"example": "CANCEL"
}
},
{
"name": "type",
"in": "query",
"schema": {
"type": "string",
"example": "NEW"
}
},
{
"name": "quoteId",
"in": "query",
"schema": {
"type": "string",
"example": "quot_W4Zj6cKgHwoII"
}
},
{
"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": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.util.MNPageCom.monytyz.billing.trial.dto.TrialResponse"
}
}
}
}
}
}
},
"/api/v2/accounts/{accountId}/subscriptions/overview": {
"get": {
"tags": [
"Account Overview"
],
"operationId": "getSubscriptionsOverviewByAccountV2",
"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's Subscriptions Overview v2",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.overview.BillGroupListWithSubscriptionOverviews"
}
}
}
},
"404": {
"description": "Resource not found by Id"
},
"500": {
"description": "Internal server error. Please contact the support team."
}
}
}
},
"/usage/consumption": {
"get": {
"tags": [
"Usage"
],
"summary": "Get usage consumption",
"description": "Returns usage consumption for a given subscription identifier, usage type, aggregation model and time rangeFor reads after updates, we support eventual consistency semantics. For usage events with timestamps less than 45 days old, the eventual consistency is more or less immediate. For events with timestamps greater than 45 days old, the eventual consistency could take upto 6 hours.",
"operationId": "getUsageConsumption",
"parameters": [
{
"name": "subscriptionId",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "Identifier for the Subscription",
"example": "subs_60fPx2PNuVson"
}
},
{
"name": "usageTypeId",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "Identifier for the usage type",
"example": "ustyp_sAufs4nKWzpvyosc"
}
},
{
"name": "usageTypeIds",
"in": "query",
"required": false,
"schema": {
"uniqueItems": true,
"type": "array",
"description": "Identifier(s) for the usage type",
"example": [
"ustyp_sAufs4nKWzpvyosc"
],
"items": {
"type": "string",
"description": "Identifier(s) for the usage type",
"example": "[\"ustyp_sAufs4nKWzpvyosc\"]"
}
}
},
{
"name": "startTime",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "Start date time of the period for which the usage consumption is being requested",
"format": "date-time",
"example": "2021-07-01T00:00:00Z"
}
},
{
"name": "endTime",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "End date time of the period for which the usage consumption is being requested",
"format": "date-time",
"example": "2021-07-31T00:00:00Z"
}
},
{
"name": "aggregationModel",
"in": "query",
"required": false,
"schema": {
"type": "string",
"example": "SUM",
"default": "SUM",
"enum": [
"SUM",
"AVERAGE"
]
}
},
{
"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": "View aggregated usage for a subscription and usage type for a given time period",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UsageQueryResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseDto"
}
}
}
}
}
}
},
"/usage/consumption/perDay/v2": {
"get": {
"tags": [
"Usage"
],
"summary": "Get usage consumption per day",
"description": "Returns usage consumption grouped by date for a given subscription identifier, usage type, aggregation model and time rangeFor reads after updates, we support eventual consistency semantics. For usage events with timestamps less than 45 days old, the eventual consistency is more or less immediate. For events with timestamps greater than 45 days old, the eventual consistency could take upto 6 hours.",
"operationId": "getUsageConsumptionPerDay",
"parameters": [
{
"name": "subscriptionId",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "Identifier for the Subscription",
"example": "subs_60fPx2PNuVson"
}
},
{
"name": "usageTypeId",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "Identifier for the usage type",
"example": "ustyp_sAufs4nKWzpvyosc"
}
},
{
"name": "usageTypeIds",
"in": "query",
"required": false,
"schema": {
"uniqueItems": true,
"type": "array",
"description": "Identifier(s) for the usage type",
"example": [
"ustyp_sAufs4nKWzpvyosc"
],
"items": {
"type": "string",
"description": "Identifier(s) for the usage type",
"example": "[\"ustyp_sAufs4nKWzpvyosc\"]"
}
}
},
{
"name": "startTime",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "Start date time of the period for which the usage consumption is being requested",
"format": "date-time",
"example": "2021-07-01T00:00:00Z"
}
},
{
"name": "endTime",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "End date time of the period for which the usage consumption is being requested",
"format": "date-time",
"example": "2021-07-31T00:00:00Z"
}
},
{
"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": "View aggregated usage grouped by date for a subscription and usage type for a given number of days in the past from today",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UsageHistoryResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseDto"
}
}
}
}
}
}
},
"/usage/events": {
"get": {
"tags": [
"Usage"
],
"summary": "Get usage events",
"description": "Returns usage events for a given subscription identifier, usage type and time rangeFor reads after updates, we support eventual consistency semantics. For usage events with timestamps less than 45 days old, the eventual consistency is more or less immediate. For events with timestamps greater than 45 days old, the eventual consistency could take upto 6 hours.",
"operationId": "getEvents",
"parameters": [
{
"name": "subscriptionId",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "Identifier for the Subscription",
"example": "subs_60fPx2PNuVson"
}
},
{
"name": "usageTypeId",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "Identifier for the usage type",
"example": "ustyp_sAufs4nKWzpvyosc"
}
},
{
"name": "usageTypeIds",
"in": "query",
"required": false,
"schema": {
"uniqueItems": true,
"type": "array",
"description": "Identifier(s) for the usage type",
"example": [
"ustyp_sAufs4nKWzpvyosc"
],
"items": {
"type": "string",
"description": "Identifier(s) for the usage type",
"example": "[\"ustyp_sAufs4nKWzpvyosc\"]"
}
}
},
{
"name": "startTime",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "Start date time of the period for which the usage consumption is being requested",
"format": "date-time",
"example": "2021-07-01T00:00:00Z"
}
},
{
"name": "endTime",
"in": "query",
"required": true,
"schema": {
"type": "string",
"description": "End date time of the period for which the usage consumption is being requested",
"format": "date-time",
"example": "2021-07-31T00:00:00Z"
}
},
{
"name": "pageSize",
"in": "query",
"required": false,
"schema": {
"maximum": 100,
"minimum": 5,
"type": "integer",
"description": "Page size. Default value is 100",
"format": "int32",
"example": 100,
"default": 100
}
},
{
"name": "nextPageToken",
"in": "query",
"required": false,
"schema": {
"type": "string",
"description": "Pagination key containing the information about to record to search after",
"example": "eyJ0aW1lc3RhbXAiOjE2OTE0NTM4MT"
}
},
{
"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 usage events for a given subscription identifier",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EventListDto"
}
}
}
}
}
},
"post": {
"tags": [
"Usage"
],
"summary": "Record usage events",
"description": "This is a batch API that can ingest upto 100 events per request. The API will return success or partial success or failed in the response. For reads after updates,we support eventual consistency semantics. For usage events with timestamps less than 45 days old, the eventual consistency is more or less immediate. For events with timestamps greater than 45 days old, the eventual consistency could take upto 6 hours.",
"operationId": "recordEvents",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventRequest"
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Create usage records for subscriptions.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EventResponse"
}
}
}
},
"400": {
"description": "Invalid payload.",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/EventResponse"
}
}
}
}
},
"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"
}
}
]
}
},
"/usage/events/{id}": {
"put": {
"tags": [
"Usage"
],
"summary": "Update units consumed and/or the rated price",
"description": "Update units consumed and/or rated price for a given event identifier",
"operationId": "editEventUnits",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"description": "Identifier for the usage event",
"example": "evt_60fPx2PNuVson"
}
},
{
"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/UpdateUsageRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Update units consumed for a given event identifier",
"content": {
"application/json": {}
}
},
"404": {
"description": "Usage record could not be found for the given event identifier",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/Unit"
}
}
}
}
}
}
},
"/usage/events/{id}/void": {
"put": {
"tags": [
"Usage"
],
"summary": "Void a usage event",
"description": "Voiding a usage event, essentially sets its unitsConsumed to 0 and the ratedPrice if it exists to 0.0",
"operationId": "voidEvent",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"description": "Identifier for the event",
"example": "a46e0ff2-fc31-11ed-be56"
}
},
{
"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": "Void a usage event",
"content": {
"application/json": {}
}
},
"404": {
"description": "Usage record could not be found for the given event identifier",
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/Unit"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"CompanyInfoSnapshotDtoAddressDto": {
"type": "object",
"properties": {
"line1": {
"type": "string"
},
"line2": {
"type": "string"
},
"city": {
"type": "string"
},
"state": {
"type": "string"
},
"country": {
"type": "string"
},
"postalCode": {
"type": "string"
}
},
"description": "Address of the company"
},
"ContactSnapshotDtoAddressSnapshotDto": {
"type": "object",
"properties": {
"line1": {
"type": "string",
"description": "First line of the address",
"example": "344 Clinton Street"
},
"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": "Address of the contact"
},
"Event": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique identifier for the event"
},
"accountId": {
"type": "string",
"description": "MonetizeNow Identifier for the account associated with the event",
"example": "acct_oypCgzfyTCaWE"
},
"subscriptionId": {
"type": "string",
"description": "MonetizeNow Identifier for the subscription associated with the event",
"example": "subs_lRVTvOpnpXgmv"
},
"usageTypeId": {
"type": "string",
"description": "MonetizeNow Identifier for the usage type associated with the product on which usage is being reported",
"example": "usgt_aqtt2711mr1rz"
},
"unitsConsumed": {
"type": "number",
"description": "Units consumed",
"format": "double",
"example": 100
},
"ratedPrice": {
"type": "number",
"description": "Optional Rated Price for the event. The currency is determined by the Rate used in the subscription.",
"format": "double",
"example": 1
},
"timestamp": {
"type": "string",
"description": "Timestamp of the event",
"format": "date-time",
"example": "2022-01-01T00:00:00Z"
}
}
},
"EventListDto": {
"type": "object",
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Event"
}
},
"totalElements": {
"type": "integer",
"format": "int64"
},
"totalPages": {
"type": "integer",
"format": "int64"
},
"pageable": {
"$ref": "#/components/schemas/Pageable"
}
}
},
"EventRequest": {
"type": "object",
"properties": {
"id": {
"maxLength": 200,
"minLength": 1,
"type": "string",
"description": "User provided Unique identifier for the event"
},
"accountId": {
"maxLength": 50,
"minLength": 1,
"type": "string",
"description": "MonetizeNow Identifier for the account associated with the event",
"example": "acct_oypCgzfyTCaWE"
},
"subscriptionId": {
"maxLength": 50,
"minLength": 1,
"type": "string",
"description": "MonetizeNow Identifier for the subscription associated with the event",
"example": "subs_lRVTvOpnpXgmv"
},
"usageTypeId": {
"maxLength": 50,
"minLength": 1,
"type": "string",
"description": "MonetizeNow Identifier for the usage type associated with the product on which usage is being reported",
"example": "usgt_aqtt2711mr1rz"
},
"unitsConsumed": {
"type": "number",
"description": "Units consumed",
"format": "double",
"example": 100
},
"timestamp": {
"type": "string",
"description": "Timestamp of the event",
"format": "date-time",
"example": "2022-01-01T00:00:00Z"
},
"ratedPrice": {
"type": "number",
"description": "Optional Rated Price for the event. The currency is determined by the Rate used in the subscription.",
"format": "double",
"example": 1
}
},
"description": "Event that failed ingestion"
},
"EventResponse": {
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "Status of the event ingestion",
"example": "PARTIAL",
"enum": [
"SUCCESS",
"PARTIAL",
"FAILED"
]
},
"failedEvents": {
"type": "array",
"description": "List of events that failed ingestion",
"items": {
"$ref": "#/components/schemas/FailedEvent"
}
}
}
},
"FailedEvent": {
"type": "object",
"properties": {
"event": {
"$ref": "#/components/schemas/EventRequest"
},
"reason": {
"type": "string",
"description": "Reason for failure"
}
},
"description": "List of events that failed ingestion"
},
"MNPageable": {
"required": [
"pageNumber",
"pageSize"
],
"type": "object",
"properties": {
"pageNumber": {
"type": "integer",
"format": "int32"
},
"pageSize": {
"type": "integer",
"format": "int32"
}
}
},
"Pageable": {
"type": "object",
"properties": {
"nextPageToken": {
"type": "string"
},
"pageSize": {
"type": "integer",
"format": "int32"
}
}
},
"RateCreateDataAccount": {
"required": [
"accountId",
"name",
"parentRateId",
"prices"
],
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateCreateData"
},
{
"type": "object",
"properties": {
"accountId": {
"type": "string"
},
"parentRateId": {
"type": "string",
"description": "If the rate is an account specific rate, this field identifies the parent rate which the account based rate is derived from",
"example": "rate_JLVVON0OzUDX2"
},
"name": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"description": "Name of the rate. This name of the rate will appear on quotes",
"example": "Annual"
},
"prices": {
"maxItems": 2147483647,
"minItems": 1,
"uniqueItems": true,
"type": "array",
"description": "A list of price tiers applicable to the rate",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.price.PriceSaveDtoV2"
}
},
"billingFrequency": {
"type": "string",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are MONTHLY, QUARTERLY, ANNUALLY",
"enum": [
"DAILY",
"MONTHLY",
"QUARTERLY",
"SEMIANNUALLY",
"ANNUALLY",
"ONETIME",
"CUSTOM"
]
},
"billingFrequencyInMonths": {
"type": "integer",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are between 1 to 60 (months)",
"format": "int32"
}
}
}
]
},
"RateCreateDataCatalog": {
"required": [
"billingFrequency",
"currency",
"name",
"prices",
"quotable",
"revenueChannels",
"status",
"subscriptionTiming"
],
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateCreateData"
},
{
"type": "object",
"properties": {
"customId": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"description": "A user provided identifier for the rate",
"nullable": true
},
"name": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"description": "Name of the rate. This name of the rate will appear on quotes"
},
"description": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"description": "Description of the rate"
},
"status": {
"type": "string",
"description": "Status of the rate. A rate can be ACTIVE, INACTIVE or CANCELED",
"enum": [
"ACTIVE",
"INACTIVE",
"CANCELED"
]
},
"currency": {
"type": "string",
"description": "Represents the currency of the rate. A subscription using this rate will be billed in this currency. Valid values are determined by what is configured in the tenant settings. Check yourtenat settings to see what currencies are available.",
"enum": [
"AUD",
"BYN",
"CAD",
"CNY",
"DKK",
"EUR",
"GBP",
"INR",
"ISK",
"MYR",
"NOK",
"SEK",
"SGD",
"TWD",
"USD"
]
},
"billingFrequency": {
"type": "string",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are MONTHLY, QUARTERLY, ANNUALLY",
"enum": [
"DAILY",
"MONTHLY",
"QUARTERLY",
"SEMIANNUALLY",
"ANNUALLY",
"ONETIME",
"CUSTOM"
]
},
"billingFrequencyInMonths": {
"maximum": 60,
"minimum": 0,
"type": "integer",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are between 1 to 60 (months)",
"format": "int32"
},
"subscriptionTiming": {
"type": "string",
"description": "Defines if you want a subscription to be billed in advance or in arrears",
"example": "ADVANCE",
"enum": [
"ADVANCE",
"ARREARS"
]
},
"usageBillingFrequency": {
"type": "string",
"description": "Represents the billing frequency for Usage procucts in the offering. Currently only MONTHLY frequency is supported",
"enum": [
"MONTHLY",
"QUARTERLY",
"ANNUALLY",
"SEMIANNUALLY"
]
},
"startDate": {
"type": "string",
"description": "A date that determines when the rate will be available for use. If this date is in the future, the rate will not be available for use until the date is reached.",
"format": "date"
},
"endDate": {
"type": "string",
"description": "A date that determines when the rate will no longer be available for use. If this date is in the past, the rate will not be available for quoting or adding to a subscription. Note that this does not mean a subscription or quote with an end dated rate is canceled. It just means that the rate cannot be added newly to a quote or subscription ",
"format": "date"
},
"prices": {
"maxItems": 2147483647,
"minItems": 1,
"uniqueItems": true,
"type": "array",
"description": "A list of price tiers applicable to the rate",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.price.PriceSaveDtoV2"
}
},
"quotable": {
"type": "boolean",
"description": "A boolean field indicating if the rate is quotable or not. A rate is quotable if it can be added to a quote. The rate can still be used in self service flows. This flag applies to onlythe quote flow"
},
"internalDescription": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"description": "Internal description for the rate. This will not be displayed on quotes or invoices"
},
"options": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateOptionsDto"
},
"minCommitConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.mincommit.MinCommitConfigData"
},
"percentOfTotalConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.percentoftotal.PercentOfTotalConfigData"
},
"revenueChannels": {
"uniqueItems": true,
"type": "array",
"description": "Revenue channels that the rate is available to be used within",
"items": {
"type": "string",
"description": "Revenue channels that the rate is available to be used within",
"enum": [
"SELF_SERVICE",
"SALES"
]
}
}
}
}
]
},
"ResponseDto": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"100 CONTINUE",
"101 SWITCHING_PROTOCOLS",
"102 PROCESSING",
"103 CHECKPOINT",
"200 OK",
"201 CREATED",
"202 ACCEPTED",
"203 NON_AUTHORITATIVE_INFORMATION",
"204 NO_CONTENT",
"205 RESET_CONTENT",
"206 PARTIAL_CONTENT",
"207 MULTI_STATUS",
"208 ALREADY_REPORTED",
"226 IM_USED",
"300 MULTIPLE_CHOICES",
"301 MOVED_PERMANENTLY",
"302 FOUND",
"302 MOVED_TEMPORARILY",
"303 SEE_OTHER",
"304 NOT_MODIFIED",
"305 USE_PROXY",
"307 TEMPORARY_REDIRECT",
"308 PERMANENT_REDIRECT",
"400 BAD_REQUEST",
"401 UNAUTHORIZED",
"402 PAYMENT_REQUIRED",
"403 FORBIDDEN",
"404 NOT_FOUND",
"405 METHOD_NOT_ALLOWED",
"406 NOT_ACCEPTABLE",
"407 PROXY_AUTHENTICATION_REQUIRED",
"408 REQUEST_TIMEOUT",
"409 CONFLICT",
"410 GONE",
"411 LENGTH_REQUIRED",
"412 PRECONDITION_FAILED",
"413 PAYLOAD_TOO_LARGE",
"413 REQUEST_ENTITY_TOO_LARGE",
"414 URI_TOO_LONG",
"414 REQUEST_URI_TOO_LONG",
"415 UNSUPPORTED_MEDIA_TYPE",
"416 REQUESTED_RANGE_NOT_SATISFIABLE",
"417 EXPECTATION_FAILED",
"418 I_AM_A_TEAPOT",
"419 INSUFFICIENT_SPACE_ON_RESOURCE",
"420 METHOD_FAILURE",
"421 DESTINATION_LOCKED",
"422 UNPROCESSABLE_ENTITY",
"423 LOCKED",
"424 FAILED_DEPENDENCY",
"425 TOO_EARLY",
"426 UPGRADE_REQUIRED",
"428 PRECONDITION_REQUIRED",
"429 TOO_MANY_REQUESTS",
"431 REQUEST_HEADER_FIELDS_TOO_LARGE",
"451 UNAVAILABLE_FOR_LEGAL_REASONS",
"500 INTERNAL_SERVER_ERROR",
"501 NOT_IMPLEMENTED",
"502 BAD_GATEWAY",
"503 SERVICE_UNAVAILABLE",
"504 GATEWAY_TIMEOUT",
"505 HTTP_VERSION_NOT_SUPPORTED",
"506 VARIANT_ALSO_NEGOTIATES",
"507 INSUFFICIENT_STORAGE",
"508 LOOP_DETECTED",
"509 BANDWIDTH_LIMIT_EXCEEDED",
"510 NOT_EXTENDED",
"511 NETWORK_AUTHENTICATION_REQUIRED"
]
},
"message": {
"type": "string"
}
}
},
"Unit": {
"type": "object"
},
"UpdateUsageRequest": {
"type": "object",
"properties": {
"unitsConsumed": {
"type": "number",
"description": "Updated units consumed for the event",
"format": "double",
"example": 100
},
"ratedPrice": {
"type": "number",
"description": "Optionally update rated Price for the event",
"format": "double",
"example": 1
}
}
},
"UsageHistoryResponse": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Date corresponding to the aggregated unitsConsumed",
"format": "date",
"example": "2022-01-01"
},
"unitsConsumed": {
"type": "number",
"description": "Total unrated unitsConsumed for the given date",
"format": "double",
"example": 100
}
}
},
"UsageQueryResponse": {
"type": "object",
"properties": {
"unitsConsumed": {
"type": "number",
"description": "Total Un-rated Units consumed for the requested period",
"format": "double",
"example": 100
},
"ratedUnitsConsumed": {
"type": "number",
"description": "Total Rated Units consumed for the requested period",
"format": "double",
"example": 20
},
"totalRatedPrice": {
"type": "number",
"description": "Total Rated Price for the requested period",
"format": "double",
"example": 1
}
}
},
"com.monytyz.billing.catalog.dto.customprice.CustomPriceDto": {
"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",
"example": "cstm_9TkhFbhZ5oY4q2fw"
},
"amount": {
"type": "number",
"example": 100000
}
},
"description": "Custom price object associated with the subscription item"
},
"com.monytyz.billing.catalog.dto.customprice.CustomPriceSaveDto": {
"required": [
"unitAmount"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique identifier for the custom price",
"nullable": true
},
"unitAmount": {
"minimum": 0,
"exclusiveMinimum": false,
"type": "number",
"description": "Unit amount per quantity"
}
},
"description": "Custom price for the quote item. Only applicable if the quote item's rate is configured for custom pricing.",
"nullable": true
},
"com.monytyz.billing.catalog.dto.discount.DiscountDto": {
"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 discount",
"example": "disc_TbFRB6xKDHScB"
},
"name": {
"type": "string",
"description": "Name of the discount",
"example": "Early payment flat discount"
},
"description": {
"type": "string",
"description": "Description of the discount",
"example": "Discount for early payment"
},
"discountType": {
"type": "string",
"description": "Type of discount. Valid values are PERCENTAGE, FLAT",
"example": "FLAT",
"enum": [
"FLAT",
"PERCENTAGE"
]
},
"status": {
"type": "string",
"description": "Status of the discount. Valid values are ACTIVE, INACTIVE, PENDING, EXPIRED",
"example": "ACTIVE",
"enum": [
"ACTIVE",
"INACTIVE",
"PENDING",
"EXPIRED"
]
},
"discountCode": {
"type": "string",
"description": "Code for the discount",
"example": "EARLY_PAYMENT"
},
"quoteId": {
"type": "string",
"description": "Associated Quote Id for the discount",
"example": "quot_oKEMgylKzkIWR"
},
"discountAmount": {
"type": "number",
"description": "Amount of the discount",
"example": 100
},
"currency": {
"type": "string",
"description": "Currency of the discount",
"example": "USD",
"enum": [
"AUD",
"BYN",
"CAD",
"CNY",
"DKK",
"EUR",
"GBP",
"INR",
"ISK",
"MYR",
"NOK",
"SEK",
"SGD",
"TWD",
"USD"
]
},
"durationType": {
"type": "string",
"description": "Duration type of the discount. Valid values are ONE_TIME, UNLIMITED, LIMITED",
"example": "ONE_TIME",
"enum": [
"ONE_TIME",
"UNLIMITED",
"LIMITED"
]
},
"durationMonths": {
"type": "integer",
"description": "Duration of the discount",
"format": "int32",
"example": 12
},
"maxUses": {
"type": "integer",
"description": "Maximum number of times the discount can be used",
"format": "int32",
"example": 10
},
"remainingUses": {
"type": "integer",
"description": "Remaining number of times the discount can be used",
"format": "int32",
"example": 5
},
"startDate": {
"type": "string",
"description": "Start date of the discount",
"format": "date",
"example": "2021-01-01"
},
"endDate": {
"type": "string",
"description": "End date of the discount",
"format": "date",
"example": "2021-12-31"
},
"autoRemove": {
"type": "boolean",
"description": "Boolean value indicating if the discount should be removed automatically",
"example": true
},
"accountId": {
"type": "string",
"description": "Account Id for the discount",
"example": "acct_jHhOQjAs87kNj"
},
"scopeProductId": {
"type": "string",
"description": "Product Id for the discount",
"example": "prod_N7oFTpLCwMRCo"
},
"scopeOfferingId": {
"type": "string",
"description": "Offering Id for the discount",
"example": "offr_xO00qdIFuMsQy"
},
"locked": {
"type": "boolean",
"description": "Boolean value indicating if the discount is locked",
"example": false
},
"lifecyclePolicies": {
"uniqueItems": true,
"type": "array",
"description": "List of lifecycle policies for the discount",
"example": [
"EXCLUDE_FROM_xRENEWAL"
],
"items": {
"type": "string",
"description": "List of lifecycle policies for the discount",
"example": "[\"EXCLUDE_FROM_xRENEWAL\"]",
"enum": [
"EXCLUDE_FROM_RENEWAL"
]
}
}
},
"description": "Discount details associated with the subscription"
},
"com.monytyz.billing.catalog.dto.mincommit.MinCommitConfigData": {
"required": [
"type"
],
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"USAGE_PRODUCTS",
"SPECIFIC_USAGE_PRODUCTS"
]
}
},
"description": "If the rate is for a min commit offering, then this configuration will containconfiguration details for the min commit offering",
"discriminator": {
"propertyName": "type"
}
},
"com.monytyz.billing.catalog.dto.offering.OfferingDetailDto": {
"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 of an offering",
"example": "offer_iJuVJLgQKIFc98RE"
},
"customId": {
"type": "string",
"description": "User defined identifier for an offering",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
},
"name": {
"type": "string",
"description": "Display name of the offering"
},
"type": {
"type": "string",
"description": "Type of the offering. Can be SUBSCRIPTION, ONETIME or MIN_COMMIT",
"enum": [
"SUBSCRIPTION",
"ONETIME",
"MIN_COMMIT",
"CUSTOM_PERCENT_OF_TOTAL"
]
},
"description": {
"type": "string",
"description": "Description of the offering",
"example": "Netflix Monthly Offer"
},
"status": {
"type": "string",
"description": "Status of the offering. Can be in any of the state ACTIVE, INACTIVE, CANCELED, PENDING, EXPIRED, ARCHIVED",
"enum": [
"ACTIVE",
"INACTIVE",
"CANCELED",
"PENDING",
"EXPIRED",
"ARCHIVED"
]
},
"startDate": {
"type": "string",
"description": "Defines when the offering will take in effect.",
"format": "date"
},
"endDate": {
"type": "string",
"description": "Defines when an offering will expire",
"format": "date"
},
"products": {
"uniqueItems": true,
"type": "array",
"description": "An offering can have multiple products with multiple rates for each product. When an offering is used in a quote, along with a specified rate from that offering for the quote, it's known as QuoteOffering.",
"deprecated": true,
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductBasicDto"
}
},
"offeringProducts": {
"type": "array",
"description": "An offering can have multiple mandatory or optional products.",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingProductDto"
}
},
"rates": {
"uniqueItems": true,
"type": "array",
"description": "List of rates which are defined for a product, to select from, in a QuoteOffering",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateDto"
}
},
"discounts": {
"uniqueItems": true,
"type": "array",
"description": "List of discounts which are applied for the offering.",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.discount.DiscountDto"
}
},
"locked": {
"type": "boolean",
"description": "Indicates if an offering is locked. Typically it's true when offering is used or referenced in a QuoteOffering."
},
"financeId": {
"type": "string",
"description": "This is income account id from the accounting system"
},
"customFields": {
"type": "object",
"additionalProperties": {
"type": "object",
"description": "User configured custom fields for the offering"
},
"description": "User configured custom fields for the offering"
}
}
},
"com.monytyz.billing.catalog.dto.offering.OfferingDto": {
"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",
"example": "offer_iJuVJLgQKIFc98RE"
},
"customId": {
"type": "string",
"example": "c993f52b-0bbd-454b-9849-fd6c1991efb6"
},
"name": {
"type": "string",
"example": "Netflix"
},
"description": {
"type": "string",
"example": "Premium Subscription"
},
"status": {
"type": "string",
"enum": [
"ACTIVE",
"INACTIVE",
"CANCELED",
"PENDING",
"EXPIRED",
"ARCHIVED"
]
},
"type": {
"type": "string",
"enum": [
"SUBSCRIPTION",
"ONETIME",
"MIN_COMMIT",
"CUSTOM_PERCENT_OF_TOTAL"
]
},
"startDate": {
"type": "string",
"format": "date"
},
"endDate": {
"type": "string",
"format": "date"
},
"locked": {
"type": "boolean"
},
"financeId": {
"type": "string"
}
},
"description": "Offering details associated with the subscription"
},
"com.monytyz.billing.catalog.dto.offering.OfferingListDto": {
"required": [
"content",
"totalElements",
"totalPages"
],
"type": "object",
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingDetailDto"
}
},
"totalElements": {
"type": "integer",
"format": "int64"
},
"totalPages": {
"type": "integer",
"format": "int32"
},
"pageable": {
"$ref": "#/components/schemas/MNPageable"
}
}
},
"com.monytyz.billing.catalog.dto.offering.OfferingProductDto": {
"required": [
"isMandatory",
"position",
"product",
"quantityDisplayType"
],
"type": "object",
"properties": {
"product": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductBasicDto"
},
"isMandatory": {
"type": "boolean"
},
"position": {
"type": "integer",
"format": "int32"
},
"quantityDisplayType": {
"type": "string",
"enum": [
"INPUT",
"DROPDOWN"
]
}
},
"description": "An offering can have multiple mandatory or optional products."
},
"com.monytyz.billing.catalog.dto.offering.OfferingSaveDto": {
"required": [
"name",
"status",
"type"
],
"type": "object",
"properties": {
"customId": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
},
"name": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"example": "Monthly Offering"
},
"description": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"example": "Netflix Monthly Offering"
},
"status": {
"type": "string",
"enum": [
"ACTIVE",
"INACTIVE",
"CANCELED",
"PENDING",
"EXPIRED",
"ARCHIVED"
]
},
"startDate": {
"type": "string",
"format": "date"
},
"endDate": {
"type": "string",
"format": "date"
},
"type": {
"type": "string",
"enum": [
"SUBSCRIPTION",
"ONETIME",
"MIN_COMMIT",
"CUSTOM_PERCENT_OF_TOTAL"
]
},
"productIds": {
"uniqueItems": true,
"type": "array",
"example": [
"prod_REGwM7fYVn3DkvFa",
"prod_AEGwM7fYVnSDkvQS"
],
"items": {
"type": "string",
"example": "[\"prod_REGwM7fYVn3DkvFa\",\"prod_AEGwM7fYVnSDkvQS\"]"
}
},
"financeId": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"description": "This is income account id from the accounting system",
"example": "1234567890"
},
"customFields": {
"type": "object",
"additionalProperties": {
"type": "object",
"description": "User configured custom fields for the offering"
},
"description": "User configured custom fields for the offering"
}
}
},
"com.monytyz.billing.catalog.dto.percentoftotal.PercentOfTotalConfigData": {
"required": [
"type"
],
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"ALL_ELIGIBLE",
"SPECIFIED_PRODUCTS"
]
}
},
"description": "If the rate is for a percent of total offering, then this configuration will contain configuration details for the percent of total offering",
"discriminator": {
"propertyName": "type",
"mapping": {
"ALL_ELIGIBLE": "#/components/schemas/com.monytyz.billing.catalog.dto.percentoftotal.PercentOfTotalConfigData.AllEligible",
"SPECIFIED_PRODUCTS": "#/components/schemas/com.monytyz.billing.catalog.dto.percentoftotal.PercentOfTotalConfigData.SpecifiedProducts"
}
}
},
"com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData": {
"required": [
"type"
],
"type": "object",
"properties": {
"type": {
"type": "string"
}
},
"discriminator": {
"propertyName": "type"
}
},
"com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData.AllProducts": {
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData"
}
]
},
"com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData.UsageProducts": {
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData"
}
]
},
"com.monytyz.billing.catalog.dto.price.PriceDtoV2": {
"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",
"example": "price_REGwM7fYVn3DkvFa"
},
"from": {
"type": "integer",
"format": "int64",
"example": 100
},
"to": {
"type": "integer",
"format": "int64",
"example": 10000
},
"amount": {
"type": "number",
"example": 1000
},
"description": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"example": "Monthly Price"
},
"priceModel": {
"type": "string",
"enum": [
"VOLUME",
"TIERED",
"FLAT",
"CUSTOM",
"PERCENT_OF_TOTAL"
]
},
"product": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.price.PriceProductDto"
}
},
"description": "A list of price tiers applicable to the rate"
},
"com.monytyz.billing.catalog.dto.price.PriceProductDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "prod_REGwM7fYVn3DkvFa"
},
"customId": {
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
},
"financeId": {
"type": "string",
"example": "GL-123"
},
"name": {
"type": "string",
"example": "prod_REGwM7fYVn3DkvFa"
},
"description": {
"type": "string",
"example": "Premium Price"
},
"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.dto.usage.UsageTypeDto"
}
}
}
},
"com.monytyz.billing.catalog.dto.price.PriceSaveDtoV2": {
"required": [
"amount",
"from",
"priceModel"
],
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The product id that this price is associated with"
},
"from": {
"minimum": 0,
"type": "integer",
"description": "The starting value of a given price tier (inclusive)",
"format": "int64"
},
"to": {
"minimum": 0,
"type": "integer",
"description": "The end value of a price tier (inclusive)",
"format": "int64"
},
"amount": {
"minimum": 0,
"exclusiveMinimum": false,
"type": "number",
"description": "The price amount for a given price tier"
},
"description": {
"type": "string",
"description": "An optional description for the price"
},
"priceModel": {
"type": "string",
"description": "The pricing model applicable for the tier. Valid values are FLAT, TIERED, VOLUME. FLAT means that the price is a flat amount. VOLUMES means the the price is for a given unit. TIERED means the price is for a given range of units and the price for all tiers are then added.",
"enum": [
"VOLUME",
"TIERED",
"FLAT",
"CUSTOM",
"PERCENT_OF_TOTAL"
]
}
}
},
"com.monytyz.billing.catalog.dto.price.RangeDto": {
"type": "object",
"properties": {
"min": {
"type": "integer",
"format": "int64"
},
"max": {
"type": "integer",
"format": "int64"
}
}
},
"com.monytyz.billing.catalog.dto.product.ProductBasicDto": {
"required": [
"id",
"locked",
"status"
],
"type": "object",
"properties": {
"id": {
"type": "string"
},
"customId": {
"type": "string"
},
"financeId": {
"type": "string"
},
"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.dto.usage.UsageTypeDto"
}
},
"oneTimePrepaidCreditConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData"
},
"sku": {
"type": "string"
},
"recognitionMethod": {
"type": "string",
"enum": [
"IMMEDIATE",
"EVENLY_MONTHLY_IN_ADVANCE"
]
},
"locked": {
"type": "boolean"
},
"taxItemCode": {
"type": "string"
},
"taxExempt": {
"type": "boolean"
},
"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"
}
}
},
"com.monytyz.billing.catalog.dto.product.ProductDto": {
"required": [
"id"
],
"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 product",
"example": "prod_nStU73ZJahgBSxnh"
},
"customId": {
"type": "string",
"description": "A user provided identifier for the product",
"example": "c993f52b-0bbd-454b-9849-fd6c1991efb6"
},
"financeId": {
"type": "string",
"description": "This is the Income Account ID from the accounting system",
"example": "GL-123"
},
"name": {
"type": "string",
"description": "Name of the product",
"example": "Netflix Premium"
},
"description": {
"type": "string",
"description": "Description of the product",
"example": "Netflix Monthly Premium"
},
"status": {
"type": "string",
"description": "Status of the product, which indicates if the product is ACTIVE or INACTIVE",
"enum": [
"ACTIVE",
"INACTIVE"
]
},
"productType": {
"type": "string",
"description": "Indicates the type of the product, which can be USAGE, ONETIME MIN_COMMIT, ADVANCE, ARREARS, ONETIME_PREPAID_CREDIT etc.",
"enum": [
"ADVANCE",
"ARREARS",
"USAGE",
"ONETIME",
"ONETIME_PREPAID_CREDIT",
"MIN_COMMIT"
]
},
"usageTypes": {
"uniqueItems": true,
"type": "array",
"description": "Definition for the type of usage for usage products. It accepts list of usage types. A usage product can be multiple things. I.E. for ISP connection usage type might be Bandwidth with unit Megabytes, for telephone calls usage type might be time with unit as minutes. ",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.usage.UsageTypeDto"
}
},
"oneTimePrepaidCreditConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData"
},
"sku": {
"type": "string",
"description": "Stock Keeping Unit. Used for identifying a specific stock of a product.",
"example": "UGG-BB-PUR-06"
},
"recognitionMethod": {
"type": "string",
"description": "Recognition method for the product",
"enum": [
"IMMEDIATE",
"EVENLY_MONTHLY_IN_ADVANCE"
]
},
"locked": {
"type": "boolean",
"description": "Indicates if a product is locked or not. When a product is used in offering, it's locked and can not be deleted."
},
"customFields": {
"type": "object",
"additionalProperties": {
"type": "object",
"description": "User configured custom fields for the product"
},
"description": "User configured custom fields for the product"
},
"taxItemCode": {
"type": "string",
"description": "Tax code identifier for the product",
"example": "B13E4D91-B3C9-4847-BB9E-58B925ECF033"
},
"taxExempt": {
"type": "boolean",
"description": "Boolean field to identify if the product is tax-exempt",
"example": false
}
},
"description": "Product details associated with the subscription item"
},
"com.monytyz.billing.catalog.dto.product.ProductListDto": {
"required": [
"content",
"totalElements",
"totalPages"
],
"type": "object",
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto"
}
},
"totalElements": {
"type": "integer",
"format": "int64"
},
"totalPages": {
"type": "integer",
"format": "int32"
},
"pageable": {
"$ref": "#/components/schemas/MNPageable"
}
}
},
"com.monytyz.billing.catalog.dto.product.ProductSaveDto": {
"required": [
"name",
"productType",
"status"
],
"type": "object",
"properties": {
"customId": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483"
},
"financeId": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"example": "GL-123"
},
"name": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"description": "Name for the product",
"example": "Netflix Premium"
},
"description": {
"maxLength": 255,
"minLength": 1,
"type": "string",
"description": "Product description",
"example": "Netflix Monthly Premium"
},
"status": {
"type": "string",
"enum": [
"ACTIVE",
"INACTIVE"
]
},
"productType": {
"type": "string",
"enum": [
"ADVANCE",
"ARREARS",
"USAGE",
"ONETIME",
"ONETIME_PREPAID_CREDIT",
"MIN_COMMIT"
]
},
"usageTypeIds": {
"uniqueItems": true,
"type": "array",
"example": [
"ustyp_3oUtURRnJJ8Afdw0"
],
"items": {
"type": "string",
"example": "[\"ustyp_3oUtURRnJJ8Afdw0\"]"
}
},
"oneTimePrepaidCreditConfig": {
"oneOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData.AllProducts"
},
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData.UsageProducts"
}
]
},
"sku": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"example": "UGG-BB-PUR-06"
},
"recognitionMethod": {
"type": "string",
"example": "EVENLY_MONTHLY_IN_ADVANCE",
"enum": [
"IMMEDIATE",
"EVENLY_MONTHLY_IN_ADVANCE"
]
},
"customFields": {
"type": "object",
"additionalProperties": {
"type": "object"
}
},
"taxItemCode": {
"maxLength": 100,
"minLength": 0,
"type": "string",
"example": "B13E4D91-B3C9-4847-BB9E-58B925ECF033"
},
"taxExempt": {
"type": "boolean",
"example": false
}
}
},
"com.monytyz.billing.catalog.dto.rate.ProductRateOptionsDto": {
"required": [
"aggregationModel",
"productId"
],
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "Identifier for the Usage Product to which the rate option is associated"
},
"aggregationModel": {
"type": "string",
"description": "Aggregation model for the usage product",
"enum": [
"SUM",
"AVERAGE"
]
}
}
},
"com.monytyz.billing.catalog.dto.rate.RateCreateData": {
"required": [
"prices",
"rateType"
],
"type": "object",
"properties": {
"prices": {
"maxItems": 2147483647,
"minItems": 1,
"uniqueItems": true,
"type": "array",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.price.PriceSaveDtoV2"
}
},
"rateType": {
"type": "string"
}
},
"example": {
"name": "Monthly Premium",
"description": "Premium plan for monthly customers",
"status": "ACTIVE",
"currency": "USD",
"billingFrequency": "MONTHLY",
"usageBillingFrequency": null,
"rateType": "CATALOG",
"quotable": true,
"prices": [
{
"productId": "prod_hQqN4qlz6ZV4R221",
"from": 0,
"to": 1000,
"amount": 10,
"priceModel": "VOLUME",
"description": null
},
{
"productId": "prod_hQqN4qlz6ZV4R221",
"from": 1001,
"to": null,
"amount": 8,
"priceModel": "VOLUME",
"description": null
}
],
"subscriptionTiming": "ADVANCE",
"internalDescription": "Premium plan for monthly customers"
},
"discriminator": {
"propertyName": "rateType",
"mapping": {
"CATALOG": "#/components/schemas/RateCreateDataCatalog",
"ACCOUNT": "#/components/schemas/RateCreateDataAccount"
}
}
},
"com.monytyz.billing.catalog.dto.rate.RateDetailDto": {
"required": [
"id"
],
"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 rate"
},
"customId": {
"type": "string",
"description": "A user provided identifier for the rate",
"nullable": true
},
"name": {
"type": "string",
"description": "Name of the rate. This name of the rate will appear on quotes"
},
"description": {
"type": "string",
"description": "Description of the rate"
},
"status": {
"type": "string",
"description": "Status of the rate. A rate can be ACTIVE, INACTIVE or CANCELED",
"enum": [
"ACTIVE",
"INACTIVE",
"CANCELED"
]
},
"currency": {
"type": "string",
"description": "Represents the currency of the rate. A subscription using this rate will be billed in this currency. Valid values are determined by what is configured in the tenant settings. Check yourtenat settings to see what currencies are available.",
"enum": [
"AUD",
"BYN",
"CAD",
"CNY",
"DKK",
"EUR",
"GBP",
"INR",
"ISK",
"MYR",
"NOK",
"SEK",
"SGD",
"TWD",
"USD"
]
},
"billingFrequency": {
"type": "string",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are MONTHLY, QUARTERLY, ANNUALLY",
"enum": [
"DAILY",
"MONTHLY",
"QUARTERLY",
"SEMIANNUALLY",
"ANNUALLY",
"ONETIME",
"CUSTOM"
]
},
"billingFrequencyInMonths": {
"type": "integer",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are between 1 to 60 (months)",
"format": "int32"
},
"subscriptionTiming": {
"type": "string",
"description": "Defines if you want a subscription to be billed in advance or in arrears",
"example": "ADVANCE",
"enum": [
"ADVANCE",
"ARREARS"
]
},
"startDate": {
"type": "string",
"description": "A date that determines when the rate will be available for use. If this date is in the future, the rate will not be available for use until the date is reached.",
"format": "date"
},
"endDate": {
"type": "string",
"description": "A date that determines when the rate will no longer be available for use. If this date is in the past, the rate will not be available for quoting or adding to a subscription. Note that this does not mean a subscription or quote with an end dated rate is canceled. It just means that the rate cannot be added newly to a quote or subscription ",
"format": "date"
},
"accountId": {
"type": "string",
"description": "The identifier for the account that the rate is applicable to"
},
"usageBillingFrequency": {
"type": "string",
"description": "Represents the billing frequency for Usage procucts in the offering. Currently only MONTHLY frequency is supported",
"enum": [
"MONTHLY",
"QUARTERLY",
"ANNUALLY",
"SEMIANNUALLY"
]
},
"locked": {
"type": "boolean",
"description": "A boolean field indicating if the rate is locked or not. A rate is locked if it is currently in use by a subscription or quote"
},
"quotable": {
"type": "boolean",
"description": "A boolean field indicating if the rate is quotable or not. A rate is quotable if it can be added to a quote. The rate can still be used in self service flows. This flag applies to onlythe quote flow"
},
"internalDescription": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"description": "Internal description for the rate. This will not be displayed on quotes or invoices"
},
"options": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateOptionsDto"
},
"minCommitConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.mincommit.MinCommitConfigData"
},
"percentOfTotalConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.percentoftotal.PercentOfTotalConfigData"
},
"offering": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingDto"
},
"prices": {
"type": "array",
"description": "A list of price tiers applicable to the rate",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.price.PriceDtoV2"
}
},
"productPriceRanges": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.price.RangeDto"
}
},
"parentRateId": {
"type": "string",
"description": "If the rate is an account specific rate, this field identifies the parent rate which the account based rate is derived from"
},
"revenueChannels": {
"uniqueItems": true,
"type": "array",
"description": "Revenue channels that the rate is available to be used within",
"items": {
"type": "string",
"description": "Revenue channels that the rate is available to be used within",
"enum": [
"SELF_SERVICE",
"SALES"
]
}
},
"rateType": {
"type": "string",
"description": "Type of the rate. We support 2 types of rates - CATALOG and ACCOUNT. CATALOG is global whereas ACCOUNT is specific to an account"
}
},
"example": {
"createdBy": "usr_9oKqG1KrGADCoPmg",
"createDate": "2023-05-24T17:52:10.977+0000",
"lastModifiedBy": "usr_9oKqG1KrGADCoPmg",
"modifyDate": "2023-05-24T17:52:10.977+0000",
"id": "rate_1p4Z5Upb9Yh4Z",
"customId": null,
"name": "Monthly Premium",
"description": "Premium plan for monthly customers",
"status": "ACTIVE",
"currency": "USD",
"billingFrequency": "MONTHLY",
"subscriptionTiming": "ADVANCE",
"startDate": null,
"endDate": null,
"usageBillingFrequency": null,
"locked": false,
"quotable": true,
"internalDescription": "Premium plan for monthly customers",
"options": null,
"offering": {
"createdBy": "usr_Qhu8GeIXXzEueVoW",
"createDate": "2023-02-24T16:01:53.077+0000",
"lastModifiedBy": "usr_Qhu8GeIXXzEueVoW",
"modifyDate": "2023-02-24T16:02:50.137+0000",
"id": "offer_FzQSTr9oPD1NXHcd",
"customId": null,
"name": "Acme Cloud",
"description": null,
"status": "ACTIVE",
"startDate": "2022-11-01",
"endDate": null
},
"prices": [
{
"createdBy": "usr_9oKqG1KrGADCoPmg",
"createDate": "2023-05-24T17:52:10.995+0000",
"lastModifiedBy": "usr_9oKqG1KrGADCoPmg",
"modifyDate": "2023-05-24T17:52:10.995+0000",
"id": "pric_GH1cSjlWdU3LF",
"from": 0,
"to": 1000,
"amount": 10,
"description": null,
"priceModel": "VOLUME",
"product": {
"id": "prod_hQqN4qlz6ZV4R221",
"customId": null,
"financeId": null,
"name": "Users",
"description": "Product Users",
"status": "ACTIVE",
"productType": "ADVANCE",
"usageType": null
}
},
{
"createdBy": "usr_9oKqG1KrGADCoPmg",
"createDate": "2023-05-24T17:52:10.996+0000",
"lastModifiedBy": "usr_9oKqG1KrGADCoPmg",
"modifyDate": "2023-05-24T17:52:10.996+0000",
"id": "pric_hU2L6ZgJLJqKG",
"from": 1001,
"to": null,
"amount": 8,
"description": null,
"priceModel": "VOLUME",
"product": {
"id": "prod_hQqN4qlz6ZV4R221",
"customId": null,
"financeId": null,
"name": "Users",
"description": "Product Users",
"status": "ACTIVE",
"productType": "ADVANCE",
"usageType": null
}
}
],
"productPriceRanges": {
"prod_hQqN4qlz6ZV4R221": {
"min": 0,
"max": null
}
},
"parentRateId": null,
"rateType": "CATALOG"
}
},
"com.monytyz.billing.catalog.dto.rate.RateDto": {
"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 rate"
},
"customId": {
"type": "string",
"description": "A user provided identifier for the rate"
},
"name": {
"type": "string",
"description": "Name of the rate. This name of the rate will appear on quotes"
},
"description": {
"type": "string",
"description": "Description of the rate"
},
"status": {
"type": "string",
"description": "Status of the rate. A rate can be ACTIVE, INACTIVE or CANCELED",
"enum": [
"ACTIVE",
"INACTIVE",
"CANCELED"
]
},
"currency": {
"type": "string",
"description": "Represents the currency of the rate. A subscription using this rate will be billed in this currency. Valid values are determined by what is configured in the tenant settings. Check yourtenat settings to see what currencies are available.",
"enum": [
"AUD",
"BYN",
"CAD",
"CNY",
"DKK",
"EUR",
"GBP",
"INR",
"ISK",
"MYR",
"NOK",
"SEK",
"SGD",
"TWD",
"USD"
]
},
"billingFrequency": {
"type": "string",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are MONTHLY, QUARTERLY, ANNUALLY",
"enum": [
"DAILY",
"MONTHLY",
"QUARTERLY",
"SEMIANNUALLY",
"ANNUALLY",
"ONETIME",
"CUSTOM"
]
},
"billingFrequencyInMonths": {
"type": "integer",
"description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are between 1 to 60 (months)",
"format": "int32"
},
"subscriptionTiming": {
"type": "string",
"description": "Defines if you want a subscription to be billed in advance or in arrears",
"example": "ADVANCE",
"enum": [
"ADVANCE",
"ARREARS"
]
},
"startDate": {
"type": "string",
"description": "A date that determines when the rate will be available for use. If this date is in the future, the rate will not be available for use until the date is reached.",
"format": "date"
},
"endDate": {
"type": "string",
"description": "A date that determines when the rate will no longer be available for use. If this date is in the past, the rate will not be available for quoting or adding to a subscription. Note that this does not mean a subscription or quote with an end dated rate is canceled. It just means that the rate cannot be added newly to a quote or subscription ",
"format": "date"
},
"accountId": {
"type": "string",
"description": "The identifier for the account that the rate is applicable to"
},
"usageBillingFrequency": {
"type": "string",
"description": "Represents the billing frequency for Usage procucts in the offering. Currently only MONTHLY frequency is supported",
"enum": [
"MONTHLY",
"QUARTERLY",
"ANNUALLY",
"SEMIANNUALLY"
]
},
"locked": {
"type": "boolean",
"description": "A boolean field indicating if the rate is locked or not. A rate is locked if it is currently in use by a subscription or quote"
},
"quotable": {
"type": "boolean",
"description": "A boolean field indicating if the rate is quotable or not. A rate is quotable if it can be added to a quote. The rate can still be used in self service flows. This flag applies to onlythe quote flow"
},
"internalDescription": {
"maxLength": 255,
"minLength": 0,
"type": "string",
"description": "Internal description for the rate. This will not be displayed on quotes or invoices"
},
"parentRateId": {
"type": "string",
"description": "If the rate is an account specific rate, this field identifies the parent rate which the account based rate is derived from"
},
"minCommitConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.mincommit.MinCommitConfigData"
},
"revenueChannel": {
"uniqueItems": true,
"type": "array",
"description": "Revenue channels that the rate is available to be used within",
"items": {
"type": "string",
"description": "Revenue channels that the rate is available to be used within",
"enum": [
"SELF_SERVICE",
"SALES"
]
}
},
"rateType": {
"type": "string",
"description": "Type of the rate. We support 2 types of rates - CATALOG and ACCOUNT. CATALOG is global whereas ACCOUNT is specific to an account"
}
},
"description": "List of rates which are defined for a product, to select from, in a QuoteOffering",
"example": {
"createdBy": "usr_FpHIDOgvHQGwyKjj",
"createDate": "2023-05-23T13:36:39.888+0000",
"lastModifiedBy": "usr_FpHIDOgvHQGwyKjj",
"modifyDate": "2023-05-23T13:36:40.068+0000",
"id": "rate_JfVD8GZwikrfJ",
"customId": null,
"name": "Cheap",
"description": "cheap",
"status": "ACTIVE",
"currency": "USD",
"billingFrequency": "ONETIME",
"startDate": null,
"endDate": null,
"accountName": null,
"usageBillingFrequency": null,
"locked": true,
"quotable": true,
"internalDescription": null,
"parentRateId": null,
"minCommitConfig": null,
"rateType": "CATALOG"
}
},
"com.monytyz.billing.catalog.dto.rate.RateListDto": {
"required": [
"content",
"totalElements",
"totalPages"
],
"type": "object",
"properties": {
"content": {
"type": "array",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateDto"
}
},
"totalElements": {
"type": "integer",
"format": "int64"
},
"totalPages": {
"type": "integer",
"format": "int32"
},
"pageable": {
"$ref": "#/components/schemas/MNPageable"
}
}
},
"com.monytyz.billing.catalog.dto.rate.RateOptionsDto": {
"required": [
"priceDisplay",
"productOptions"
],
"type": "object",
"properties": {
"productOptions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.ProductRateOptionsDto"
}
},
"priceDisplay": {
"type": "string",
"nullable": true,
"enum": [
"PRODUCT",
"OFFERING"
]
}
},
"description": "Rate Options give us the capability to configure per product configuration"
},
"com.monytyz.billing.catalog.dto.rate.RateUpdateData": {
"required": [
"prices",
"rateType"
],
"type": "object",
"properties": {
"prices": {
"maxItems": 2147483647,
"minItems": 1,
"uniqueItems": true,
"type": "array",
"items": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.price.PriceSaveDtoV2"
}
},
"rateType": {
"type": "string"
}
},
"example": {
"id": "rate_1p4Z5Upb9Yh4Z",
"customId": null,
"name": "Monthly Premium",
"description": "Premium plan for monthly customers",
"status": "ACTIVE",
"currency": "USD",
"billingFrequency": "MONTHLY",
"usageBillingFrequency": null,
"startDate": null,
"endDate": null,
"rateType": "CATALOG",
"quotable": true,
"prices": [
{
"productId": "prod_hQqN4qlz6ZV4R221",
"from": 0,
"to": 1000,
"amount": 10,
"priceModel": "VOLUME",
"description": null
},
{
"productId": "prod_hQqN4qlz6ZV4R221",
"from": 1001,
"to": null,
"amount": 9,
"priceModel": "VOLUME",
"description": null
}
],
"subscriptionTiming": "ADVANCE",
"internalDescription": "Premium plan for monthly customers"
},
"discriminator": {
"propertyName": "rateType"
}
},
"com.monytyz.billing.catalog.dto.rate.RateUpdateData.Account": {
"required": [
"prices"
],
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateUpdateData"
}
]
},
"com.monytyz.billing.catalog.dto.rate.RateUpdateData.Catalog": {
"required": [
"billingFrequency",
"currency",
"name",
"prices",
"quotable",
"revenueChannels",
"status",
"subscriptionTiming"
],
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateUpdateData"
},
{
"type": "object",
"properties": {
"customId": {
"maxLength": 255,
"minLength": 0,
"type": "string"
},
"name": {
"maxLength": 255,
"minLength": 1,
"type": "string"
},
"description": {
"maxLength": 255,
"minLength": 0,
"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": {
"maximum": 60,
"minimum": 0,
"type": "integer",
"format": "int32"
},
"subscriptionTiming": {
"type": "string",
"example": "ADVANCE",
"enum": [
"ADVANCE",
"ARREARS"
]
},
"usageBillingFrequency": {
"type": "string",
"enum": [
"MONTHLY",
"QUARTERLY",
"ANNUALLY",
"SEMIANNUALLY"
]
},
"startDate": {
"type": "string",
"format": "date"
},
"endDate": {
"type": "string",
"format": "date"
},
"quotable": {
"type": "boolean"
},
"internalDescription": {
"maxLength": 255,
"minLength": 0,
"type": "string"
},
"options": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.rate.RateOptionsDto"
},
"minCommitConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.mincommit.MinCommitConfigData"
},
"percentOfTotalConfig": {
"$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.percentoftotal.PercentOfTotalConfigData"
},
"revenueChannels": {
"uniqueItems": true,
"type": "array",
"items": {
"type": "string",
"enum": [
"SELF_SERVICE",
"SALES"
]
}
}
}
}
]
},
"com.monytyz.billing.catalog.dto.usage.UsageTypeDto": {
"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 a usage type"
},
"name": {
"type": "string",
"description": "Display name of a usage type"
},
"pluralName": {
"type": "string",
"description": "Name of a usage type in plural form"
},
"description": {
"type": "string",
"description": "Description of a usage type"
},
"unitName": {
"type": "string",
"description": "Unit for the usage. I.E. GB for bandwidth usage"
},
"decimalPlaces": {
"type": "integer",
"description": "Decimal places is used to count fractional precision for a usage unit",
"format": "int32",
"example": 2
},
"status": {
"type": "string",
"description": "Active status for a UsageType. Can be ACTIVE/INACTIVE",
"enum": [
"ACTIVE",
"INACTIVE"
]
}
}
},
"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,
"exclusiveMinimum": false,
"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.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.catalog.model.FieldValueOverride": {
"required": [
"fieldName",
"userGivenValue"
],
"type": "object",
"properties": {
"fieldName": {
"type": "string"
},
"userGivenValue": {
"type": "string"
}
}
},
"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.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.catalog.model.OfferingProductId": {
"required": [
"offeringId",
"productId"
],
"type": "object",
"properties": {
"offeringId": {
"type": "string"
},
"productId": {
"type": "string"
}
}
},
"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,
"exclusiveMinimum": false,
"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.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.catalog.model.ProductRateOptions": {
"required": [
"aggregationModel",
"productId"
],
"type": "object",
"properties": {
"productId": {
"type": "string"
},
"aggregationModel": {
"type": "string",
"enum": [
"SUM",
"AVERAGE"
]
}
}
},
"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.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.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.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,
"exclusiveMinimum": false,
"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.common.dto.ResponseDto": {
"type": "object",
"properties": {
"status": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
}
}
},
"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.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.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.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.contract.dto.AmendContractDto": { "required": [ "customFields", "customId", "description", "opportunity" ], "type": "object", "properties": { "opportunity": { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractOpportunityDto" }, "customId": { "type": "string" }, "description": { "type": "string" }, "customFields": { "type": "object", "additionalProperties": { "type": "object" } } } }, "com.monytyz.billing.contract.dto.ContractDetailDto": { "type": "object", "properties": { "id": { "type": "string", "example": "ctrct_QEPqCDqeaVte5WzM" }, "accountId": { "type": "string", "example": "acct_m0CB9LflojZxytfC" }, "billGroupId": { "type": "string", "example": "billg_tDbC2FxuCwQoxcjm" }, "latestQuoteId": { "type": "string", "example": "quote_cHCX0TFN79rDgDyg" }, "status": { "type": "string", "enum": [ "ACTIVE", "CANCELED", "PENDING", "FINISHED" ] }, "startDate": { "type": "string", "format": "date" }, "endDate": { "type": "string", "format": "date" }, "endAction": { "type": "string", "enum": [ "MANUAL_RENEW", "RENEW", "CANCEL" ] }, "totalValue": { "type": "number", "example": 10000000000 }, "accountName": { "type": "string", "example": "Netflix" }, "modifyDate": { "type": "string", "format": "date-time" }, "quotes": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteBasicDto" } }, "owner": { "type": "string", "example": "usr_X0XZ05bvkrB1RpLS" }, "ownerName": { "type": "string", "example": "John Dew" }, "renewed": { "type": "boolean" }, "currency": { "type": "string", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "previousContractId": { "type": "string" }, "legalEntityId": { "type": "string" }, "contractRenewalTerms": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.renewal.ContractRenewalTermsDto" } } }, "com.monytyz.billing.contract.dto.ContractDto": { "type": "object", "properties": { "id": { "type": "string", "example": "cntct_8P9ijCslTprCI7Wu" }, "accountId": { "type": "string", "example": "acct_m0CB9LflojZxytfC" }, "billGroupId": { "type": "string", "example": "billg_tDbC2FxuCwQoxcjm" }, "latestQuoteId": { "type": "string", "example": "quote_cHCX0TFN79rDgDyg" }, "status": { "type": "string", "enum": [ "ACTIVE", "CANCELED", "PENDING", "FINISHED" ] }, "startDate": { "type": "string", "format": "date" }, "endDate": { "type": "string", "format": "date" }, "endAction": { "type": "string", "enum": [ "MANUAL_RENEW", "RENEW", "CANCEL" ] }, "totalValue": { "type": "number", "example": 100000000 }, "accountName": { "type": "string", "example": "Netflix" }, "modifyDate": { "type": "string", "format": "date-time" }, "owner": { "type": "string", "example": "usr_X0XZ05bvkrB1RpLS" }, "ownerName": { "type": "string", "example": "John Dew" }, "renewed": { "type": "boolean" }, "currency": { "type": "string", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "previousContractId": { "type": "string" }, "legalEntityId": { "type": "string" } } }, "com.monytyz.billing.contract.dto.ContractListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.contract.dto.ContractOpportunityDto": { "required": [ "customId", "id", "name" ], "type": "object", "properties": { "id": { "type": "string", "example": "opp_tnBG9B0Dbwvh" }, "customId": { "type": "string" }, "name": { "type": "string" } } }, "com.monytyz.billing.contract.dto.ContractRenewDto": { "required": [ "contractLength", "includeSubscriptionsAsOfRenewalDate", "mode", "newQuoteType", "opportunity", "renewalDate" ], "type": "object", "properties": { "newQuoteType": { "type": "string", "description": "Types of new quotes", "enum": [ "NET_NEW", "MANUAL_RENEWAL", "EARLY_RENEWAL" ] }, "opportunity": { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractOpportunityDto" }, "contractLength": { "type": "integer", "format": "int32" }, "includeSubscriptionsAsOfRenewalDate": { "type": "boolean" }, "renewalDate": { "type": "string", "format": "date" }, "mode": { "type": "string" } }, "discriminator": { "propertyName": "mode" } }, "com.monytyz.billing.contract.dto.ContractRenewDto.AutoRenew": { "required": [ "contractLength", "includeSubscriptionsAsOfRenewalDate", "newQuoteType", "opportunity", "renewalDate", "renewalMode" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractRenewDto" }, { "type": "object", "properties": { "renewalMode": { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.RenewalMode.AutoRenew" } } } ] }, "com.monytyz.billing.contract.dto.ContractRenewDto.ProvisionQuote": { "required": [ "contractLength", "customFields", "customId", "description", "includeSubscriptionsAsOfRenewalDate", "newQuoteType", "opportunity", "renewalDate", "renewalMode" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractRenewDto" }, { "type": "object", "properties": { "customId": { "type": "string" }, "description": { "type": "string" }, "customFields": { "type": "object", "additionalProperties": { "type": "object" } }, "renewalMode": { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.RenewalMode.ProvisionQuote" } } } ] }, "com.monytyz.billing.contract.dto.ContractUpdateDto": { "type": "object", "properties": { "endAction": { "type": "string", "enum": [ "MANUAL_RENEW", "RENEW", "CANCEL" ] } } }, "com.monytyz.billing.contract.dto.RenewalMode.AutoRenew": { "required": [ "serialized$monytyzBillingPlatform" ], "type": "object", "properties": { "serialized$monytyzBillingPlatform": { "type": "string" } } }, "com.monytyz.billing.contract.dto.RenewalMode.ProvisionQuote": { "required": [ "serialized$monytyzBillingPlatform" ], "type": "object", "properties": { "serialized$monytyzBillingPlatform": { "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.contract.service.RenewContractResponse.NewContract": { "required": [ "canceledQuoteIds", "contract", "processedRenewalQuote" ], "type": "object", "properties": { "contract": { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDto" }, "processedRenewalQuote": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteDetailDto" }, "canceledQuoteIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } } }, "com.monytyz.billing.credit.dto.credit.CreditDetailDto": { "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 Credit", "example": "crdt_CMxSdjFUrzCLqFil" }, "accountId": { "type": "string", "description": "Account id associated with Credit", "example": "acct_m0CB9LflojZxytfC" }, "accountSummary": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSummary" }, "billGroupId": { "type": "string", "description": "Billgroup id associated with Credit", "example": "billg_tDbC2FxuCwQoxcjm" }, "creditNoteId": { "type": "string", "description": "ID for the Note of this credit", "example": "crdnt_mluwn46VyWhERErW" }, "prepaidInvoiceItemId": { "type": "string", "description": "Invoice item id for prepaid invoice", "example": "invce_q0xESEWovN7JvfAe" }, "status": { "type": "string", "description": "Status of the credit. Describes if it can be ACTIVE,INACTIVE,CANCELED or APPLIED", "enum": [ "ACTIVE", "INACTIVE", "VOID", "EXPIRED", "APPLIED" ] }, "type": { "type": "string", "description": "Type of the credit. Can be CREDIT_NOTE,SERVICE,PREPAID", "enum": [ "CREDIT_NOTE", "SERVICE", "PREPAID" ] }, "currency": { "type": "string", "description": "Currency for the credit amount", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "amount": { "type": "number", "description": "Amount which can be applied", "example": 200 }, "amountApplied": { "type": "number", "description": "Amount which was applied", "example": 10 }, "amountRemaining": { "type": "number", "description": "Remaining amount which isn't applied yet", "example": 190 }, "expirationDate": { "type": "string", "description": "Expiration date for this credit", "format": "date" }, "reason": { "type": "string", "description": "Reason why this credit exists/created", "example": "Created from Credit Note (crdnt_D2D8l6KW6Qky6rIz)" }, "name": { "type": "string", "description": "Name of the credit" }, "appliedDate": { "type": "string", "description": "Date when this credit was applied", "format": "date" }, "creditApplications": { "type": "array", "description": "Application(s) of this credit on invoice(s)", "items": { "$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnote.CreditApplicationDto" } }, "applications": { "type": "array", "description": "Application(s) of this credit", "items": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.dto.SourceApplicationSummary" } }, "aggregatedApplications": { "type": "array", "description": "Aggregated application(s) of this credit", "items": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.dto.AggregatedSourceApplicationSummary" } }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "User configured custom fields for the credit" }, "description": "User configured custom fields for the credit" }, "voidReason": { "type": "string", "description": "Reason why this credit was voided." } } }, "com.monytyz.billing.credit.dto.credit.CreditSaveDto": { "type": "object", "properties": { "creditNoteId": { "type": "string", "description": "ID for the Note of this credit", "example": "ctnt_QEPqCDqeaVte5WzM" }, "prepaidInvoiceItemId": { "type": "string", "description": "Invoice item id for prepaid invoice", "example": "ivitm_DHlWk4mIICkQabl0" }, "prepaidProductId": { "type": "string", "description": "Id for prepaid product", "example": "prod_nStU73ZJahgBSxnh" }, "status": { "type": "string", "description": "Status of the credit. Describes if it can be ACTIVE,INACTIVE,CANCELED or APPLIED", "enum": [ "ACTIVE", "INACTIVE", "VOID", "EXPIRED", "APPLIED" ] }, "type": { "type": "string", "description": "Type of the credit. Can be CREDIT_NOTE,SERVICE,PREPAID", "enum": [ "CREDIT_NOTE", "SERVICE", "PREPAID" ] }, "currency": { "type": "string", "description": "Currency for the credit amount", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "amount": { "type": "number", "description": "Amount which can be applied" }, "expirationDate": { "type": "string", "description": "Expiration date for this credit", "format": "date" }, "reason": { "maxLength": 255, "minLength": 0, "type": "string", "description": "Reason why this credit exists/created", "example": "Billing" }, "name": { "type": "string", "description": "Name of the credit" }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "User configured custom fields for the credit" }, "description": "User configured custom fields for the credit" } } }, "com.monytyz.billing.credit.dto.credit.CreditSummary": { "required": [ "amount", "amountApplied", "amountRemaining", "currency", "id", "invoiceApplications", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the Credit" }, "name": { "type": "string", "description": "Name of the credit" }, "type": { "type": "string", "description": "Type of the credit. Can be CREDIT_NOTE,SERVICE,PREPAID", "enum": [ "CREDIT_NOTE", "SERVICE", "PREPAID" ] }, "currency": { "type": "string", "description": "Currency for the credit amount", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "amount": { "type": "number", "description": "Amount which can be applied" }, "amountApplied": { "type": "number", "description": "Amount which was applied" }, "amountRemaining": { "type": "number", "description": "Remaining amount which isn't applied yet" }, "reason": { "type": "string", "description": "Reason why this credit exists/created" }, "status": { "type": "string", "description": "Status of the credit. Describes if it can be ACTIVE,INACTIVE,CANCELED or APPLIED", "enum": [ "ACTIVE", "INACTIVE", "VOID", "EXPIRED", "APPLIED" ] }, "invoiceApplications": { "type": "array", "description": "Application(s) of this credit on invoice(s)", "items": { "$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnote.CreditApplicationDto" } } } }, "com.monytyz.billing.credit.dto.credit.CreditVoidRequest": { "required": [ "reason" ], "type": "object", "properties": { "reason": { "type": "string" } } }, "com.monytyz.billing.credit.dto.creditnote.CreditApplicationDto": { "required": [ "amountApplied", "creditId", "invoiceId" ], "type": "object", "properties": { "invoiceId": { "type": "string", "description": "Unique identifier for the invoice to which credit was fully or partially applied", "example": "invce_q0xESEWovN7JvfAe" }, "creditId": { "type": "string", "description": "Unique identifier for the applied credit", "example": "crdt_CMxSdjFUrzCLqFil" }, "amountApplied": { "type": "number", "description": "Amount of the credit applied to the invoice", "example": 100 } }, "description": "Application(s) of this credit on invoice(s)" }, "com.monytyz.billing.credit.dto.creditnote.CreditNoteDetailDto": { "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", "example": "crnit_ExrDdHVIdnUBus4o" }, "accountId": { "type": "string", "example": "acct_3oUtURRnJJ8Afdw0" }, "accountSummary": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSummary" }, "billGroupId": { "type": "string", "example": "billg_3oUtURRnJJ8Afdw0" }, "currency": { "type": "string", "example": "USD", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "invoiceId": { "type": "string", "example": "invce_3oUtURRnJJ8Afdw0" }, "invoice": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceSummary" }, "creditId": { "type": "string", "example": "crdt_6EZyEuCpD7uB358l" }, "credit": { "$ref": "#/components/schemas/com.monytyz.billing.credit.dto.credit.CreditSummary" }, "description": { "type": "string" }, "type": { "type": "string", "enum": [ "ADJUSTMENT", "WRITE_OFF" ] }, "status": { "type": "string", "enum": [ "APPLIED", "VOID" ] }, "amount": { "type": "number", "example": 210 }, "amountWithoutTax": { "type": "number", "example": 200 }, "tax": { "type": "number", "example": 10 }, "taxCalculationStatus": { "type": "string", "example": "CALCULATED", "enum": [ "NOT_APPLICABLE", "CALCULATED", "FAILED", "FINALIZED_WITH_ERROR" ] }, "taxCalculationError": { "type": "string" }, "refundable": { "type": "boolean" }, "creditNoteItems": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnoteitem.CreditNoteItemDetailDto" } }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "User configured custom fields for the credit note" }, "description": "User configured custom fields for the credit note" }, "applications": { "type": "array", "description": "All application(s) of the credit note", "items": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.dto.SourceApplicationSummary" } }, "aggregatedApplications": { "type": "array", "description": "Aggregated application(s) of the credit note", "items": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.dto.AggregatedSourceApplicationSummary" } }, "invoiceIncomeAccountSyncType": { "type": "string", "description": "Income account sync type for the invoice - FINANCE_ID_ON_PRODUCT, FINANCE_ID_ON_OFFERING", "enum": [ "FINANCE_ID_ON_PRODUCT", "FINANCE_ID_ON_OFFERING" ] }, "billingContact": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" }, "shippingContact": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" }, "billingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "shippingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "voidReason": { "type": "string", "description": "Reason this credit note was voided." }, "creditNoteMetadata": { "$ref": "#/components/schemas/com.monytyz.billing.credit.model.CreditNoteMetadata" } } }, "com.monytyz.billing.credit.dto.creditnote.CreditNoteListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnote.CreditNoteDetailDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.credit.dto.creditnote.CreditNoteSaveDto": { "required": [ "amount", "type" ], "type": "object", "properties": { "type": { "type": "string", "enum": [ "ADJUSTMENT", "WRITE_OFF" ] }, "amount": { "minimum": 0, "exclusiveMinimum": true, "type": "number" }, "refundable": { "type": "boolean" }, "refundReason": { "type": "string", "enum": [ "BILLING_ERROR", "SERVICE_ISSUE", "CANCELLATION", "ADJUSTMENT", "OTHER" ] }, "otherReason": { "type": "string" }, "customFields": { "type": "object", "additionalProperties": { "type": "object" } } } }, "com.monytyz.billing.credit.dto.creditnoteitem.CreditNoteInvoiceItem": { "required": [ "amount", "amountWithoutDiscount", "discount", "id", "offeringId", "offeringName", "offeringType", "productId", "productName", "productType", "quantity", "unitPrice" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for an invoice item" }, "subscriptionId": { "type": "string", "description": "Associated subscription id for the invoice item" }, "offeringId": { "type": "string", "description": "Associated offering id for the invoice item" }, "offeringName": { "type": "string", "description": "Display name of the offering" }, "offeringDescription": { "type": "string", "description": "Description of the offering" }, "offeringType": { "type": "string", "description": "Type of the offering. Can be SUBSCRIPTION, ONETIME or MIN_COMMIT", "enum": [ "SUBSCRIPTION", "ONETIME", "MIN_COMMIT", "CUSTOM_PERCENT_OF_TOTAL" ] }, "productId": { "type": "string", "description": "Associated product id for the invoice item" }, "productName": { "type": "string", "description": "Name of the product" }, "rateId": { "type": "string", "description": "Associated rate id for the invoice item" }, "rateName": { "type": "string", "description": "Name of the rate. This name of the rate will appear on quotes" }, "productType": { "type": "string", "description": "Indicates the type of the product, which can be USAGE, ONETIME MIN_COMMIT, ADVANCE, ARREARS, ONETIME_PREPAID_CREDIT etc.", "enum": [ "ADVANCE", "ARREARS", "USAGE", "ONETIME", "ONETIME_PREPAID_CREDIT", "MIN_COMMIT" ] }, "description": { "type": "string", "description": "Description for the invoice item" }, "quantity": { "type": "number", "description": "Quantity for the invoice item", "format": "double" }, "amount": { "type": "number", "description": "Amount for the invoice item" }, "unitPrice": { "type": "number", "description": "Unit price for the invoice item" }, "amountCredited": { "type": "number", "description": "Amount credited for the invoice item" }, "amountWithoutDiscount": { "type": "number", "description": "Amount without discount for the invoice item" }, "discount": { "type": "number", "description": "Discount for the invoice item" }, "periodStartDate": { "type": "string", "description": "Period start date for the service linked to the invoice item", "format": "date" }, "periodEndDate": { "type": "string", "description": "Period end date for the service linked to the invoice item", "format": "date" }, "lineNumber": { "type": "integer", "description": "Line number of the corresponding invoice item", "format": "int32" } } }, "com.monytyz.billing.credit.dto.creditnoteitem.CreditNoteItemDetailDto": { "type": "object", "properties": { "id": { "type": "string", "example": "cnitd_EMfbqn56S9h9CweL" }, "creditNoteId": { "type": "string", "example": "crnt_5sQQlNNSxJAJ0X7P" }, "invoiceItemId": { "type": "string", "example": "ivitm_DHlWk4mIICkQabl0" }, "description": { "type": "string", "example": "Netflix Monthly Subscription Invoice" }, "invoiceItem": { "$ref": "#/components/schemas/com.monytyz.billing.credit.dto.creditnoteitem.CreditNoteInvoiceItem" }, "product": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductBasicDto" }, "periodStartDate": { "type": "string", "format": "date" }, "periodEndDate": { "type": "string", "format": "date" }, "quantity": { "type": "number", "format": "double" }, "amount": { "type": "number" }, "amountWithoutTax": { "type": "number" }, "tax": { "type": "number" } } }, "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.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.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.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.credit.model.CreditNoteSource": { "required": [ "source" ], "type": "object", "properties": { "source": { "type": "string" } } }, "com.monytyz.billing.customer.dto.CompanyInfoSnapshotDto": { "type": "object", "properties": { "name": { "type": "string", "description": "Name of the company" }, "address": { "$ref": "#/components/schemas/CompanyInfoSnapshotDtoAddressDto" }, "legalEntityId": { "type": "string", "description": "Identifier for the legal entity" }, "customId": { "type": "string", "description": "Custom id of the companyinfo snapshot" }, "logoStorageId": { "type": "string", "description": "Storage id of the company logo" }, "email": { "type": "string", "description": "Email address of the company" }, "addressFormat": { "type": "string", "description": "Format of the legal entity's address", "enum": [ "US_FORMAT", "EUROPEAN_FORMAT" ] } }, "description": "The entity who creates the invoice for billing purpose" }, "com.monytyz.billing.customer.dto.account.AccountData": { "required": [ "accountType", "customId", "id", "name" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the account", "example": "acct_jgPH8G33rELY6LQa" }, "name": { "type": "string", "description": "Name of the account.", "example": "Demo Account" }, "customId": { "type": "string", "description": "A user provided identifier for the account", "example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" }, "accountType": { "type": "string", "description": "Type of the account. An account can be CUSTOMER, PARTNER", "example": "CUSTOMER", "enum": [ "CUSTOMER", "PARTNER" ] } }, "description": "Account details associated with the subscription", "example": { "id": "acct_VbeTm9zhLf7pw", "name": "Demo Account", "customId": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" } }, "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.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.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.customer.dto.account.AccountSummary": { "required": [ "accountType", "id", "isTestAccount", "status" ], "type": "object", "properties": { "id": { "type": "string" }, "customId": { "type": "string" }, "isTestAccount": { "type": "boolean" }, "locale": { "type": "string" }, "accountName": { "type": "string" }, "defaultCurrency": { "type": "string", "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", "enum": [ "CUSTOMER", "PARTNER" ] }, "defaultLegalEntityId": { "type": "string" } } }, "com.monytyz.billing.customer.dto.account.overview.AccountOverview": { "required": [ "arr", "lifetimeValue", "mrr", "recentInvoiceAmount" ], "type": "object", "properties": { "recentInvoiceAmount": { "type": "number", "description": "The most recent invoice's amount by created date", "example": 1048 }, "mrr": { "type": "number", "description": "Monthly recurring revenue", "example": 795.75 }, "arr": { "type": "number", "description": "Annual recurring revenue", "example": 9549 }, "lifetimeValue": { "type": "number", "description": "Total paid invoices amount of an account", "example": 3043 } } }, "com.monytyz.billing.customer.dto.account.overview.AccountSubscriptionOverviewDto": { "type": "object", "properties": { "id": { "type": "string", "example": "acct_jgPH8G33rELY6LQa" }, "name": { "type": "string", "example": "Sales Account" }, "totalProducts": { "type": "integer", "format": "int32", "example": 100 }, "renewalEstimate": { "type": "number", "example": 10000 } } }, "com.monytyz.billing.customer.dto.account.overview.BillGroupListWithSubscriptionOverviews": { "required": [ "subscriptionOverviewsByBillGroup" ], "type": "object", "properties": { "subscriptionOverviewsByBillGroup": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.overview.BillGroupWithSubscriptionOverviews" } } } }, "com.monytyz.billing.customer.dto.account.overview.BillGroupWithSubscriptionOverviews": { "type": "object", "properties": { "billgroup": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupSummary" }, "paymentMethod": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodDto" }, "dunningProcess": { "$ref": "#/components/schemas/com.monytyz.billing.dunning.dto.dunningprocess.DunningProcessDetailDto" }, "subscriptionOverviews": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.overview.AccountSubscriptionOverviewDto" } } } }, "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.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.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.customer.dto.address.AddressType": { "required": [ "serialized" ], "type": "object", "properties": { "serialized": { "type": "string" } } }, "com.monytyz.billing.customer.dto.address.SourcedAddressData": { "required": [ "addressSource" ], "type": "object", "properties": { "addressSource": { "type": "string", "enum": [ "ACCOUNT", "CONTACT" ] } }, "discriminator": { "propertyName": "addressSource" } }, "com.monytyz.billing.customer.dto.address.SourcedAddressData.Account": { "required": [ "addressSource", "billingAddressId", "shippingAddressId" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.SourcedAddressData" }, { "type": "object", "properties": { "shippingAddressId": { "type": "string" }, "billingAddressId": { "type": "string" } } } ] }, "com.monytyz.billing.customer.dto.address.SourcedAddressData.Contact": { "required": [ "addressSource" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.SourcedAddressData" } ] }, "com.monytyz.billing.customer.dto.billgroup.BillGroupBillGroupListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupDetailDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.customer.dto.billgroup.BillGroupContactDto": { "required": [ "email", "fullName", "id" ], "type": "object", "properties": { "id": { "type": "string" }, "fullName": { "type": "string" }, "email": { "type": "string" } }, "description": "Shipping contact details" }, "com.monytyz.billing.customer.dto.billgroup.BillGroupDetailDto": { "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 billgroup", "example": "billg_tDbC2FxuCwQoxcjm" }, "accountId": { "type": "string", "description": "Unique identifier for the billgroup account", "example": "acct_m0CB9LflojZxytfC" }, "account": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.AccountDto" }, "contractId": { "type": "string", "description": "Unique identifier for the bill group's active contract", "example": "cntct_ItU2G9ZEkUvyBX9q" }, "activeContract": { "type": "boolean", "description": "A boolean field indicating whether the bill group has active contract", "example": true }, "paymentMethodId": { "type": "string", "description": "Unique identifier for the billgroup payment method", "example": "pmtmd_vFQZjKnb7mUpDYud" }, "billingContactId": { "type": "string", "description": "Unique identifier for the billgroup billing contact", "example": "cntct_E9jLE3Rz3VTGfDuM" }, "billingContact": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupContactDto" }, "shippingContactId": { "type": "string", "description": "Unique identifier for the BillGroup's shipping contact", "example": "cntct_E9jLE3Rz3VTGfDuM" }, "shippingContact": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.billgroup.BillGroupContactDto" }, "customId": { "type": "string", "description": "A user provided identifier for the billgroup", "example": "c993f52b-0bbd-454b-9849-fd6c1991efb6" }, "name": { "type": "string", "description": "Name of the billgroup", "example": "Default" }, "billDay": { "type": "integer", "description": "This is the specific day of the month on which the bill will be generated", "format": "int32", "example": 14 }, "netTerms": { "type": "string", "description": "Net terms of an invoice", "example": "NET_10", "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", "description": "Billgroup invoice frequency like DAILY, MONTHLY, QUARTERLY, SEMIANNUALLY, ANNUALLY OR CUSTOM", "example": "MONTHLY", "enum": [ "DAILY", "MONTHLY", "QUARTERLY", "SEMIANNUALLY", "ANNUALLY", "CUSTOM" ] }, "invoicingFrequencyInMonths": { "type": "integer", "description": "Invoicing frequency in month of an invoice", "format": "int32", "example": 12 }, "nextInvoiceDate": { "type": "string", "description": "Next invoice date of an invoice", "format": "date", "example": "2024-09-24" }, "previousInvoiceDate": { "type": "string", "description": "Previous invoice date of an invoice", "format": "date", "example": "2022-09-24" }, "status": { "type": "string", "description": "Billgroup status like ACTIVE, INACTIVE, CANCELED OR SUSPENDED", "example": "ACTIVE", "enum": [ "ACTIVE", "INACTIVE", "CANCELED", "SUSPENDED" ] }, "dunningProcessId": { "type": "string", "description": "Unique identifier for the dunning process", "example": "14" }, "dunningStepId": { "type": "string", "description": "Unique identifier for the dunning step", "example": "dunpr_zZMnmty165PC1dKa" }, "invoicingFailed": { "type": "boolean", "description": "A boolean field indicating that invoice failed or not", "example": true }, "collectInvoiceBalanceAutomatically": { "type": "boolean", "description": "If you want to override the global payment configuration and prevent collection at invoice time", "example": false }, "locked": { "type": "boolean" }, "purchaseOrderNumber": { "type": "string", "description": "The corresponding purchase order number", "example": "124556789" }, "autoEmailInvoice": { "type": "boolean", "description": "Automatically send invoice by email if true", "example": false }, "invoiceCreation": { "type": "string", "description": "The invoice creation type like AUTOMATIC or MANUAL", "example": "AUTOMATIC", "enum": [ "AUTOMATIC", "MANUAL" ] }, "invoiceDelay": { "type": "integer", "description": "Delay associated with invoice creation with minimum zero and maximum two days", "format": "int32", "example": 1 }, "firstInvoiceCreationStrategy": { "type": "string", "description": "First invoice creation strategy when invoice is being created manually", "example": "GENERATE_ON_QUOTE_PROCESSED", "enum": [ "FOLLOW_EXISTING_SETTINGS", "GENERATE_ON_QUOTE_PROCESSED" ] }, "defaultPaymentGateway": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayBasicDto" }, "ccEmails": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "legalEntityId": { "type": "string", "description": "Unique identifier for the legal entity. Account's legal entity will be linked if no legal entity is specified", "example": "lgen_e33f05749111f" }, "currency": { "type": "string", "description": "Currency for the BillGroup. It is the ISO 4217 assigned three-digit code. If no currency is provided, the account's default currency will be set", "example": "USD", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "User configured custom fields for the bill group" }, "description": "User configured custom fields for the bill group" }, "errorStatus": { "type": "string", "description": "BillGroup status shows if there\u2019s an error. It can be 'NONE' or 'TAX_CALCULATION_ERROR'.", "enum": [ "NONE", "TAX_CALCULATION_ERROR", "OVERINVOICING_HEURISTIC_FAILED" ] }, "addressSource": { "type": "string", "description": "Source of the bill groups address", "enum": [ "ACCOUNT", "CONTACT" ] }, "shippingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "billingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "vatNumber": { "type": "string", "description": "The corresponding vat number" }, "registrationNumber": { "type": "string", "description": "The corresponding registration number" }, "contractRenewalDatePolicy": { "type": "string", "enum": [ "FOLLOW_CONTRACT_START_DATE", "FOLLOW_BILL_GROUP_BILL_DAY" ] }, "accountingDateCalculationStrategy": { "type": "string", "description": "The accounting date calculation strategy", "enum": [ "BILLING_ANNIVERSARY", "CLOSEST_DATE_WITHIN_INVOICING_PERIOD", "CLOSEST_DATE_WITHIN_USAGE_PERIOD" ] }, "linkedAccountId": { "type": "string", "description": "Unique identifier for the billgroup account" }, "billingAccountId": { "type": "string", "description": "Unique identifier for the billgroup account" } } }, "com.monytyz.billing.customer.dto.billgroup.BillGroupSaveDto": { "required": [ "billDay", "name", "netTerms", "status" ], "type": "object", "properties": { "paymentMethodId": { "type": "string", "description": "Unique identifier for the billgroup payment method", "nullable": true, "example": "pmtmd_vFQZjKnb7mUpDYud" }, "defaultPaymentGatewayId": { "type": "string", "description": "Unique identifier for the payment gateway. If found empty, BE will set the default one.", "nullable": true, "example": "pmtgw_EMfbqn56S9h9CweL" }, "contactId": { "type": "string", "description": "Unique identifier for the billgroup billing contact", "example": "ctrct_QEPqCDqeaVte5WzM" }, "shippingContactId": { "type": "string", "description": "Unique identifier for the BillGroup's shipping contact", "example": "ctrct_QEPqCDqeaVte5WzM" }, "customId": { "type": "string", "description": "A user provided identifier for the billgroup", "nullable": true, "example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" }, "name": { "type": "string", "description": "Name of the billgroup", "example": "Demo BillGroup" }, "billDay": { "type": "integer", "description": "This is the specific day of the month on which the bill will be generated", "format": "int32", "example": 5 }, "netTerms": { "type": "string", "description": "Net terms of an invoice", "example": "NET_30", "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" ] }, "status": { "type": "string", "description": "Billgroup status like ACTIVE, INACTIVE, CANCELED OR SUSPENDED", "example": "ACTIVE", "enum": [ "ACTIVE", "INACTIVE", "CANCELED", "SUSPENDED" ] }, "dunningProcessId": { "type": "string", "description": "Unique identifier for the dunning process", "nullable": true, "example": "dunpr_QEPqCDqeaVte5WzM" }, "collectInvoiceBalanceAutomatically": { "type": "boolean", "description": "If you want to override the global payment configuration and prevent collection at invoice time", "example": false }, "autoEmailInvoice": { "type": "boolean", "description": "Automatically send invoice by email if true", "example": false }, "invoiceCreation": { "type": "string", "description": "The invoice creation type like AUTOMATIC or MANUAL", "example": "AUTOMATIC", "enum": [ "AUTOMATIC", "MANUAL" ] }, "invoiceDelay": { "type": "integer", "description": "Delay associated with invoice creation with minimum zero and maximum two days", "format": "int32", "example": 0 }, "firstInvoiceCreationStrategy": { "type": "string", "description": "First invoice creation strategy when invoice is being created manually", "example": "GENERATE_ON_QUOTE_PROCESSED", "enum": [ "FOLLOW_EXISTING_SETTINGS", "GENERATE_ON_QUOTE_PROCESSED" ] }, "ccEmails": { "uniqueItems": true, "type": "array", "description": "A list of email addresses to which the invoice will be copied", "example": "['abc@gmail.com', 'def@gmail.com']", "items": { "type": "string", "description": "A list of email addresses to which the invoice will be copied", "example": "['abc@gmail.com', 'def@gmail.com']" } }, "purchaseOrderNumber": { "type": "string", "description": "The corresponding purchase order number", "example": "PO-123" }, "legalEntityId": { "type": "string", "description": "Unique identifier for the legal entity. Account's legal entity will be linked if no legal entity is specified", "example": "lgen_e33f05749111f" }, "currency": { "type": "string", "description": "Currency for the BillGroup. It is the ISO 4217 assigned three-digit code. If no currency is provided, the account's default currency will be set", "example": "USD", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "customFields": { "type": "object", "additionalProperties": { "type": "object" } }, "addressData": { "oneOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.SourcedAddressData.Account" }, { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.SourcedAddressData.Contact" } ] }, "vatNumber": { "type": "string", "description": "The corresponding vat number", "example": "12345678901" }, "registrationNumber": { "type": "string", "description": "The corresponding registration number", "example": "123-45-6789" }, "accountingDateCalculationStrategy": { "type": "string", "description": "The accounting date calculation strategy", "example": "BILLING_ANNIVERSARY", "enum": [ "BILLING_ANNIVERSARY", "CLOSEST_DATE_WITHIN_INVOICING_PERIOD", "CLOSEST_DATE_WITHIN_USAGE_PERIOD" ] }, "linkedAccountId": { "type": "string", "description": "Linked account ID for this bill group", "nullable": true, "example": "acct_linked123" }, "billingAccountId": { "type": "string", "description": "Billing account ID for this bill group", "nullable": true, "example": "acct_billing456" } }, "example": "\n {\n \"name\": \"Demo BillGroup\",\n \"contactId\": \"cont_KmKel632AmnUp\",\n \"defaultPaymentGatewayId\": \"pmgw_MkAi8Eno4mXta\",\n \"paymentMethodId\": \"pmtmd_vFQZjKnb7mUpDYud\",\n \"dunningProcessId\": \"dunpr_QEPqCDqeaVte5WzM,\n \"billDay\": 1,\n \"status\": \"ACTIVE\",\n \"collectInvoiceBalanceAutomatically\": true,\n \"customId\": \"6b48c3f6-852e-4cd7-b4f4-a35ad60ad483\",\n \"netTerms\": \"NET_30\",\n \"autoEmailInvoice\": true,\n \"invoiceCreation\": \"AUTOMATIC\",\n \"invoiceDelay\": 0\n }\n " }, "com.monytyz.billing.customer.dto.billgroup.BillGroupSummary": { "required": [ "autoEmailInvoice", "currency", "id", "netTerms", "status" ], "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "nextInvoiceDate": { "type": "string", "format": "date" }, "previousInvoiceDate": { "type": "string", "format": "date" }, "status": { "type": "string", "enum": [ "ACTIVE", "INACTIVE", "CANCELED", "SUSPENDED" ] }, "invoicingFrequency": { "type": "string", "enum": [ "DAILY", "MONTHLY", "QUARTERLY", "SEMIANNUALLY", "ANNUALLY", "CUSTOM" ] }, "autoEmailInvoice": { "type": "boolean" }, "billDay": { "type": "integer", "format": "int32" }, "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" ] }, "currency": { "type": "string", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] } } }, "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.customer.dto.contact.ContactListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.customer.dto.contact.ContactSaveDto": { "required": [ "fullName", "status" ], "type": "object", "properties": { "customId": { "maxLength": 255, "minLength": 0, "type": "string", "description": "A user provided identifier for the contact", "nullable": true, "example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" }, "address": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressSaveDto" }, "fullName": { "maxLength": 255, "minLength": 0, "type": "string", "description": "Full name of the contact", "example": "Bob Smith" }, "email": { "maxLength": 79, "minLength": 0, "type": "string", "description": "Email of the contact", "example": "contact@example.com" }, "phone": { "maxLength": 50, "minLength": 0, "type": "string", "description": "Phone of the contact", "nullable": true, "example": "+1 800 444 4444" }, "status": { "type": "string", "description": "Status of the contact. Status can be ACTIVE, CANCELED or ARCHIVED", "example": "ACTIVE", "enum": [ "ACTIVE", "CANCELED", "ARCHIVED" ] }, "title": { "maxLength": 100, "minLength": 0, "type": "string", "description": "Title of the contact", "nullable": true, "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": false }, "defaultESigner": { "type": "boolean", "description": "Boolean value indicating if the contact is default eSigner", "example": false }, "customFields": { "type": "object", "additionalProperties": { "type": "object" } }, "esigner": { "type": "boolean" } } }, "com.monytyz.billing.customer.dto.contact.ContactSnapshotDto": { "type": "object", "properties": { "id": { "type": "string", "description": "A unique identifier for the contact", "example": "cntct_8P9ijCslTprCI7Wu" }, "accountId": { "type": "string", "description": "Account ID associated with the contact", "nullable": true, "example": "acc_1234567890123" }, "customId": { "type": "string", "description": "A user provided identifier for the contact", "nullable": true, "example": "c993f52b-0bbd-454b-9849-fd6c1991efb6" }, "internal": { "type": "boolean", "description": "Boolean value indicating if the contact is internal or external which is used for e-Signing", "example": false }, "snapshotId": { "type": "string", "description": "The identifier of the snapshot", "example": "cntctsnp_4J3aiDdLtQPc13VO" }, "address": { "$ref": "#/components/schemas/ContactSnapshotDtoAddressSnapshotDto" }, "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", "nullable": true, "example": "+1 800 444 4444" }, "title": { "type": "string", "description": "Title of the contact", "nullable": true, "example": "CFO" } } }, "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.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.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.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.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.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.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.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.v2.dto.AccountDocumentContactResponse": { "required": [ "additionalESignRecipients", "primaryESignContacts", "secondaryESignContacts" ], "type": "object", "properties": { "primaryESignContacts": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" } }, "secondaryESignContacts": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" } }, "additionalESignRecipients": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" } } } }, "com.monytyz.billing.customer.v2.dto.AccountDocumentContactUpdateRequest": { "required": [ "esignCcIds", "esignPrimaryIds", "esignSecondaryIds" ], "type": "object", "properties": { "esignPrimaryIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "esignSecondaryIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "esignCcIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } } }, "com.monytyz.billing.customer.v2.dto.AccountDocumentCreateRequest": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" } } }, "com.monytyz.billing.customer.v2.dto.AccountDocumentDetailResponse": { "required": [ "accountId", "accountName", "contacts", "creatorName", "id", "name", "signingOrder", "status", "storageObject", "storageObjectId" ], "type": "object", "properties": { "id": { "type": "string" }, "accountId": { "type": "string" }, "accountName": { "type": "string" }, "signingOrder": { "type": "string", "enum": [ "INTERNAL_FIRST", "EXTERNAL_FIRST", "EXTERNAL_ONLY", "INSTANTANEOUS" ] }, "name": { "type": "string" }, "description": { "type": "string" }, "status": { "type": "string", "enum": [ "CREATED", "SENT", "SIGNED" ] }, "storageObjectId": { "type": "string" }, "esignEnvelopeId": { "type": "string" }, "signedDocumentStorageObjectId": { "type": "string" }, "contacts": { "$ref": "#/components/schemas/com.monytyz.billing.customer.v2.dto.AccountDocumentContactResponse" }, "storageObject": { "$ref": "#/components/schemas/com.monytyz.billing.storage.dto.StorageObjectDto" }, "signedDocumentStorageObject": { "$ref": "#/components/schemas/com.monytyz.billing.storage.dto.StorageObjectDto" }, "signedAt": { "type": "string", "format": "date-time" }, "sentAt": { "type": "string", "format": "date-time" }, "creatorName": { "type": "string" }, "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" } } }, "com.monytyz.billing.customer.v2.dto.AccountDocumentUpdateRequest": { "required": [ "name", "signingOrder" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "signingOrder": { "type": "string", "enum": [ "INTERNAL_FIRST", "EXTERNAL_FIRST", "EXTERNAL_ONLY", "INSTANTANEOUS" ] } } }, "com.monytyz.billing.data.account.AccountId": { "type": "string", "description": "Unique identifier for the account", "example": "acct_73Vv4gb6PCfWU" }, "com.monytyz.billing.data.account.ContactId": { "type": "string", "description": "Unique identifier of a contact", "example": "cont_jb0eOTfjtEdTX" }, "com.monytyz.billing.data.billing.BillingVersion": { "required": [ "version" ], "type": "object", "properties": { "version": { "type": "string" } } }, "com.monytyz.billing.data.catalog.OfferingId": { "type": "string", "description": "Unique identifier of an offering", "example": "offr_jb0eOTfjtEdTX" }, "com.monytyz.billing.data.catalog.PriceId": { "required": [ "value" ], "type": "object", "properties": { "value": { "type": "string" } } }, "com.monytyz.billing.data.catalog.ProductId": { "type": "string", "description": "Unique identifier of a product", "example": "prod_Jlwk8t665ZWN9" }, "com.monytyz.billing.data.catalog.RateId": { "type": "string", "description": "Unique identifier for the rate", "example": "rate_73Vv4gb6PCfWU" }, "com.monytyz.billing.data.cpq.BillingAnchorConfig": { "required": [ "anchoredDate" ], "type": "object", "properties": { "anchoredDate": { "type": "string", "format": "date" } } }, "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.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.data.cpq.QuoteApprovalId": { "required": [ "value" ], "type": "object", "properties": { "value": { "type": "string" } } }, "com.monytyz.billing.data.cpq.QuoteId": { "required": [ "value" ], "type": "object", "properties": { "value": { "type": "string" } } }, "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.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.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.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.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.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.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.dealroom.model.DealRoomESignContactId": { "required": [ "contactId", "dealRoomId" ], "type": "object", "properties": { "contactId": { "type": "string" }, "dealRoomId": { "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.dealroom.model.DealRoomQuoteId": { "required": [ "dealRoomId", "quoteId" ], "type": "object", "properties": { "quoteId": { "type": "string" }, "dealRoomId": { "type": "string" } } }, "com.monytyz.billing.dunning.dto.dunningprocess.DunningProcessDetailDto": { "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", "example": "dunpr_H4b4ap97J2EqfuvX" }, "name": { "type": "string", "example": "Quote Dunning Process" }, "totalDunningStep": { "type": "integer", "format": "int32", "example": 10 }, "dunningProcessDays": { "type": "integer", "format": "int32", "example": 10 }, "dunningSteps": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.dunning.dto.dunningstep.DunningStepDto" } }, "defaultProcess": { "type": "boolean" } } }, "com.monytyz.billing.dunning.dto.dunningstep.DunningStepDto": { "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 dunning step", "example": "dunst_SFYBah2GCQXhh" }, "stepName": { "type": "string", "description": "Name of the dunning step", "example": "Upcoming Payment Due" }, "customId": { "type": "string", "description": "Unique id provided by the customer", "example": "66548E95-42AE-483F-A4BC-57847B856346" }, "stepSequence": { "type": "integer", "description": "Sequence of the step", "format": "int32", "example": 1 }, "daysSinceDueDate": { "type": "integer", "description": "Days since due date to activate the step", "format": "int32", "example": 0 }, "retryCollection": { "type": "boolean", "description": "Boolean field to indicate if payment collection should be retried", "example": true }, "sendEmail": { "type": "boolean", "description": "Boolean field to indicate if email should be sent", "example": true }, "emailTemplateId": { "type": "string", "description": "Email template that will be used to send email.", "example": "d-e7a983bd771343ada7429" }, "emailBillGroupShippingContact": { "type": "boolean", "description": "Boolean field to indicate if email should be sent to the BillGroup's shipping contact", "example": true }, "emailBillGroupCCEmails": { "type": "boolean", "description": "Boolean field to indicate if email should be sent to the BillGroup's CC contacts", "example": true }, "internalCCEmails": { "uniqueItems": true, "type": "array", "description": "CC emails to be used", "example": "['abc@gmail.com', 'def@gmail.com']", "items": { "type": "string", "description": "CC emails to be used", "example": "['abc@gmail.com', 'def@gmail.com']" } }, "emailAccountCCEmails": { "type": "boolean", "description": "Boolean field to indicate if email should be sent to the Account's CC email addresses", "example": true } } }, "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.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.esign.dto.ESignRecipient": { "required": [ "declinedDateTime", "deliveredDateTime", "email", "id", "name", "order", "sentDateTime", "signedDateTime", "status" ], "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "email": { "type": "string" }, "order": { "type": "string" }, "status": { "type": "string" }, "declinedDateTime": { "type": "string" }, "deliveredDateTime": { "type": "string" }, "sentDateTime": { "type": "string" }, "signedDateTime": { "type": "string" } } }, "com.monytyz.billing.esign.dto.ESignRecipientResponse": { "required": [ "ccContacts", "currentRoutingOrder", "recipientCount", "signers" ], "type": "object", "properties": { "recipientCount": { "type": "string" }, "currentRoutingOrder": { "type": "string" }, "signers": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.esign.dto.ESignRecipient" } }, "ccContacts": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.esign.dto.ESignRecipient" } } } }, "com.monytyz.billing.invoice.dto.InvoiceCreditDto": { "required": [ "creditId", "invoiceId" ], "type": "object", "properties": { "amount": { "type": "number", "example": 1000000 }, "appliedDate": { "type": "string", "format": "date-time" }, "reason": { "type": "string", "example": "Invoice created from Monthly subscription" }, "type": { "type": "string", "enum": [ "CREDIT_NOTE", "SERVICE", "PREPAID" ] }, "invoiceId": { "type": "string" }, "creditId": { "type": "string" }, "creditNoteId": { "type": "string" } }, "description": "All of the credit information for the invoice" }, "com.monytyz.billing.invoice.dto.InvoiceDto": { "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 an invoice", "example": "invce_3oUtURRnJJ8Afdw0" }, "account": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceDto.InvoiceAccountSnapshotDto" }, "fromCompany": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.CompanyInfoSnapshotDto" }, "billingContact": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" }, "shippingContact": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" }, "billGroupId": { "type": "string", "description": "Bill Group id associated with the invoice" }, "invoiceItems": { "uniqueItems": true, "type": "array", "description": "Actual items/products for the invoice", "items": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceItemDto" } }, "invoicingDate": { "type": "string", "description": "Invoice generation date", "format": "date" }, "currency": { "type": "string", "description": "Currency for the invoice amount", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "locale": { "type": "string", "description": "Locale for the invoice", "example": "en" }, "startDate": { "type": "string", "description": "Start date of the period for which a customer is billed", "format": "date" }, "endDate": { "type": "string", "description": "End date of the period for which a customer is billed", "format": "date" }, "orderId": { "type": "string", "description": "Order id associated with the invoice", "example": "order_qKthVa5dL2IKEZCP" }, "quoteId": { "type": "string", "description": "Quote id associated with the invoice", "example": "quote_oKEMgylKzkIWRSxn" }, "status": { "type": "string", "description": "Describes the state of the invoice. Can be CANCELED,UNPAID,PENDING,PAID,REVERSED", "enum": [ "DRAFT", "CANCELED", "UNPAID", "PENDING", "PAID", "REVERSED" ] }, "testAccount": { "type": "boolean", "description": "Indicates if invoice is generated for a test account or not" }, "dueDate": { "type": "string", "description": "The date when invoice will be due. Needs to be paid before that date", "format": "date" }, "amount": { "type": "number", "description": "Total amount for the invoice", "example": 100000 }, "amountWithoutTax": { "type": "number", "description": "Total amount for the invoice without tax", "example": 1000000 }, "amountWithoutDiscount": { "type": "number", "description": "Total amount for the invoice without discount", "example": 900000 }, "discount": { "type": "number", "description": "Discount amount", "example": 10000 }, "tax": { "type": "number", "description": "Tax amount", "example": 100 }, "exchangeRate": { "type": "number", "description": "Exchange rate for the currency used to pay the invoice", "example": 100 }, "amountDue": { "type": "number", "description": "Due amount for the invoice", "example": 100000000 }, "amountPaid": { "type": "number", "description": "Paid amount for the invoice", "example": 100000 }, "paidDate": { "type": "string", "description": "Last payment date", "format": "date" }, "collectionAttempts": { "type": "integer", "description": "Indicates how many times system automatically attempts to collect payment", "format": "int32", "example": 10 }, "netTerms": { "type": "string", "description": "Net terms for the 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": "Number of days for which net terms is applied", "format": "int32", "example": 14 }, "recreatedInvoice": { "type": "boolean", "description": "Indicates if an invoice is recreated from another one" }, "amountWrittenOff": { "type": "number", "description": "The amount that has been written off of this invoice, this is the sum of all item amounts that have been written off", "example": 100000 }, "amountCredited": { "type": "number", "description": "Amount which has been credited", "example": 100000 }, "pastDue": { "type": "boolean", "description": "Previous due amount if applicable" }, "payments": { "uniqueItems": true, "type": "array", "description": "All of the previous payment information for the invoice", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.InvoicePaymentDto" } }, "credits": { "uniqueItems": true, "type": "array", "description": "All of the credit information for the invoice", "items": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceCreditDto" } }, "usageStartDate": { "type": "string", "description": "Start date applicable for usage product", "format": "date" }, "usageEndDate": { "type": "string", "description": "End date applicable for usage products", "format": "date" }, "contractId": { "type": "string", "description": "Associated contract id for the invoice" }, "purchaseOrderNumber": { "type": "string" }, "invoiceTerms": { "type": "string", "description": "Invoice terms" }, "lastSent": { "type": "string", "description": "Indicates when the invoice was last send over email", "format": "date-time" }, "paymentInstruction": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.PaymentInstruction" }, "billDate": { "type": "string", "description": "Bill Date for the invoice", "format": "date" }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "User configured custom fields for the invoice" }, "description": "User configured custom fields for the invoice" }, "invoiceIncomeAccountSyncType": { "type": "string", "description": "Income account sync type for the invoice - FINANCE_ID_ON_PRODUCT, FINANCE_ID_ON_OFFERING", "enum": [ "FINANCE_ID_ON_PRODUCT", "FINANCE_ID_ON_OFFERING" ] }, "taxStatus": { "type": "string", "description": "Tax calculation status. It can be NOT_APPLICABLE, CALCULATED, or FAILED, ", "enum": [ "NOT_APPLICABLE", "CALCULATED", "FAILED", "FINALIZED_WITH_ERROR" ] }, "taxError": { "type": "string", "description": "Error message for tax calculation failure. Status of the tax calculation will be `FAILED`" }, "billingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "shippingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "invoiceNumber": { "type": "string", "description": "Sequential invoice number" }, "originalQuoteId": { "type": "string", "description": "Origianl quote id associated with the invoice" }, "vatNumber": { "type": "string", "description": "The corresponding vat number" }, "registrationNumber": { "type": "string", "description": "The corresponding registration number" }, "creditRebilledTargetInvoiceId": { "type": "string", "description": "The identifier for the target invoice created using credit and rebill from this invoice" }, "creditRebilledSourceInvoiceId": { "type": "string", "description": "The identifier for the source invoice from which this invoice was created using credit and rebill" }, "creditRebilledTimestamp": { "type": "string", "description": "The timestamp when the credit and rebill operation was performed", "format": "date-time" }, "migrated": { "type": "boolean", "description": "Indicates if the invoice is migrated" }, "invoiceMemo": { "type": "string", "description": "A memo on an Invoice related to a specific upsell to help the end customer understand the invoice to limit questions and decrease time to payment" }, "applications": { "type": "array", "description": "All application transaction(s) for the invoice", "items": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.dto.TargetApplicationSummary" } }, "invoiceType": { "type": "string", "description": "Type of invoice. It can be ONETIME/REBILLED/INCREMENTAL/RECURRING", "enum": [ "REBILLED", "ONETIME", "INCREMENTAL", "RECURRING" ] }, "metadata": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.model.InvoiceMetadata" }, "accountingDate": { "type": "string", "description": "The derived date used for accounting purposes.", "format": "date" }, "finalized": { "type": "boolean" } } }, "com.monytyz.billing.invoice.dto.InvoiceDto.InvoiceAccountSnapshotDto": { "type": "object", "properties": { "id": { "type": "string", "example": "acct_3oUtURRnJJ8Afdw0" }, "customId": { "type": "string" }, "accountName": { "type": "string", "example": "Contoso Ltd" }, "currency": { "type": "string", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "status": { "type": "string", "enum": [ "ACTIVE", "CANCELED", "SUSPENDED", "INACTIVE" ] }, "isTestAccount": { "type": "boolean" }, "billingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "shippingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" } }, "description": "Associated account id for the invoice" }, "com.monytyz.billing.invoice.dto.InvoiceItemDiscountDto": { "type": "object", "properties": { "discountId": { "type": "string", "example": "disc_9TkhFbhZ5oY4q2fw" }, "description": { "type": "string", "example": "Flat Discount" }, "amount": { "type": "number", "example": 1000000 }, "discountType": { "type": "string", "example": "FLAT", "enum": [ "FLAT", "PERCENTAGE" ] } } }, "com.monytyz.billing.invoice.dto.InvoiceItemDto": { "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", "example": "ivitm_DHlWk4mIICkQabl0" }, "subscriptionId": { "type": "string", "example": "subsc_9TkhFbhZ5oY4q2fw" }, "referenceId": { "type": "string", "example": "2ECB5641-A6CD-443B-843A-E19BDB3EB67E" }, "subscriptionItemId": { "type": "string", "example": "subitm_9TkhFbhZ5oY4q2fw" }, "subscription": { "type": "boolean" }, "quoteItemId": { "type": "string", "example": "qtitm_HcDS5ya4Fpsi5Wky" }, "offeringId": { "type": "string", "example": "offer_iJuVJLgQKIFc98RE" }, "offeringName": { "type": "string", "example": "Netflix" }, "offeringDescription": { "type": "string", "example": "Premium Subscription" }, "offeringType": { "type": "string", "example": "SUBSCRIPTION", "enum": [ "SUBSCRIPTION", "ONETIME", "MIN_COMMIT", "CUSTOM_PERCENT_OF_TOTAL" ] }, "productId": { "type": "string", "example": "prod_nStU73ZJahgBSxnh" }, "productName": { "type": "string", "example": "Netflix" }, "rateId": { "type": "string", "example": "rate_fvCOerGF0bC8JuV2" }, "rateName": { "type": "string", "example": "Monthly" }, "subscriptionTiming": { "type": "string", "example": "ADVANCE", "enum": [ "ADVANCE", "ARREARS" ] }, "multiTier": { "type": "boolean" }, "productType": { "type": "string", "enum": [ "ADVANCE", "ARREARS", "USAGE", "ONETIME", "ONETIME_PREPAID_CREDIT", "MIN_COMMIT" ] }, "description": { "type": "string", "example": "Netflix Premium Monthly" }, "isAddon": { "type": "boolean" }, "addonId": { "type": "string", "example": "addon_iJuVJLgQKIFc98RE" }, "quantity": { "type": "number", "format": "double", "example": 100 }, "previousQuantity": { "type": "number", "format": "double", "example": 100 }, "amount": { "type": "number", "example": 1000000 }, "unitPrice": { "type": "number", "example": 10 }, "amountCredited": { "type": "number", "example": 1000000 }, "amountWrittenOff": { "type": "number", "example": 100000 }, "writeOffDate": { "type": "string", "format": "date" }, "priceModel": { "type": "string", "enum": [ "VOLUME", "TIERED", "FLAT", "CUSTOM", "PERCENT_OF_TOTAL" ] }, "amountWithoutDiscount": { "type": "number" }, "discount": { "type": "number", "example": 100 }, "amountWithoutTax": { "type": "number", "example": 100 }, "tax": { "type": "number", "example": 10 }, "periodStartDate": { "type": "string", "format": "date" }, "periodEndDate": { "type": "string", "format": "date" }, "prorationMultiplier": { "type": "number", "example": 100 }, "discounts": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceItemDiscountDto" } }, "minCommitAvailableAmount": { "type": "number" }, "minCommitAdditionalBilledAmount": { "type": "number" }, "financeId": { "type": "string" }, "lineNumber": { "type": "integer", "format": "int32" }, "priceDisplayOption": { "type": "string", "enum": [ "PRODUCT", "OFFERING" ] } }, "description": "Actual items/products for the invoice" }, "com.monytyz.billing.invoice.dto.InvoiceListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.invoice.dto.InvoiceDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.invoice.dto.InvoiceSummary": { "required": [ "accountId", "amount", "amountDue", "currency", "dueDate", "fromCompany", "id", "invoicingDate", "migrated", "status" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for an invoice" }, "accountId": { "type": "string", "description": "Associated account id for the invoice" }, "fromCompany": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.CompanyInfoSnapshotDto" }, "invoicingDate": { "type": "string", "description": "Invoice generation date", "format": "date" }, "currency": { "type": "string", "description": "Currency for the invoice amount", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "startDate": { "type": "string", "description": "Start date of the period for which a customer is billed", "format": "date" }, "endDate": { "type": "string", "description": "End date of the period for which a customer is billed", "format": "date" }, "usageStartDate": { "type": "string", "description": "Start date applicable for usage product", "format": "date" }, "usageEndDate": { "type": "string", "description": "End date applicable for usage products", "format": "date" }, "contractId": { "type": "string", "description": "Associated contract id for the invoice" }, "status": { "type": "string", "description": "Describes the state of the invoice. Can be CANCELED,UNPAID,PENDING,PAID,REVERSED", "enum": [ "DRAFT", "CANCELED", "UNPAID", "PENDING", "PAID", "REVERSED" ] }, "amount": { "type": "number", "description": "Total amount for the invoice" }, "amountDue": { "type": "number", "description": "Due amount for the invoice" }, "dueDate": { "type": "string", "description": "The date when invoice will be due. Needs to be paid before that date", "format": "date" }, "invoiceNumber": { "type": "string", "description": "Sequential invoice number" }, "migrated": { "type": "boolean", "description": "Indicates if the invoice is migrated" } } }, "com.monytyz.billing.invoice.dto.InvoiceUpdateDto": { "required": [ "customFields", "invoiceMemo", "purchaseOrderNumber", "registrationNumber", "vatNumber" ], "type": "object", "properties": { "purchaseOrderNumber": { "type": "string", "example": "PO-123" }, "vatNumber": { "type": "string", "description": "The corresponding vat number", "example": "12345678901" }, "registrationNumber": { "type": "string", "description": "The corresponding registration number", "example": "123-45-6789" }, "invoiceMemo": { "type": "string", "description": "A memo on an Invoice related to a specific upsell to help the end customer understand the invoice to limit questions and decrease time to payment" }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "User configured custom fields for the invoice" }, "description": "User configured custom fields for the invoice" } } }, "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.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.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.InvoiceCreditCompositeId": { "type": "object" }, "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.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.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.invoice.model.InvoiceSource": { "required": [ "source" ], "type": "object", "properties": { "source": { "type": "string" } } }, "com.monytyz.billing.opportunity.dto.OpportunityCreateDto": { "required": [ "accountId" ], "type": "object", "properties": { "primaryQuoteId": { "type": "string", "example": "quote_cHCX0TFN79rDgDyg" }, "customId": { "type": "string", "example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" }, "name": { "type": "string", "example": "Google" }, "accountId": { "type": "string", "example": "acct_JsT0t6adwZvrhp1z" } } }, "com.monytyz.billing.opportunity.dto.OpportunityListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunitySummaryDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.opportunity.dto.OpportunityPrimaryQuoteDto": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } } }, "com.monytyz.billing.opportunity.dto.OpportunityQuoteDto": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "modifyDate": { "type": "string", "format": "date-time" }, "type": { "type": "string", "enum": [ "NEW", "AMENDMENT", "RENEWAL" ] }, "status": { "type": "string", "enum": [ "DRAFT", "REVIEW", "APPROVED", "DENIED", "SENT", "ACCEPTED", "ACCEPTED_ADMIN_EDITABLE", "PROCESSED", "CANCELED", "EXPIRED", "ARCHIVED" ] }, "total": { "type": "number" }, "contractStartDate": { "type": "string", "format": "date" }, "contractEndDate": { "type": "string", "format": "date" }, "currency": { "type": "string", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "legalEntityId": { "type": "string" } } }, "com.monytyz.billing.opportunity.dto.OpportunityQuoteLinkResponseDto": { "type": "object", "properties": { "opportunityId": { "type": "string", "example": "opp_VDafd3FooHfe" }, "customOpportunityId": { "type": "string", "example": "customId_nmyNv" }, "opportunityName": { "type": "string", "example": "NewOpportunity_qGOji" }, "quoteId": { "type": "string", "example": "quote_IqgnB7H2HIZPpcz4" } } }, "com.monytyz.billing.opportunity.dto.OpportunityResponseDto": { "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", "example": "opp_tnBG9B0Dbwvh" }, "customId": { "type": "string", "example": "customId_tqQ0D" }, "name": { "type": "string", "example": "NewOpportunity_UG62S" }, "primaryQuoteId": { "type": "string", "example": "quote_kku7e3fCQqxLq5lo" }, "url": { "type": "string", "format": "uri", "example": "https://na85.lightning.force.com/lightning/r/Opportunity/xxxxxxxxxxx/view" }, "owner": { "type": "string", "example": "USW Sales" }, "amount": { "type": "number" }, "accountName": { "type": "string" }, "status": { "type": "string", "enum": [ "WON", "CANCELED", "ACTIVE", "LOST" ] }, "quotes": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityQuoteDto" } }, "accountId": { "type": "string", "example": "acct_pSiInc8itY9yVFY7" }, "currency": { "type": "string", "example": "USD", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "dealRoomId": { "type": "string" } } }, "com.monytyz.billing.opportunity.dto.OpportunitySummaryDto": { "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" }, "customId": { "type": "string" }, "name": { "type": "string" }, "primaryQuote": { "$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityPrimaryQuoteDto" }, "amount": { "type": "number" }, "currency": { "type": "string", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "dealRoomId": { "type": "string" } } }, "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.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.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.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.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.payment.dto.payment.ApplyPaymentToInvoiceDto": { "required": [ "amount" ], "type": "object", "properties": { "paymentMethodId": { "type": "string", "description": "Unique identifier for the payment method", "example": "pmtm_m0CB9LflojZxytfC" }, "amount": { "type": "number", "description": "Amount of the payment", "example": 5000 } } }, "com.monytyz.billing.payment.dto.payment.InvoicePaymentDto": { "type": "object", "properties": { "paymentId": { "type": "string", "description": "Unique identifier for the payment", "example": "pmt_m0CB9LflojZxytfC" }, "createDate": { "type": "string", "description": "Timestamp of when the record was created", "format": "date-time" }, "collectionDate": { "type": "string", "description": "Date when the payment is settled", "format": "date", "example": "2022-04-25", "deprecated": true }, "settledDate": { "type": "string", "description": "Date when the payment is settled", "format": "date-time" }, "creditCardType": { "type": "string", "description": "Payment method credit card type like VISA, MASTERCARD, DISCOVER, AMEX, DINERS, JCB or UNIONPAY", "example": "VISA", "enum": [ "VISA", "MASTERCARD", "DISCOVER", "AMEX", "DINERS", "JCB", "UNIONPAY" ] }, "paymentMethodName": { "type": "string", "description": "Name of the payment method", "example": "Bob's Visa" }, "paymentDescription": { "type": "string", "description": "Description of the payment", "example": "Payment Description" }, "paidAmount": { "type": "number", "description": "Amount of the payment", "example": 10000 } }, "description": "All of the previous payment information for the invoice" }, "com.monytyz.billing.payment.dto.payment.ManualPaymentSaveDto": { "required": [ "amount", "paymentDate" ], "type": "object", "properties": { "amount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "description": "Amount of the payment", "example": 1000 }, "paymentDate": { "type": "string", "description": "Date of the payment", "format": "date", "example": "2022-04-25" }, "referenceNo": { "type": "string", "description": "Customer reference number for the payment", "example": "12345" }, "description": { "type": "string", "description": "Description of the payment", "example": "USW's Manual Payment" } } }, "com.monytyz.billing.payment.dto.payment.PaymentDetailDto": { "required": [ "account", "currency", "id" ], "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 payment", "example": "pmt_m0CB9LflojZxytfC" }, "paymentDate": { "type": "string", "description": "Date of the payment", "format": "date", "example": "2022-04-13" }, "currency": { "type": "string", "description": "Currency of the payment", "example": "USD", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "account": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSummary" }, "settledDate": { "type": "string", "description": "Date when the payment is settled", "format": "date-time" }, "refundDate": { "type": "string", "description": "Date of the refund", "format": "date", "example": "2022-04-25" }, "voidDate": { "type": "string", "description": "Date when the payment is voided", "format": "date", "example": "2022-04-25" }, "description": { "type": "string", "description": "Description of the payment", "example": "Monthly Payment" }, "paymentMethodId": { "type": "string", "description": "Unique identifier for the payment method", "example": "pmtm_GDJKaum7vI9vf9tl" }, "gatewayId": { "type": "string", "description": "Unique identifier for the payment gateway", "example": "pmtgw_EMfbqn56S9h9CweL" }, "gatewayReference": { "type": "string", "description": "Gateway reference for the payment. It can be charge id or payment intent id when the payment is successful and request id when the payment fails", "example": "4cd7-b4f4-a35ad60ad483" }, "gatewayCode": { "type": "string", "description": "Gateway error code when the payment fails", "example": "a35ad60ad483" }, "gatewayMessage": { "type": "string", "description": "Gateway error message when the payment fails", "example": "Gateway Connected Successfully" }, "amount": { "type": "number", "description": "Amount of the payment", "example": 100000000 }, "appliedAmount": { "type": "number", "description": "Applied amount for the payment", "example": 10000000 }, "unAppliedAmount": { "type": "number", "description": "Unapplied amount for the payment", "example": 100000 }, "refundedAmount": { "type": "number", "description": "Amount of the payment that has been refunded", "example": 100000 }, "amountAppliedToInvoices": { "type": "number", "description": "Amount of the payment that has been applied to invoice(s)", "example": 100000 }, "fullyApplied": { "type": "boolean", "description": "A boolean field indicating that payment is fully applied or not", "example": true }, "paymentStatus": { "type": "string", "description": "Status of the payment. Status can be SUCCESS, PROCESSING, FAILED, CANCELED, REFUNDED or PARTIAL_REFUND", "example": "SUCCESS", "enum": [ "PROCESSING", "SUCCESS", "FAILED", "CANCELED", "REFUNDED", "PARTIAL_REFUND" ] }, "paymentType": { "type": "string", "description": "Payment method type like CREDIT_CARD, DIRECT_DEBIT, ACH_CREDIT etc", "example": "CREDIT_CARD", "enum": [ "CREDIT_CARD", "DIRECT_DEBIT", "ACH_CREDIT", "US_BANK_TRANSFER", "MANUAL" ] }, "referenceNo": { "type": "string", "description": "Customer reference number for the payment", "example": "12345" }, "applications": { "type": "array", "description": "All application(s) of the payment", "items": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.dto.SourceApplicationSummary" } } } }, "com.monytyz.billing.payment.dto.payment.PaymentDto": { "required": [ "currency", "id" ], "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 payment", "example": "pmt_m0CB9LflojZxytfC" }, "paymentDate": { "type": "string", "description": "Date of the payment", "format": "date", "example": "2022-04-13" }, "currency": { "type": "string", "description": "Currency of the payment", "example": "USD", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "account": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSummary" }, "collectionDate": { "type": "string", "description": "Date when the payment is settled", "format": "date", "example": "2022-04-15", "deprecated": true }, "settledDate": { "type": "string", "description": "Date when the payment is settled", "format": "date-time" }, "refundDate": { "type": "string", "description": "Date of the refund", "format": "date", "example": "2022-04-25" }, "voidDate": { "type": "string", "description": "Date when the payment is voided", "format": "date", "example": "2022-04-25" }, "description": { "type": "string", "description": "Description of the payment", "example": "Monthly Payment" }, "paymentMethodId": { "type": "string", "description": "Unique identifier for the payment method", "example": "pmtm_GDJKaum7vI9vf9tl" }, "gatewayId": { "type": "string", "description": "Unique identifier for the payment gateway", "example": "pmtgw_EMfbqn56S9h9CweL" }, "gatewayReference": { "type": "string", "description": "Gateway reference for the payment. It can be charge id or payment intent id when the payment is successful and request id when the payment fails", "example": "4cd7-b4f4-a35ad60ad483" }, "gatewayCode": { "type": "string", "description": "Gateway error code when the payment fails", "example": "a35ad60ad483" }, "gatewayMessage": { "type": "string", "description": "Gateway error message when the payment fails", "example": "Gateway Connected Successfully" }, "amount": { "type": "number", "description": "Amount of the payment", "example": 100000000 }, "appliedAmount": { "type": "number", "description": "Applied amount for the payment", "example": 10000000 }, "unAppliedAmount": { "type": "number", "description": "Unapplied amount for the payment", "example": 100000 }, "fullyApplied": { "type": "boolean", "description": "A boolean field indicating that payment is fully applied or not", "example": true }, "paymentStatus": { "type": "string", "description": "Status of the payment. Status can be SUCCESS, PROCESSING, FAILED, CANCELED, REFUNDED or PARTIAL_REFUND", "example": "SUCCESS", "enum": [ "PROCESSING", "SUCCESS", "FAILED", "CANCELED", "REFUNDED", "PARTIAL_REFUND" ] }, "paymentType": { "type": "string", "description": "Payment method type like CREDIT_CARD, DIRECT_DEBIT, ACH_CREDIT etc", "example": "CREDIT_CARD", "enum": [ "CREDIT_CARD", "DIRECT_DEBIT", "ACH_CREDIT", "US_BANK_TRANSFER", "MANUAL" ] }, "referenceNo": { "type": "string", "description": "Customer reference number for the payment", "example": "12345" }, "successfulOrProcessing": { "type": "boolean" } } }, "com.monytyz.billing.payment.dto.payment.PaymentListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.payment.PaymentDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.payment.dto.payment.UpdateManualPaymentDto": { "type": "object", "properties": { "referenceNo": { "type": "string", "description": "Customer reference number for the payment", "example": "12345" }, "description": { "type": "string", "description": "Description of the payment", "example": "USW's Manual Payment" }, "paymentDate": { "type": "string", "description": "Date of the payment", "format": "date", "example": "2022-04-25" } } }, "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.payment.dto.paymentgateway.PaymentGatewayBasicDto": { "required": [ "defaultGateway", "description", "id", "locked", "status", "testGateway", "type" ], "type": "object", "properties": { "id": { "type": "string", "example": "pmtgw_EMfbqn56S9h9CweL" }, "description": { "type": "string", "example": "Description about PGW" }, "type": { "type": "string", "example": "STRIPEV2", "enum": [ "STRIPEV2", "BRAINTREE", "WORLDPAY", "AUTHNET", "ADYEN", "VANTIV", "PAYPAL_PRO", "PAYMENT_TECH", "TEST_PASS", "TEST_FAIL" ] }, "status": { "type": "string", "example": "ACTIVE", "enum": [ "ACTIVE", "INACTIVE", "ARCHIVED" ] }, "testGateway": { "type": "boolean", "example": false }, "defaultGateway": { "type": "boolean", "example": true }, "locked": { "type": "boolean", "example": true } } }, "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.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.payment.dto.paymentgateway.PaymentGatewayDto": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the payment gateway", "example": "pmtgw_EMfbqn56S9h9CweL" }, "type": { "type": "string", "description": "Payment gateway type like STRIPEV2, BRAINTREE, WORLDPAY etc", "example": "STRIPEV2", "enum": [ "STRIPEV2", "BRAINTREE", "WORLDPAY", "AUTHNET", "ADYEN", "VANTIV", "PAYPAL_PRO", "PAYMENT_TECH", "TEST_PASS", "TEST_FAIL" ] }, "status": { "type": "string", "description": "Payment gateway status like ACTIVE, INACTIVE OR ARCHIVED", "example": "ACTIVE", "enum": [ "ACTIVE", "INACTIVE", "ARCHIVED" ] }, "testGateway": { "type": "boolean", "description": "A boolean field indicating that it is the test gateway or not", "example": false }, "description": { "type": "string", "description": "Description of the payment gateway", "example": "Description for the payment gateway" }, "publicKey": { "type": "string", "description": "Public key for the payment gateway. It's publishable key for Stripe", "example": "pk_test_51Hwfowe23LJ02M1f5WZ6c23" }, "defaultGateway": { "type": "boolean", "description": "A boolean field indicating that it is the default gateway or not", "example": true }, "locked": { "type": "boolean", "description": "A boolean field indicating that the gateway is locked or not", "example": true }, "webhookId": { "type": "string", "description": "Unique identifier for the webhook", "example": "we_1MEaM8BVaXRvkQL7LqeaOCgy" }, "allowedPaymentMethods": { "uniqueItems": true, "type": "array", "description": "A list of allowed payment methods", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodSupport" } }, "paymentConfiguration": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayConfigurations" } }, "description": "Payment gateway details of the payment method" }, "com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.payment.dto.paymentgateway.stripe.StripeSetupIntentDto": { "type": "object", "properties": { "setupIntentId": { "type": "string", "description": "Stripe SetupIntent ID", "example": "seti_1NNNTHBXyD37Yf5RCKgSTq04" } } }, "com.monytyz.billing.payment.dto.paymentmethod.BillingDetails": { "type": "object", "properties": { "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": "+44 7700 900278" }, "title": { "type": "string", "description": "Title of the contact", "example": "CFO" }, "line1": { "type": "string", "description": "First line of the address", "example": "8 Louise Court" }, "line2": { "type": "string", "description": "Second line of the address", "example": "12\u201313 Beaulieu Road" }, "city": { "type": "string", "description": "City of the address", "example": "Southampton" }, "state": { "type": "string", "description": "State of the address", "example": "London" }, "postalCode": { "type": "string", "description": "Postal code of the address", "example": "PO2 0DN" }, "country": { "type": "string", "description": "Country of the address", "example": "UK" } }, "description": "Billing details of the payment method" }, "com.monytyz.billing.payment.dto.paymentmethod.FailedImport": { "required": [ "externalPaymentMethodId", "reason" ], "type": "object", "properties": { "externalPaymentMethodId": { "type": "string", "description": "External payment method id", "example": "pm_1NNZkPBXyD37Yf5R6DNQLPxF" }, "reason": { "type": "string", "description": "Reason for import failure", "example": "Unknown Error" } }, "description": "List of failed payment method imports" }, "com.monytyz.billing.payment.dto.paymentmethod.GatewayAccountData": { "required": [ "id" ], "type": "object", "properties": { "id": { "type": "string", "description": "External identifier for the gateway account. In Stripe, this is the customer ID", "example": "cus_O85DG5nkCWtWdT" }, "name": { "type": "string", "description": "Name of the gateway account. In Stripe, it's the customer's name", "nullable": true, "example": "John Smith" }, "email": { "type": "string", "description": "Email of the gateway account. In Stripe, it's the customer's email", "nullable": true, "example": "john@gmail.com" } } }, "com.monytyz.billing.payment.dto.paymentmethod.GatewayAccountDto": { "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 gateway account", "example": "gwact_Jpwe823lsf82p8a96", "deprecated": true }, "accountId": { "type": "string", "description": "Unique identifier for the account", "example": "acct_jgPH8G33rELY6LQa" }, "paymentGatewayId": { "type": "string", "description": "Unique identifier for the payment gateway", "example": "pmtgw_EMfbqn56S9h9CweL" }, "paymentGatewayAccountId": { "type": "string", "description": "External identifier for the gateway account. In Stripe, this is the customer ID", "example": "cus_O85DG5nkCWtWdT" }, "gatewayCustomerId": { "type": "string", "description": "External identifier for the gateway account. In Stripe, this is the customer ID", "example": "cus_O85DG5nkCWtWdT" }, "gatewayType": { "type": "string", "description": "Type of the gateway account", "example": "STRIPE_V2", "enum": [ "STRIPEV2", "BRAINTREE", "WORLDPAY", "AUTHNET", "ADYEN", "VANTIV", "PAYPAL_PRO", "PAYMENT_TECH", "TEST_PASS", "TEST_FAIL" ] } } }, "com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodData": { "required": [ "externalId", "lastFour", "type" ], "type": "object", "properties": { "id": { "type": "string" }, "type": { "type": "string", "enum": [ "CREDIT_CARD", "DIRECT_DEBIT", "ACH_CREDIT", "US_BANK_TRANSFER", "MANUAL" ] }, "externalId": { "type": "string" }, "lastFour": { "type": "string" }, "billingDetails": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.BillingDetails" } }, "description": "List of payment methods that are already imported" }, "com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodDto": { "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 payment method", "example": "pmmd_ljUBlyVLF10JQ" }, "account": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.AccountSummary" }, "paymentMethodName": { "type": "string", "description": "Name of the payment method", "example": "Test Payment" }, "customId": { "type": "string", "description": "A user provided identifier for the payment method", "example": "123456789" }, "defaultPaymentMethod": { "type": "boolean", "description": "A boolean field indicating that it is the default payment method or not", "example": true }, "paymentGateway": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentgateway.PaymentGatewayDto" }, "creditCardType": { "type": "string", "description": "Payment method credit card type like VISA, MASTERCARD, DISCOVER, AMEX, DINERS, JCB or UNIONPAY", "example": "VISA", "enum": [ "VISA", "MASTERCARD", "DISCOVER", "AMEX", "DINERS", "JCB", "UNIONPAY" ] }, "creditCardNumber": { "type": "string", "description": "Credit card number for the payment method", "example": "461156147593489" }, "lastFour": { "type": "string", "description": "Last four digit of a credit card number", "example": "3489" }, "expirationYear": { "type": "integer", "description": "Credit card expiration year", "format": "int32", "example": 2024 }, "expirationMonth": { "type": "integer", "description": "Credit card expiration month", "format": "int32", "example": 9 }, "cvcValidation": { "type": "boolean", "description": "A boolean field indicating that credit card CVC is validate or not", "example": true }, "addressValidation": { "type": "boolean", "description": "A boolean field indicating that payment method address is validate or not", "example": true }, "postalValidation": { "type": "boolean", "description": "A boolean field indicating that payment method post code is validate or not", "example": false }, "paymentMethodType": { "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" ] }, "creditCardGateWayToken": { "type": "string", "description": "Credit card gateway token" }, "gatewayCustomerId": { "type": "string", "description": "A provided id to reference this payment method uniquely", "example": "cus_NvH7QU3I0O50DG" }, "description": { "type": "string", "description": "Payment method description", "example": "Payment description" }, "status": { "type": "string", "description": "Payment method status like ACTIVE, INACTIVE, CANCELED OR EXPIRED", "example": "ACTIVE", "enum": [ "ACTIVE", "INACTIVE", "CANCELED", "EXPIRED" ] }, "oneTime": { "type": "boolean", "description": "A boolean field indicating that if this payment method should be available for further use or not", "example": false }, "testPaymentMethod": { "type": "boolean", "description": "A boolean field indicating that if the payment method for testing or not.True if this payment method is associated with a test/staging payment gateway", "example": false }, "externalPaymentMethodId": { "type": "string", "description": "External payment method id", "example": "pm_1N9Qb2DOMlRAd5wBTXN469uO" }, "accountType": { "type": "string", "description": "Account type of the payment method", "example": "checking" }, "bankName": { "type": "string", "description": "Bank name of the payment method", "example": "Abc bank of USA" }, "routingNumber": { "type": "string", "description": "Routing number of the payment method", "example": "125000105" }, "swiftCode": { "type": "string", "description": "Swift of the payment method", "example": "USBKUS44IMT" }, "accountNumber": { "type": "string", "description": "Account number of the payment method", "example": "46113503456147593489" }, "billingDetails": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.BillingDetails" }, "cancellationDate": { "type": "string", "format": "date-time" }, "cancellationReason": { "type": "string" } } }, "com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodImportRequest": { "required": [ "externalPaymentMethodIds", "gatewayAccountId", "gatewayId" ], "type": "object", "properties": { "gatewayId": { "type": "string", "example": "pmtgw_INSDH99X5phboiPD" }, "gatewayAccountId": { "type": "string", "example": "cus_NdLbfYr2zhEkHm" }, "externalPaymentMethodIds": { "uniqueItems": true, "type": "array", "example": [ "pm_1N0RTjFlgb12q7barLBprPIx", "card_1N0RU9Flgb12q7babgrGefrp" ], "items": { "type": "string", "example": "[\"pm_1N0RTjFlgb12q7barLBprPIx\",\"card_1N0RU9Flgb12q7babgrGefrp\"]" } } } }, "com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodImportResponse": { "required": [ "existingPaymentMethods", "failedImports", "gatewayAccount", "succeededImports" ], "type": "object", "properties": { "gatewayAccount": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.GatewayAccountData" }, "succeededImports": { "uniqueItems": true, "type": "array", "description": "List of successful payment method imports", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodData" } }, "failedImports": { "uniqueItems": true, "type": "array", "description": "List of failed payment method imports", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.FailedImport" } }, "existingPaymentMethods": { "uniqueItems": true, "type": "array", "description": "List of payment methods that are already imported", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodData" } } } }, "com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.payment.dto.paymentmethod.PaymentMethodSaveDto": { "type": "object", "properties": { "paymentToken": { "type": "string", "description": "A token that is used to retrieve a payment method from the associated gateway and create a MonetizeNow payment method", "example": "seti_1IdyQpBXyD37Yf5RdFyzvmhO" }, "paymentGatewayId": { "type": "string", "description": "Unique identifier for the payment gateway", "example": "pmtgw_EMfbqn56S9h9CweL" }, "customId": { "type": "string", "description": "A user provided identifier for the payment method", "example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" }, "paymentMethodName": { "type": "string", "description": "Name of the payment method", "example": "USW's payment" }, "description": { "type": "string", "description": "Payment method description", "example": "USW's payment gateway" }, "oneTime": { "type": "boolean", "description": "A boolean field indicating that if this payment method should be available for further use or not", "example": false }, "testPaymentMethod": { "type": "boolean", "description": "A boolean field indicating that if the payment method for testing or not.True if this payment method is associated with a test/staging payment gateway", "example": false }, "defaultPaymentMethod": { "type": "boolean", "description": "A boolean field indicating that it is the default payment method or not", "example": false, "deprecated": true }, "billingDetails": { "$ref": "#/components/schemas/com.monytyz.billing.payment.dto.paymentmethod.BillingDetails" } } }, "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.payment.dto.refund.RefundDto": { "required": [ "amount", "createDate", "createdBy", "currency", "externalId", "id", "lastModifiedBy", "modifyDate", "paymentId", "reason", "status" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the refund", "example": "rfnd_sf232ljhwlC232kB" }, "externalId": { "type": "string", "description": "Reference of the unique identifier for the refund on the payment gateway", "example": "re_3MRkCmBXyD37Yf5R1cKHdKyp" }, "paymentId": { "type": "string", "description": "Unique identifier for the payment", "example": "pmt_m0CB9LflojZxytfC" }, "amount": { "type": "number", "description": "Amount to refund", "example": 100 }, "status": { "type": "string", "description": "Status of the refund. Status can be SUCCEEDED, PENDING, FAILED or CANCELED", "example": "SUCCEEDED", "enum": [ "SUCCEEDED", "PENDING", "FAILED", "CANCELED" ] }, "reason": { "type": "string", "description": "Reason for the refund. Value can be BILLING_ERROR, SERVICE_ISSUE, CANCELLATION, ADJUSTMENT or OTHER", "example": "OTHER", "deprecated": true, "enum": [ "BILLING_ERROR", "SERVICE_ISSUE", "CANCELLATION", "ADJUSTMENT", "OTHER" ] }, "otherReason": { "type": "string", "description": "Description for the other reason. Only applicable when reason is OTHER", "example": "Voiding Invoice" }, "errorCode": { "type": "string", "description": "Error code for the refund failure", "example": "resource_missing" }, "errorMessage": { "type": "string", "description": "Error message for the refund failure", "example": "No such charge: 'ch_1IuuJABXyD37Yf5RC6bEdN3'" }, "createdBy": { "type": "string", "description": "Identifier for the user who created the record", "example": "usr_bPlPK7Xl4g36MCg4" }, "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_bPlPK7Xl4g36MCg4" }, "modifyDate": { "type": "string", "description": "Timestamp of when the record was last modified", "format": "date-time" }, "currency": { "type": "string", "description": "Currency for the refund", "example": "USD", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] } } }, "com.monytyz.billing.payment.dto.refund.RefundInitiateDto": { "required": [ "amount", "reason" ], "type": "object", "properties": { "amount": { "minimum": 0, "exclusiveMinimum": true, "type": "number", "description": "Amount to refund", "example": 100 }, "reason": { "type": "string", "description": "Reason for the refund. Value can be BILLING_ERROR, SERVICE_ISSUE, CANCELLATION, ADJUSTMENT or OTHER", "example": "OTHER", "deprecated": true, "enum": [ "BILLING_ERROR", "SERVICE_ISSUE", "CANCELLATION", "ADJUSTMENT", "OTHER" ] }, "otherReason": { "type": "string", "description": "Description for the other reason. Only applicable when reason is OTHER", "nullable": true, "example": "Voiding Invoice" } } }, "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.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.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" } } }, "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.quote.controller.v2.ProcessedQuoteResponseDto": { "required": [ "contractId", "orderId", "quoteId" ], "type": "object", "properties": { "contractId": { "type": "string" }, "quoteId": { "type": "string" }, "orderId": { "type": "string" } } }, "com.monytyz.billing.quote.dto.approval.QuoteApprovalDto": { "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", "example": "qtapr_miQeAK8wW4jwvBoY" }, "ruleId": { "type": "string", "format": "uuid", "example": "fd055285-38d5-460e-8074-701211b467b6" }, "userId": { "type": "string", "example": "usr_X0XZ05bvkrB1RpLS" }, "username": { "type": "string", "example": "Bob Smith" }, "teamId": { "type": "string", "example": "team_REGwM7fYVn3DkvFa" }, "teamName": { "type": "string", "example": "USW Sales" }, "approverId": { "type": "string", "example": "usr_X0XZ05bvkrB1RpLS" }, "approverName": { "type": "string", "example": "Bob Smith" }, "declinerId": { "type": "string", "example": "usr_X0XZ05bvkrB1RpLS" }, "declinerName": { "type": "string", "example": "Bob Smith" }, "name": { "type": "string", "example": "Rule 1" }, "description": { "type": "string", "example": "US West Sales" }, "rank": { "type": "integer", "format": "int32", "example": 1 }, "status": { "type": "string", "enum": [ "NO_ACTION", "APPROVED", "DECLINED" ] }, "declineReason": { "type": "string", "example": "Insufficient Credit" }, "approvalTimestamp": { "type": "string", "format": "date-time" }, "declinedTimestamp": { "type": "string", "format": "date-time" }, "skipped": { "type": "boolean" }, "quoteId": { "type": "string", "example": "quote_cHCX0TFN79rDgDyg" }, "mandatory": { "type": "boolean" }, "currentUserApprover": { "type": "boolean" }, "lifecycleBehavior": { "type": "string", "enum": [ "RESET_APPROVAL", "RETAIN_APPROVAL" ] } } }, "com.monytyz.billing.quote.dto.conditionalTerm.QuoteConditionalTermsDto": { "required": [ "displayOrder", "editableOnQuote", "edited", "id", "quoteId", "ruleId", "ruleName", "status", "terms" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the quote conditional terms", "example": "qctrm_1PAqM59qN79z0" }, "ruleId": { "type": "string", "description": "Rule id for the quote conditional terms", "format": "uuid", "example": "0f89ace5-17a7-41d2-8edd-6abed74f0f99" }, "quoteId": { "type": "string", "description": "Associated Quote Id for the quote conditional terms", "example": "quot_dPmTflW9NSGMe" }, "terms": { "type": "string", "description": "Quote conditional terms content", "example": "Test quote conditional term" }, "displayOrder": { "type": "integer", "description": "Display order for the quote conditional terms", "format": "int32", "example": 1 }, "editableOnQuote": { "type": "boolean", "description": "Boolean value to describe whether it's editable on the quote", "example": false }, "ruleName": { "type": "string", "description": "Rule name of the quote conditional terms", "example": "Membership Beta" }, "status": { "type": "string", "description": "Quote conditional term status. It can be ACTIVE or INACTIVE", "example": "ACTIVE", "enum": [ "ACTIVE", "INACTIVE" ] }, "edited": { "type": "boolean", "description": "Boolean value to indicate whether the quote conditional term is edited", "example": false }, "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" } } }, "com.monytyz.billing.quote.dto.quote.QuoteAcceptanceDto": { "type": "object", "properties": { "acceptanceReason": { "type": "string" }, "mode": { "type": "string", "enum": [ "PROCESS_AUTOMATICALLY", "PAUSE_AT_ACCEPTED" ] } } }, "com.monytyz.billing.quote.dto.quote.QuoteAcceptanceRequest": { "type": "object", "properties": { "mode": { "type": "string", "enum": [ "PROCESS_AUTOMATICALLY", "PAUSE_AT_ACCEPTED" ] } } }, "com.monytyz.billing.quote.dto.quote.QuoteBasicDto": { "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", "example": "quote_cHCX0TFN79rDgDyg" }, "description": { "type": "string", "example": "Netflix Premium" }, "type": { "type": "string", "enum": [ "NEW", "AMENDMENT", "RENEWAL" ] }, "status": { "type": "string", "enum": [ "DRAFT", "REVIEW", "APPROVED", "DENIED", "SENT", "ACCEPTED", "ACCEPTED_ADMIN_EDITABLE", "PROCESSED", "CANCELED", "EXPIRED", "ARCHIVED" ] }, "amount": { "type": "number", "example": 1000000 }, "acceptedAt": { "type": "string", "format": "date-time" }, "contractId": { "type": "string" }, "contractAmount": { "type": "number", "example": 10000000000 }, "contractLength": { "type": "integer", "format": "int32" }, "contractStartDate": { "type": "string", "format": "date" }, "contractEndDate": { "type": "string", "format": "date" }, "accountId": { "type": "string" }, "accountName": { "type": "string", "example": "Netflix" }, "secondaryAccountId": { "type": "string" }, "secondaryAccountName": { "type": "string", "example": "Netflix and Disney MovieAggregator" }, "billingAccountId": { "type": "string" }, "opportunity": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.opportunity.OpportunityBasicDto" }, "ownerId": { "type": "string", "example": "usr_qDfP1sOyHShW2oGZ" }, "ownerName": { "type": "string", "example": "John Dew" }, "billGroupId": { "type": "string" }, "currency": { "type": "string", "example": "currency", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "customFields": { "type": "object", "additionalProperties": { "type": "object" } }, "migrated": { "type": "boolean" }, "sentDate": { "type": "string", "format": "date-time" }, "processedAt": { "type": "string", "format": "date-time" } } }, "com.monytyz.billing.quote.dto.quote.QuoteContactsReadDto": { "type": "object", "properties": { "primary": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" }, "billing": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" }, "esign": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" } }, "additionalSigners": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" } }, "additionalESignRecipients": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.contact.ContactSnapshotDto" } } } }, "com.monytyz.billing.quote.dto.quote.QuoteContactsWriteDto": { "required": [ "esignIds" ], "type": "object", "properties": { "primaryId": { "type": "string" }, "billingId": { "type": "string" }, "esignIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "additionalSignerIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "esignCcIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } } }, "com.monytyz.billing.quote.dto.quote.QuoteCreateData": { "required": [ "autoRenewContract", "collaborationAccess", "contractLength", "description", "requiresEsign" ], "type": "object", "properties": { "customId": { "type": "string", "description": "A user provided unique identifier for the quote", "nullable": true }, "description": { "type": "string", "description": "Description of the quote" }, "opportunityId": { "type": "string", "description": "Unique identifier for the quote's opportunity", "nullable": true }, "accountId": { "type": "string", "description": "Unique identifier for the quote's account" }, "secondaryAccountId": { "type": "string", "description": "Unique identifier for the quote's secondary account", "nullable": true }, "billingAccountId": { "type": "string", "description": "Billing account ID associated with this quote", "nullable": true }, "billGroupId": { "type": "string", "description": "Unique identifier for the quote's bill group", "nullable": true }, "expirationDate": { "type": "string", "description": "The date in which the quote expires", "format": "date", "nullable": true }, "netTerms": { "type": "string", "description": "Net terms of the quote", "nullable": true, "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" ] }, "contractStartDate": { "type": "string", "description": "The date in which the quote's contract will start", "format": "date", "nullable": true }, "contractLength": { "type": "integer", "description": "The duration of the contract in months", "format": "int32", "nullable": true }, "contractTerms": { "type": "string", "description": "The terms of the contract", "nullable": true }, "documentUrl": { "type": "string", "description": "The URI pointing to where the quote's document is located", "format": "uri", "nullable": true }, "autoRenewContract": { "type": "boolean", "description": "A boolean flag indicating whether to renew the contract at the end or term" }, "requiresEsign": { "type": "boolean", "description": "A boolean flag indicating whether esign is required or not" }, "collaborationAccess": { "type": "string", "description": "Type of access to enabled to other users for this quote", "enum": [ "NONE", "VIEW", "EDIT" ] }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "A key value map of custom data to attach to the quote. Fields must be configured at the tenant level", "nullable": true }, "description": "A key value map of custom data to attach to the quote. Fields must be configured at the tenant level", "nullable": true }, "legalEntityId": { "type": "string", "description": "Unique identifier for the quote's legal entity", "nullable": true }, "currency": { "type": "string", "description": "The quote's currency", "nullable": true, "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "migrated": { "type": "boolean", "description": "A flag indicating whether this quote has been migrated", "nullable": true }, "contractRenewalTerms": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.renewal.ContractRenewalTermsDto" }, "addressSourceOverride": { "type": "string", "nullable": true, "enum": [ "ACCOUNT", "CONTACT" ] }, "startDateSourceOverride": { "type": "string", "nullable": true, "enum": [ "ORIGINAL_CONTRACT_START", "AT_TIME_OF_SIGNING", "MANUAL" ] }, "newQuoteType": { "type": "string", "description": "Types of new quotes", "nullable": true, "enum": [ "NET_NEW", "MANUAL_RENEWAL", "EARLY_RENEWAL" ] }, "billingAnchor": { "$ref": "#/components/schemas/com.monytyz.billing.data.cpq.BillingAnchorData" } } }, "com.monytyz.billing.quote.dto.quote.QuoteDetailDto": { "required": [ "description", "id" ], "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", "example": "quote_cHCX0TFN79rDgDyg" }, "fromCompany": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.CompanyInfoSnapshotDto" }, "customId": { "type": "string", "example": "c993f52b-0bbd-454b-9849-fd6c1991efb6" }, "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": { "type": "string", "example": "Netflix Basic" }, "opportunity": { "$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityResponseDto" }, "accountName": { "type": "string", "example": "Netflix" }, "orderId": { "type": "string", "example": "order_qKthVa5dL2IKEZCP" }, "accountId": { "type": "string", "example": "acct_m0CB9LflojZxytfC" }, "secondaryAccountId": { "type": "string", "example": "acct_secondary123" }, "secondaryAccountName": { "type": "string", "example": "Secondary Account" }, "billingAccountId": { "type": "string", "example": "acct_billing123" }, "contractId": { "type": "string", "example": "ctrct_QEPqCDqeaVte5WzM" }, "previousContractId": { "type": "string", "example": "ctrct_QEPqCDqeaVte5WzM" }, "originalQuoteId": { "type": "string", "example": "quote_4DI7o8yHMYcJQnu4" }, "previousQuoteId": { "type": "string", "example": "quote_5UIto8yHMYcJQnhg" }, "contacts": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteContactsReadDto" }, "billGroupId": { "type": "string", "example": "billg_tDbC2FxuCwQoxcjm" }, "expirationDate": { "type": "string", "format": "date" }, "approvalSubmittedAt": { "type": "string", "format": "date-time" }, "approvalGrantedAt": { "type": "string", "format": "date-time" }, "credit": { "type": "number", "example": 10000000 }, "contractAmount": { "type": "number", "example": 1000000000000 }, "amount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 1000000000000 }, "amountWithoutTax": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 900000000000 }, "discountAmount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 10000 }, "discountPercent": { "type": "number", "example": 10 }, "amountWithoutDiscount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 800000000000 }, "documentLocation": { "type": "string", "example": "stobj_cUzmPU70ppWVU9P5" }, "documentUrl": { "type": "string", "example": "example.com/quote.pdf" }, "currency": { "type": "string", "enum": [ "AUD", "BYN", "CAD", "CNY", "DKK", "EUR", "GBP", "INR", "ISK", "MYR", "NOK", "SEK", "SGD", "TWD", "USD" ] }, "netTerms": { "type": "string", "example": "NET_30", "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" ] }, "previousNetTerms": { "type": "string", "example": "NET_30", "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" ] }, "status": { "type": "string", "enum": [ "DRAFT", "REVIEW", "APPROVED", "DENIED", "SENT", "ACCEPTED", "ACCEPTED_ADMIN_EDITABLE", "PROCESSED", "CANCELED", "EXPIRED", "ARCHIVED" ] }, "manualAcceptanceReason": { "type": "string" }, "cancellationReason": { "type": "string", "enum": [ "EXPIRED", "CUSTOMER_DECLINED", "DUPLICATE", "BY_USER", "SUPERSEDED_BY_PROCESSED_QUOTE", "BY_MIGRATION" ] }, "startDateSource": { "type": "string", "enum": [ "ORIGINAL_CONTRACT_START", "AT_TIME_OF_SIGNING", "MANUAL" ] }, "contractStartDate": { "type": "string", "format": "date" }, "contractAmendmentDate": { "type": "string", "format": "date" }, "contractEndDate": { "type": "string", "format": "date" }, "contractLength": { "type": "integer", "format": "int32", "example": 12 }, "previousContractLength": { "type": "integer", "format": "int32", "example": 6 }, "contractTerms": { "type": "string", "example": "Contract terms" }, "approvals": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.approval.QuoteApprovalDto" } }, "validations": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.model.QuoteValidation" } }, "quoteOfferings": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingDetailDto" } }, "noteIds": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "owner": { "type": "string", "example": "usr_X0XZ05bvkrB1RpLS" }, "ownerName": { "type": "string", "example": "John Dew" }, "signedDocumentStorageId": { "type": "string", "example": "stobj_cUzmPU70ppWVU9P6" }, "sowDocumentStorageId": { "type": "string", "example": "stobj_sdWsU70svBVU8812" }, "revenueMetrics": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.revenuemetrics.QuoteRevenueDto" }, "declinedDate": { "type": "string", "format": "date-time" }, "sentDate": { "type": "string", "format": "date-time" }, "autoRenewContract": { "type": "boolean" }, "customPrices": { "type": "boolean" }, "requiresEsign": { "type": "boolean" }, "acceptedAt": { "type": "string", "format": "date-time" }, "processedAt": { "type": "string", "format": "date-time" }, "collaborationAccess": { "type": "string", "enum": [ "NONE", "VIEW", "EDIT" ] }, "purchaseOrderNumber": { "type": "string" }, "signingOrder": { "type": "string", "enum": [ "INTERNAL_FIRST", "EXTERNAL_FIRST", "EXTERNAL_ONLY", "INSTANTANEOUS" ] }, "accessLevel": { "type": "string", "example": "WRITE", "enum": [ "WRITE", "READ", "null" ] }, "coverDocumentStorageId": { "type": "string", "example": "stobj_yCxrWjGIxFy1Drv0" }, "footerDocumentStorageId": { "type": "string", "example": "stobj_9jYr3Ci7J8Vmdomo" }, "customFields": { "type": "object", "additionalProperties": { "type": "object" } }, "legalEntityId": { "type": "string", "example": "lgen_e33f05749111f" }, "conditionalTerms": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.conditionalTerm.QuoteConditionalTermsDto" } }, "addressSource": { "type": "string", "enum": [ "ACCOUNT", "CONTACT" ] }, "shippingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "billingAddress": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.address.AddressDto" }, "priceUpliftConfigurations": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigDto" } }, "contractRenewalTerms": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.renewal.ContractRenewalTermsDto" }, "amendmentVersion": { "$ref": "#/components/schemas/com.monytyz.billing.quote.model.AmendmentVersion" }, "incrementalPrices": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.QuoteHistoricalPriceResponse" }, "vatNumber": { "type": "string" }, "billingAnchor": { "$ref": "#/components/schemas/com.monytyz.billing.data.cpq.BillingAnchorData" }, "esignEnvelopeId": { "type": "string" }, "autoRenewal": { "type": "boolean" } } }, "com.monytyz.billing.quote.dto.quote.QuoteDraftRequest": { "required": [ "retainApprovalIds" ], "type": "object", "properties": { "retainApprovalIds": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.data.cpq.QuoteApprovalId" } } } }, "com.monytyz.billing.quote.dto.quote.QuoteListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.QuoteBasicDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.quote.dto.quote.QuoteStateTransitionNoteDto": { "type": "object", "properties": { "note": { "maxLength": 2000, "minLength": 0, "type": "string" } } }, "com.monytyz.billing.quote.dto.quote.QuoteUpdateData": { "required": [ "autoRenewContract", "contractLength", "netTerms", "requiresEsign" ], "type": "object", "properties": { "customId": { "type": "string", "description": "A user provided unique identifier for the quote", "nullable": true }, "secondaryAccountId": { "type": "string", "description": "Unique identifier for the quote's secondary account", "nullable": true }, "billingAccountId": { "type": "string", "description": "Billing account ID associated with this quote", "nullable": true }, "description": { "type": "string", "description": "Description of the quote" }, "expirationDate": { "type": "string", "description": "The date in which the quote expires", "format": "date", "nullable": true, "writeOnly": true }, "netTerms": { "type": "string", "description": "Net terms of the quote", "nullable": true, "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" ] }, "contractStartDate": { "type": "string", "description": "The date in which the quote's contract will start", "format": "date", "nullable": true }, "contractAmendmentDate": { "type": "string", "description": "The date in which the contract is being amended. This is only relevant for amendment quotes", "format": "date", "nullable": true }, "contractLength": { "type": "integer", "description": "The duration of the contract in months", "format": "int32", "nullable": true }, "contractTerms": { "type": "string", "description": "The terms of the contract", "nullable": true }, "documentUrl": { "type": "string", "description": "The URI pointing to where the quote's document is located", "format": "uri", "nullable": true }, "autoRenewContract": { "type": "boolean", "description": "A boolean flag indicating whether to renew the contract at the end or term" }, "requiresEsign": { "type": "boolean", "description": "A boolean flag indicating whether esign is required or not" }, "startDateSource": { "type": "string", "description": "The source of the start date for the contract", "nullable": true, "enum": [ "ORIGINAL_CONTRACT_START", "AT_TIME_OF_SIGNING", "MANUAL" ] }, "collaborationAccess": { "type": "string", "description": "Type of access to enabled to other users for this quote", "enum": [ "NONE", "VIEW", "EDIT" ] }, "customFields": { "type": "object", "additionalProperties": { "type": "object", "description": "A key value map of custom data to attach to the quote. Fields must be configured at the tenant level", "nullable": true }, "description": "A key value map of custom data to attach to the quote. Fields must be configured at the tenant level", "nullable": true }, "contractRenewalTerms": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.renewal.ContractRenewalTermsDto" }, "newQuoteType": { "type": "string", "description": "Types of new quotes", "nullable": true, "enum": [ "NET_NEW", "MANUAL_RENEWAL", "EARLY_RENEWAL" ] }, "billingAnchor": { "$ref": "#/components/schemas/com.monytyz.billing.data.cpq.BillingAnchorData" } } }, "com.monytyz.billing.quote.dto.quote.opportunity.OpportunityBasicDto": { "required": [ "id", "status" ], "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string", "enum": [ "WON", "CANCELED", "ACTIVE", "LOST" ] }, "dealRoomId": { "type": "string" } } }, "com.monytyz.billing.quote.dto.quote.opportunity.QuoteOpportunityDto": { "type": "object", "properties": { "opportunity": { "$ref": "#/components/schemas/com.monytyz.billing.opportunity.dto.OpportunityResponseDto" } } }, "com.monytyz.billing.quote.dto.quote.renewal.ContractRenewalTermsDto": { "type": "object", "properties": { "contractEndAction": { "type": "string", "description": "Represents action to be taken after a contract end. Possible values `RENEW` and `CANCEL`", "example": "CANCEL", "enum": [ "MANUAL_RENEW", "RENEW", "CANCEL" ] }, "renewalTermLength": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quote.renewal.RenewalTermLength" }, "autoRenewalNoticePeriod": { "type": "integer", "description": "Notice period in days for automatic contract renewal", "format": "int32", "example": 10 } } }, "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.quote.dto.quote.renewal.RenewalTermLength": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } }, "discriminator": { "propertyName": "type" } }, "com.monytyz.billing.quote.dto.quote.validate.ArchiveQuoteError.InvalidStatus": { "required": [ "status" ], "type": "object", "properties": { "status": { "type": "string", "enum": [ "DRAFT", "REVIEW", "APPROVED", "DENIED", "SENT", "ACCEPTED", "ACCEPTED_ADMIN_EDITABLE", "PROCESSED", "CANCELED", "EXPIRED", "ARCHIVED" ] } } }, "com.monytyz.billing.quote.dto.quoteitem.QuoteItemDetailDto": { "required": [ "amount", "amountWithoutDiscount", "contractAmount", "displayUnitPrice", "isAddon", "quantity", "unitPrice", "unitPriceAfterDiscount" ], "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", "example": "quote_cHCX0TFN79rDgDyg" }, "customId": { "type": "string", "example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" }, "quoteOfferingId": { "type": "string", "example": "quoff_yaxpYI9w4AaI2blT" }, "productId": { "type": "string", "example": "prod_nStU73ZJahgBSxnh" }, "sku": { "type": "string", "example": "UGG-BB-PUR-06" }, "productName": { "type": "string", "example": "Netflix Premium" }, "productType": { "type": "string", "example": "Subscription", "enum": [ "ADVANCE", "ARREARS", "USAGE", "ONETIME", "ONETIME_PREPAID_CREDIT", "MIN_COMMIT" ] }, "subscriptionItemId": { "type": "string", "example": "subitm_9TkhFbhZ5oY4q2fw" }, "endDate": { "type": "string", "format": "date", "nullable": true }, "description": { "type": "string", "example": "Netflix Premium Monthly Subscription" }, "isAddon": { "type": "boolean" }, "addonId": { "type": "string" }, "debitProrationMultiplier": { "type": "number" }, "debit": { "type": "number" }, "creditProrationMultiplier": { "type": "number" }, "credit": { "type": "number" }, "amountWithoutDiscount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 900 }, "contractAmount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 1000 }, "amount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 1000 }, "unitPriceAfterDiscount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 10 }, "unitPrice": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 100 }, "quantity": { "minimum": 0, "type": "number", "format": "double", "example": 10 }, "customDiscountId": { "type": "string", "example": "disc_nStU73ZJahgBSxnh" }, "customDiscountType": { "type": "string", "enum": [ "FLAT", "PERCENTAGE" ] }, "customDiscountAmountOrPercent": { "type": "number", "example": 10 }, "customDiscountName": { "type": "string" }, "customDiscountDescription": { "type": "string" }, "discountAmount": { "type": "number", "example": 100 }, "discountPercent": { "type": "number", "example": 10 }, "previousDiscountAmount": { "type": "number", "example": 100 }, "previousDiscountPercent": { "type": "number", "example": 10 }, "amendmentStatus": { "type": "string", "enum": [ "ADDED", "NO_CHANGE", "REMOVED", "UPDATED" ] }, "previousItemId": { "type": "string", "example": "item_DHlWk4mIICkQabl0" }, "previousAmount": { "type": "number", "example": 10 }, "previousQuantity": { "type": "number", "format": "double", "example": 10 }, "previousCustomDiscountId": { "type": "string", "example": "disc_DHlWk4mIICkQabl0" }, "previousCustomDiscountType": { "type": "string", "enum": [ "FLAT", "PERCENTAGE" ] }, "previousCustomDiscountAmountOrPercent": { "type": "number", "example": 10 }, "discounts": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteitem.QuoteItemDiscountDto" } }, "customPriceId": { "type": "string" }, "customPrice": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.customprice.CustomPriceDto" }, "revenueMetrics": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.revenuemetrics.RevenueDataDto" }, "options": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteitem.QuoteItemOptionsDto" }, "displayUnitPrice": { "type": "number", "example": 100 }, "position": { "type": "integer", "format": "int32", "example": 1 }, "notes": { "type": "string" }, "customDiscountLifecyclePolicies": { "uniqueItems": true, "type": "array", "items": { "type": "string", "enum": [ "EXCLUDE_FROM_RENEWAL" ] } } } }, "com.monytyz.billing.quote.dto.quoteitem.QuoteItemDiscountDto": { "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" }, "discountId": { "type": "string", "example": "discc_9TkhFbhZ5oY4q2fw" }, "discountName": { "type": "string", "example": "Flat Discount" }, "discountType": { "type": "string", "enum": [ "FLAT", "PERCENTAGE" ] }, "discountAmountOrPercent": { "type": "number", "example": 10 }, "discountAmount": { "type": "number", "example": 100 } } }, "com.monytyz.billing.quote.dto.quoteitem.QuoteItemOptionsDto": { "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.dto.quoteitem.QuoteItemSaveDto": { "required": [ "productId", "quantity" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the quote item", "nullable": true, "example": "qtitm_OGDOirIXE2ukzwNJ" }, "customId": { "maxLength": 255, "minLength": 0, "type": "string", "description": "A user provided unique identifier for the quote item", "nullable": true, "example": "6b48c3f6-852e-4cd7-b4f4-a35ad60ad483" }, "productId": { "type": "string", "description": "Unique identifier for the quote item's product", "example": "prod_nStU73ZJahgBSxnh" }, "description": { "maxLength": 255, "minLength": 0, "type": "string", "description": "Description of the quote item", "example": "The item description" }, "quantity": { "minimum": 0, "type": "number", "description": "The quantity of the quote item", "format": "double", "example": 10 }, "customDiscountType": { "type": "string", "description": "Type of the discount that is custom for the account and quote item", "nullable": true, "enum": [ "FLAT", "PERCENTAGE" ] }, "customDiscountAmountOrPercent": { "type": "number", "description": "Amount or percentage (depending on the custome discount type) of the discount that is custom for the account and quote item", "nullable": true }, "customDiscountName": { "maxLength": 255, "minLength": 0, "type": "string", "description": "Name of the discount that is custom for the account and quote item", "nullable": true }, "customDiscountDescription": { "maxLength": 255, "minLength": 0, "type": "string", "description": "Description of the discount that is custom for the account and quote item", "nullable": true }, "customPrice": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.customprice.CustomPriceSaveDto" }, "options": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteitem.QuoteItemOptionsDto" }, "notes": { "maxLength": 2000, "minLength": 0, "type": "string", "description": "Note tagged to the quote item", "nullable": true }, "customDiscountLifecyclePolicies": { "uniqueItems": true, "type": "array", "description": "List of lifecycle policies for the discount", "nullable": true, "items": { "type": "string", "description": "List of lifecycle policies for the discount", "nullable": true, "enum": [ "EXCLUDE_FROM_RENEWAL" ] } } }, "description": "List of quote items" }, "com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingDetailDto": { "required": [ "amount", "amountWithoutDiscount", "id" ], "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", "example": "quoff_yaxpYI9w4AaI2blT" }, "quoteId": { "type": "string", "example": "quote_cHCX0TFN79rDgDyg" }, "offeringId": { "type": "string", "example": "offer_iJuVJLgQKIFc98RE" }, "rateId": { "type": "string", "description": "Unique identifier for the rate", "example": "rate_fvCOerGF0bC8JuV2" }, "priceUpliftConfigurationId": { "type": "string", "example": "pucfg_fvCOerGF0bC8JuV2" }, "subscriptionId": { "type": "string", "example": "subsc_9TkhFbhZ5oY4q2fw" }, "description": { "type": "string", "example": "Netflix Basic Monthly" }, "offeringName": { "type": "string", "example": "Monthly Offer" }, "offeringDescription": { "type": "string", "example": "Netflix Monthly Offer" }, "rateName": { "type": "string", "description": "Name of the rate. This name of the rate will appear on quotes", "example": "Monthly Rate" }, "rateDescription": { "type": "string", "description": "Description of the rate", "example": "Netflix Monthly Rate" }, "billingFrequency": { "type": "string", "description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are MONTHLY, QUARTERLY, ANNUALLY", "example": "Monthly", "enum": [ "DAILY", "MONTHLY", "QUARTERLY", "SEMIANNUALLY", "ANNUALLY", "ONETIME", "CUSTOM" ] }, "billingFrequencyInMonths": { "type": "integer", "description": "Represents the billing frequency of the rate. A subscription using this rate will be billed at this frequency. Valid values are between 1 to 60 (months)", "format": "int32", "example": 1 }, "subscriptionTiming": { "type": "string", "description": "Defines if you want a subscription to be billed in advance or in arrears", "example": "ADVANCE", "enum": [ "ADVANCE", "ARREARS" ] }, "debitProrationMultiplier": { "type": "number", "example": 2 }, "debit": { "type": "number", "example": 10000 }, "creditProrationMultiplier": { "type": "number", "example": 1 }, "credit": { "type": "number", "example": 100000000 }, "amountWithoutDiscount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 900 }, "amount": { "minimum": 0, "exclusiveMinimum": false, "type": "number", "example": 1000 }, "discountAmount": { "type": "number", "example": 100 }, "discountPercent": { "type": "number", "example": 10 }, "previousId": { "type": "string", "example": "disc_m0CB9LflojZxytfC" }, "previousRateId": { "type": "string", "example": "rate_fvCOerGF0bC8JuV2" }, "previousAmount": { "type": "number", "example": 100000 }, "startDate": { "type": "string", "format": "date", "example": "2022-01-31" }, "endDate": { "type": "string", "format": "date", "example": "2022-01-31" }, "parentQuoteOfferingId": { "type": "string", "example": "quoff_iJuVJLgQKIFc98RE" }, "items": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteitem.QuoteItemDetailDto" } }, "discounts": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.discount.DiscountDto" } }, "revenueMetrics": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.revenuemetrics.RevenueDataDto" }, "locked": { "type": "boolean" }, "accountSpecificRate": { "type": "boolean", "description": "A boolean field indicating if the Rate is specific to an account or not", "example": true }, "options": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingOptionsDto" }, "role": { "type": "string", "enum": [ "STANDARD", "REFERENCE" ] }, "position": { "type": "integer", "format": "int32" }, "added": { "type": "boolean" }, "removed": { "type": "boolean" } } }, "com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingOptionsDto": { "required": [ "priceDisplay" ], "type": "object", "properties": { "priceDisplay": { "type": "string", "enum": [ "PRODUCT", "OFFERING" ] } } }, "com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingSaveDto": { "required": [ "description", "items", "offeringId", "rateId" ], "type": "object", "properties": { "offeringId": { "type": "string", "description": "Unique identifier for the quote offering's offering", "example": "offer_iJuVJLgQKIFc98RE" }, "rateId": { "type": "string", "description": "Unique identifier for the quote offering's rate", "example": "rate_fvCOerGF0bC8JuV2" }, "description": { "maxLength": 255, "minLength": 0, "type": "string", "description": "Description of the quote offering", "example": "Netflix Monthly Subscription" }, "items": { "uniqueItems": true, "type": "array", "description": "List of quote items", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteitem.QuoteItemSaveDto" } }, "discountIds": { "uniqueItems": true, "type": "array", "description": "List of discount ids", "items": { "type": "string", "description": "List of discount ids" } }, "schedule": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingScheduleDto" }, "startDate": { "type": "string", "description": "Start date of the root offering. Only applicable for root offering requests.", "format": "date" }, "endDate": { "type": "string", "description": "End date of the root offering. Only applicable for root offering requests.", "format": "date", "nullable": true }, "options": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingOptionsDto" } } }, "com.monytyz.billing.quote.dto.quoteoffering.QuoteOfferingScheduleDto": { "required": [ "parentQuoteOfferingId", "startDate" ], "type": "object", "properties": { "startDate": { "type": "string", "description": "The start date of the ramp", "format": "date", "example": "2022-01-31" }, "parentQuoteOfferingId": { "type": "string", "description": "The id of the root offering the ramp is being created for", "example": "quoff_iJuVJLgQKIFc98RE" }, "endDate": { "type": "string", "description": "Optional end date of the ramp. If excluded it will derived based off the current quote offering's group configuration", "format": "date", "nullable": true, "example": "2022-02-28" } }, "description": "Schedule of a ramp offering. Only applicable for ramp offering requests", "nullable": true }, "com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigDto": { "required": [ "id", "locked", "type" ], "type": "object", "properties": { "id": { "type": "string" }, "type": { "type": "string", "enum": [ "APPLY_TO_ALL_PRODUCTS", "PRODUCT_SPECIFIC" ] }, "locked": { "type": "boolean" } }, "discriminator": { "propertyName": "type" } }, "com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "enum": [ "APPLY_TO_ALL_PRODUCTS", "PRODUCT_SPECIFIC" ] } }, "discriminator": { "propertyName": "type" } }, "com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData.ApplyToAllProducts": { "required": [ "amount", "percentageType", "type" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData" }, { "type": "object", "properties": { "percentageType": { "type": "string", "enum": [ "MAX", "FIXED" ] }, "amount": { "type": "number", "format": "double" } } } ] }, "com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData.ProductSpecific": { "required": [ "productConfigurations", "type" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.PriceUpliftConfigSaveData" }, { "type": "object", "properties": { "productConfigurations": { "uniqueItems": true, "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.ProductConfiguration" } } } } ] }, "com.monytyz.billing.quote.dto.quoteoffering.priceupliftconfiguration.ProductConfiguration": { "required": [ "amount", "percentageType", "productId" ], "type": "object", "properties": { "productId": { "type": "string" }, "amount": { "type": "number", "format": "double" }, "percentageType": { "type": "string", "enum": [ "MAX", "FIXED" ] } } }, "com.monytyz.billing.quote.dto.revenuemetrics.QuoteRevenueDto": { "type": "object", "properties": { "arr": { "type": "number", "example": 1200 }, "mrr": { "type": "number", "example": 100 }, "incrementalMrr": { "type": "number", "example": 100 }, "percentage": { "type": "number", "example": 10 }, "incrementalArr": { "type": "number", "example": 100 }, "previousArr": { "type": "number", "example": 0 }, "previousMrr": { "type": "number", "example": 0 } } }, "com.monytyz.billing.quote.dto.revenuemetrics.RevenueDataDto": { "required": [ "arr", "effectiveArr", "effectiveIncrementalArr", "effectiveIncrementalMrr", "effectiveMrr", "incrementalArr", "incrementalMrr", "mrr" ], "type": "object", "properties": { "arr": { "type": "number" }, "incrementalArr": { "type": "number" }, "effectiveArr": { "type": "number" }, "effectiveIncrementalArr": { "type": "number" }, "mrr": { "type": "number" }, "incrementalMrr": { "type": "number" }, "effectiveMrr": { "type": "number" }, "effectiveIncrementalMrr": { "type": "number" } } }, "com.monytyz.billing.quote.model.AmendmentVersion": { "required": [ "versionString" ], "type": "object", "properties": { "versionString": { "type": "string" } } }, "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.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.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.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.quote.model.QuoteESignContactId": { "type": "object", "properties": { "contactId": { "type": "string" }, "quoteId": { "type": "string" } } }, "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.QuoteESignContactSnapshotId": { "type": "object" }, "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.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.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" }, "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.quote.model.QuoteOfferingOptions": { "required": [ "priceDisplay" ], "type": "object", "properties": { "priceDisplay": { "type": "string", "enum": [ "PRODUCT", "OFFERING" ] } } }, "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.quote.model.internal.quote.BillingPeriod": { "type": "object", "properties": { "start": { "type": "string", "format": "date" }, "end": { "type": "string", "format": "date" } } }, "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.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.quote.v2.core.QuoteCreationSource": { "required": [ "serialized" ], "type": "object", "properties": { "serialized": { "type": "string" } } }, "com.monytyz.billing.storage.dto.StorageObjectDto": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the storage object", "example": "stobj_9mKcK14J28T1wucn" }, "filename": { "type": "string", "description": "Name of the file", "example": "sample.pdf" }, "mediaType": { "type": "string", "description": "Media type of the file", "example": "application/pdf" }, "type": { "type": "string", "description": "Storage type of the storage object like MSA, NDA, ESIGN, SOW etc", "example": "MSA", "enum": [ "MSA", "DPA", "NPA", "NDA", "LOGO", "ESIGN", "SOW", "COVER", "FOOTER", "ATTACHMENT" ] }, "referenceType": { "type": "string", "description": "Reference type of the storage object like QUOTE, COMPANY_CONFIG and QUOTE_CONFIG", "example": "QUOTE", "enum": [ "QUOTE", "COMPANY_CONFIG", "QUOTE_CONFIG", "LEGAL_ENTITY", "DEAL_ROOM", "RESOURCE_REFERENCE", "ACCOUNT_DOCUMENT" ] }, "referenceId": { "type": "string", "description": "Reference Id of the storage object", "example": "quote_tFGfviu7pmUo7w3k" }, "referenceFilename": { "type": "string", "description": "Reference file name of the storage object", "example": "sample.pdf" } } }, "com.monytyz.billing.subscription.dto.subscription.SubscriptionDetailDto": { "required": [ "id" ], "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 subscription", "example": "subs_9TkhFbhZ5oY4q" }, "referenceId": { "type": "string", "description": "A user provided reference identifier for the subscription", "example": "Sub1" }, "customId": { "type": "string", "description": "A user provided identifier for the subscription", "example": "c993f52b-0bbd-454b-9849-fd6c1991efb6" }, "account": { "$ref": "#/components/schemas/com.monytyz.billing.customer.dto.account.AccountData" }, "billGroupId": { "type": "string", "description": "Unique identifier for the bill group", "example": "bilg_tDbC2FxuCwQox" }, "offering": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.offering.OfferingDto" }, "rateId": { "type": "string", "description": "Unique identifier for the rate", "example": "rate_9TkhFbhZ5oY4q" }, "subscriptionItems": { "uniqueItems": true, "type": "array", "description": "List of subscription items", "items": { "$ref": "#/components/schemas/com.monytyz.billing.subscription.dto.subscriptionitem.SubscriptionItemDetailDto" } }, "description": { "type": "string", "description": "Description of the subscription", "example": "Monthly Subscription" }, "nextBillDate": { "type": "string", "description": "Next bill date of the subscription", "format": "date", "example": "2020-02-01" }, "nextUsageBillDate": { "type": "string", "description": "Next usage bill date of the subscription", "format": "date", "example": "2020-02-01" }, "addOn": { "type": "boolean", "description": "Boolean value indicating if it is an Add-on subscription", "example": false }, "billingStatus": { "type": "string", "description": "Billing status of the subscription", "example": "ACTIVE", "enum": [ "ACTIVE", "CANCELED", "PENDING", "SUSPENDED" ] }, "provisioningStatus": { "type": "string", "description": "Provisioning status of the subscription", "example": "PROVISIONED", "enum": [ "CANCELED", "PENDING", "PROVISIONED", "SUSPENDED", "INACTIVE", "DELETED" ] }, "discounts": { "uniqueItems": true, "type": "array", "description": "Discount details associated with the subscription", "items": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.discount.DiscountDto" } }, "periodStartDate": { "type": "string", "description": "Start date of the billing period", "format": "date-time" }, "periodEndDate": { "type": "string", "description": "End date of the billing period", "format": "date-time" }, "usagePeriodStart": { "type": "string", "description": "Start date of the usage period", "format": "date-time" }, "usagePeriodEnd": { "type": "string", "description": "End date of the usage period", "format": "date-time" }, "prorationDate": { "type": "string", "description": "Proration date of the subscription", "format": "date", "example": "2020-01-15" }, "mrr": { "type": "number", "description": "Monthly recurring revenue of the subscription", "example": 10 }, "locked": { "type": "boolean", "description": "Boolean value indicating if the subscription is locked", "example": false }, "quoteOfferingId": { "type": "string", "description": "Unique identifier for the quote offering", "example": "quof_WXC0CKpjXaWUB" } } }, "com.monytyz.billing.subscription.dto.subscription.SubscriptionListDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionDetailDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.subscription.dto.subscriptionitem.SubscriptionItemDetailDto": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the subscription item", "example": "suit_9TkhFbhZ5oY4q2fw" }, "description": { "type": "string", "description": "Description of the subscription item", "example": "Netflix Subscription" }, "units": { "type": "number", "description": "Unit/Quantity of the subscription item within a subscription", "format": "double", "example": 5 }, "product": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto" }, "orderItemId": { "type": "string", "example": "orit_GA1jSFv4Lzs3V34y" }, "customPrice": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.customprice.CustomPriceDto" }, "applicableItemDiscounts": { "uniqueItems": true, "type": "array", "description": "List of applicable item discounts", "items": { "$ref": "#/components/schemas/com.monytyz.billing.subscription.dto.subscriptionitem.SubscriptionItemDiscountDto" } }, "quoteItemId": { "type": "string", "description": "Unique identifier for the quote item", "example": "qtit_GA1jSFv4Lzs3V34y" }, "isActive": { "type": "boolean" } }, "description": "List of subscription items" }, "com.monytyz.billing.subscription.dto.subscriptionitem.SubscriptionItemDiscountDto": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the subscription item", "example": "suit_9TkhFbhZ5oY4q2fw" }, "discount": { "$ref": "#/components/schemas/com.monytyz.billing.catalog.dto.discount.DiscountDto" }, "applicableDiscountType": { "type": "string", "description": "Type of discount. Valid values are PERCENTAGE, FLAT", "example": "PERCENTAGE", "enum": [ "FLAT", "PERCENTAGE" ] }, "applicableDiscountAmount": { "type": "number", "description": "Discount amount of the subscription", "example": 100 } }, "description": "List of applicable item discounts" }, "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.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.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.transactable.SourceId": { "required": [ "value" ], "type": "object", "properties": { "value": { "type": "string" } } }, "com.monytyz.billing.transactable.TargetId": { "required": [ "value" ], "type": "object", "properties": { "value": { "type": "string" } } }, "com.monytyz.billing.transactable.dto.AggregatedSourceApplicationSummary": { "required": [ "amount", "targetId", "targetType" ], "type": "object", "properties": { "targetId": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.TargetId" }, "targetType": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.model.enums.TargetType" }, "amount": { "type": "number" } }, "description": "Aggregated application(s) of the credit note" }, "com.monytyz.billing.transactable.dto.SourceApplicationSummary": { "required": [ "amount", "applicationDate", "targetId", "targetType", "type" ], "type": "object", "properties": { "targetId": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.TargetId" }, "targetType": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.model.enums.TargetType" }, "amount": { "type": "number" }, "type": { "type": "string", "enum": [ "APPLICATION", "UNAPPLICATION" ] }, "applicationDate": { "type": "string", "format": "date-time" } }, "description": "All application(s) of the credit note" }, "com.monytyz.billing.transactable.dto.TargetApplicationSummary": { "required": [ "amount", "applicationDate", "sourceId", "sourceType", "type" ], "type": "object", "properties": { "sourceId": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.SourceId" }, "sourceType": { "$ref": "#/components/schemas/com.monytyz.billing.transactable.model.enums.SourceType" }, "amount": { "type": "number" }, "type": { "type": "string", "enum": [ "APPLICATION", "UNAPPLICATION" ] }, "applicationDate": { "type": "string", "format": "date-time" } }, "description": "All application transaction(s) for the invoice" }, "com.monytyz.billing.transactable.model.enums.SourceType": { "type": "object" }, "com.monytyz.billing.transactable.model.enums.TargetType": { "type": "object" }, "com.monytyz.billing.trial.data.TrialId": { "required": [ "value" ], "type": "object", "properties": { "value": { "type": "string" } } }, "com.monytyz.billing.trial.dto.CancelTrialRequest": { "required": [ "cancelType", "cancellationReason" ], "type": "object", "properties": { "cancelType": { "type": "string", "enum": [ "MANUAL", "AUTO" ] }, "cancellationReason": { "maxLength": 250, "minLength": 0, "type": "string" } } }, "com.monytyz.billing.trial.dto.ConvertTrialRequest": { "required": [ "isAutoConverted" ], "type": "object", "properties": { "isAutoConverted": { "type": "boolean" } } }, "com.monytyz.billing.trial.dto.CreateTrialRequest": { "required": [ "accountId", "defaultEndAction", "endDate", "quoteInitDetails", "startDate", "trialConversionPolicy", "type" ], "type": "object", "properties": { "accountId": { "$ref": "#/components/schemas/com.monytyz.billing.data.account.AccountId" }, "startDate": { "type": "string", "format": "date-time" }, "endDate": { "type": "string", "format": "date-time" }, "defaultEndAction": { "type": "string", "enum": [ "CONVERT_TO_PAID", "CANCEL" ] }, "type": { "type": "string", "enum": [ "NEW", "AMENDMENT" ] }, "quoteInitDetails": { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.TrialToQuoteInitDetails" }, "trialConversionPolicy": { "oneOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.TrialConversionPolicy.NewTrialConversionPolicy" } ] } } }, "com.monytyz.billing.trial.dto.OfferingProductDetail": { "required": [ "offeringId", "productDetails", "rateId" ], "type": "object", "properties": { "offeringId": { "$ref": "#/components/schemas/com.monytyz.billing.data.catalog.OfferingId" }, "productDetails": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.ProductDetail" } }, "rateId": { "$ref": "#/components/schemas/com.monytyz.billing.data.catalog.RateId" } } }, "com.monytyz.billing.trial.dto.ProductDetail": { "required": [ "id", "quantity" ], "type": "object", "properties": { "id": { "$ref": "#/components/schemas/com.monytyz.billing.data.catalog.ProductId" }, "quantity": { "type": "integer", "format": "int32" } } }, "com.monytyz.billing.trial.dto.QuoteHeaderInfo": { "required": [ "billingContactId", "lengthOfContract", "netTerms", "primaryContactId" ], "type": "object", "properties": { "lengthOfContract": { "type": "integer", "format": "int32" }, "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" ] }, "primaryContactId": { "$ref": "#/components/schemas/com.monytyz.billing.data.account.ContactId" }, "billingContactId": { "$ref": "#/components/schemas/com.monytyz.billing.data.account.ContactId" } } }, "com.monytyz.billing.trial.dto.TrialConversionPolicy": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "enum": [ "NEW", "AMENDMENT" ] } }, "discriminator": { "propertyName": "type" } }, "com.monytyz.billing.trial.dto.TrialConversionPolicy.NewTrialConversionPolicy": { "required": [ "offeringProductDetails", "type" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.TrialConversionPolicy" }, { "type": "object", "properties": { "offeringProductDetails": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.OfferingProductDetail" } } } } ] }, "com.monytyz.billing.trial.dto.TrialResponse": { "required": [ "accountId", "endAction", "endDate", "endStatusDate", "endStatusReason", "id", "quoteId", "quoteInitDetails", "startDate", "status", "trialConversionPolicy", "type" ], "type": "object", "properties": { "id": { "$ref": "#/components/schemas/com.monytyz.billing.trial.data.TrialId" }, "accountId": { "$ref": "#/components/schemas/com.monytyz.billing.data.account.AccountId" }, "status": { "type": "string", "enum": [ "ACTIVE", "AUTO_CONVERTED", "MANUALLY_CONVERTED", "AUTO_CANCELED", "MANUALLY_CANCELED", "EXPIRED" ] }, "startDate": { "type": "string", "format": "date-time" }, "endDate": { "type": "string", "format": "date-time" }, "endAction": { "type": "string", "enum": [ "CONVERT_TO_PAID", "CANCEL" ] }, "type": { "type": "string", "enum": [ "NEW", "AMENDMENT" ] }, "endStatusDate": { "type": "string", "format": "date-time" }, "quoteId": { "$ref": "#/components/schemas/com.monytyz.billing.data.cpq.QuoteId" }, "quoteInitDetails": { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.TrialToQuoteInitDetails" }, "trialConversionPolicy": { "oneOf": [ { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.TrialConversionPolicy.NewTrialConversionPolicy" } ] }, "endStatusReason": { "type": "string" } } }, "com.monytyz.billing.trial.dto.TrialToQuoteInitDetails": { "required": [ "quoteHeaderInfo", "version" ], "type": "object", "properties": { "version": { "type": "string" }, "quoteHeaderInfo": { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.QuoteHeaderInfo" } } }, "com.monytyz.billing.util.MNPage": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "type": "object" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.util.MNPageCom.monytyz.billing.contract.dto.ContractDto": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.contract.dto.ContractDto" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.util.MNPageCom.monytyz.billing.trial.dto.TrialResponse": { "required": [ "content", "totalElements", "totalPages" ], "type": "object", "properties": { "content": { "type": "array", "items": { "$ref": "#/components/schemas/com.monytyz.billing.trial.dto.TrialResponse" } }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "pageable": { "$ref": "#/components/schemas/MNPageable" } } }, "com.monytyz.billing.v2.http.response.IncrementalSubscriptionBreakdownResponse": { "required": [ "subscriptions" ], "type": "object", "properties": { "subscriptions": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.IncrementalSubscriptionItemBreakdownResponse" } } } }, "com.monytyz.billing.v2.http.response.IncrementalSubscriptionItemBreakdownResponse": { "required": [ "amount", "amountAfterDiscount", "discountAmount", "priceSummary", "subscriptionItems" ], "type": "object", "properties": { "priceSummary": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.PriceSummaryResponse" }, "subscriptionItems": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.PriceSummaryResponse" } }, "discountAmount": { "type": "number" }, "amount": { "type": "number" }, "amountAfterDiscount": { "type": "number" } } }, "com.monytyz.billing.v2.http.response.PriceSummaryResponse": { "required": [ "amount", "amountAfterDiscount", "discountAmount", "zero" ], "type": "object", "properties": { "amount": { "type": "number" }, "discountAmount": { "type": "number" }, "zero": { "type": "boolean" }, "amountAfterDiscount": { "type": "number" } } }, "com.monytyz.billing.v2.http.response.QuoteHistoricalPriceResponse": { "required": [ "absolute", "bySubscriptionBreakdown", "incremental", "prior" ], "type": "object", "properties": { "absolute": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.PriceSummaryResponse" }, "prior": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.PriceSummaryResponse" }, "bySubscriptionBreakdown": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.IncrementalSubscriptionBreakdownResponse" }, "incremental": { "$ref": "#/components/schemas/com.monytyz.billing.v2.http.response.PriceSummaryResponse" } } } } } }