> **Building with AI coding agents?** Install the authstack plugin with one command. This equips your agent with accurate Scalekit implementation patterns.
>
> **Recommended** (the `-y` flags skip prompts, so the command runs without an interactive terminal):
> ```bash
> npx -y @scalekit-inc/cli setup -y
> ```
>
> Global:
> ```bash
> npm install -g @scalekit-inc/cli
> scalekit setup -y
> ```
>
> Supports Claude Code, Cursor, GitHub Copilot, Codex + skills for other Agent Skills-compatible agents in `~/.agents/skills`.
> Skills: integrate-agentkit, implement-saaskit, add-mcp-oauth, implement-sso, implement-scim.
> [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Connect AI agents to Maxio

The Maxio connector lets your AI agent act in each user's Maxio account. Each user connects their own Maxio API key once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 90 tools.

**Authentication:** API Key
**Categories:** Accounting & Finance
**Tools:** 90: 56 read, 31 write, 3 destructive
**Users sign in with:** API key
**Built by:** Scalekit connector
**Try it:** [Playground in the Scalekit dashboard](https://app.scalekit.com/ws/signup?sk_intent=playground&provider=MAXIO)

## Setup

1. ### Install the SDK

   **Node.js**

   ```bash
   npm install @scalekit-sdk/node dotenv
   ```

   **Python**

   ```bash
   pip install scalekit-sdk-python python-dotenv
   ```

2. ### Set your credentials

   Add your Scalekit credentials to your `.env` file. Find values in **[app.scalekit.com](https://app.scalekit.com)** > **Developers** > **API Credentials**.

   ```sh title=".env"
   SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
   SCALEKIT_CLIENT_ID=<your-client-id>
   SCALEKIT_CLIENT_SECRET=<your-client-secret>
   ```

3. ### Create the Maxio connection

   In **AgentKit > Connections**, create a Maxio connection. The name you give it is the `connection_name` your code passes. See [Configure connections](/agentkit/connections/).

## Tools

Pass the exact name to `execute_tool`, with an input like each tool's example. To ask for a tool that's missing, use the [request form](https://scalekitsupport.portal.usepylon.com/forms/request-a-connector-tool).

**Node.js**

```typescript
const result = await actions.executeTool({
  toolName: 'maxio_billing_portal_link_get',
  toolInput: {
    customer_id: 1,
  },
  connector: 'maxio',
  identifier: 'user_123',
})
```

**Python**

```python
result = actions.execute_tool(
    tool_name="maxio_billing_portal_link_get",
    tool_input={
        "customer_id": 1,
    },
    connection_name="maxio",
    identifier="user_123",
)
```

`result.data` is the app's response as JSON, and `result.execution_id` (`executionId` in Node.js) is the ID of the call.

### `maxio_billing_portal_link_get`

Get Billing Portal Link · Read-only

Get a link that logs the customer straight into their billing portal.
Returns the management URL and its expiration time.
Use maxio_billing_portal_link_get to send or embed a portal link. The portal must be enabled first with maxio_billing_portal_enable.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `customer_id` (`integer`, required): The numeric Advanced Billing ID of the customer.

Example input: `{"customer_id":1}`

### `maxio_component_get`

Get Component · Read-only

Get one component in a product family by its ID or handle.
Returns the component with kind, unit name, pricing scheme, prices and default price point.
Use maxio_component_get when you know the product family. Use maxio_component_get_by_handle when you only have the handle.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `component_id` (`string`, required): The component's ID, or its handle prefixed with handle:, for example handle:api-calls.
- `product_family_id` (`integer`, required): The numeric ID of the product family the component belongs to.
- `include_features` (`boolean`, optional): When true, embeds the active feature catalog items for each result in a features array. Default value is false. Default: false

Example input: `{"component_id":"<component_id>","product_family_id":1}`

### `maxio_component_get_by_handle`

Get Component by Handle · Read-only

Find a component anywhere in the site by its handle.
Returns the component with id, kind, unit name, pricing and product family.
Use maxio_component_get_by_handle when you do not know the product family. Use maxio_component_get with a family ID otherwise.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `handle` (`string`, required): The API handle of the component, for example api-calls.

Example input: `{"handle":"<handle>"}`

### `maxio_component_price_point_get`

Get Component Price Point · Read-only

Get one price point of a component by ID or handle.
Returns the price point with pricing scheme, price tiers and interval.
Use maxio_component_price_point_get for one price point. Use maxio_component_price_points_list to browse.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `component_id` (`string`, required): The component's ID, or its handle prefixed with handle:.
- `price_point_id` (`string`, required): The price point's ID, or its handle prefixed with handle:.
- `currency_prices` (`boolean`, optional): Include an array of currency price data.

Example input: `{"component_id":"<component_id>","price_point_id":"<price_point_id>"}`

### `maxio_component_price_points_list`

List Component Price Points · Read-only

List the price points of a component.
Returns each price point with id, name, handle, pricing scheme and price tiers.
Use maxio_component_price_points_list to find price points for allocations and usage. Use maxio_component_price_point_get for one.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `component_id` (`integer`, required): The Advanced Billing id of the component
- `currency_prices` (`boolean`, optional): Include an array of currency price data.
- `filter_type` (`string`, optional): Comma-separated price point types to return: catalog, default and/or custom.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of price points per page, up to 200. Default is 20.

Example input: `{"component_id":1}`

### `maxio_components_list`

List Components · Read-only

List components (add-ons, usage meters and seats) across all product families.
Returns a page of components with id, name, handle, kind, unit name, pricing scheme and product family.
Use maxio_components_list to browse all components. Use maxio_product_family_components_list for one family, or maxio_component_get_by_handle for a handle.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `date_field` (`string`, optional): The type of filter you would like to apply to your search. One of: `updated_at`, `created_at`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `filter_ids` (`string`, optional): Comma-separated component IDs to return, for example 1,2,3.
- `include_archived` (`boolean`, optional): Include archived items.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of components per page, up to 200. Default is 20.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{}`

### `maxio_coupon_find`

Find Coupon by Code · Read-only

Find a coupon by its code.
Returns the coupon with id, name, discount, recurrence, end date and product family.
Use maxio_coupon_find to look up a code. Use maxio_coupon_validate to check whether a code can be used, or maxio_coupon_get for a known coupon id.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `code` (`string`, required): The coupon code to look up.
- `currency_prices` (`boolean`, optional): Set to true to include per-currency prices on multi-currency sites.
- `product_family_id` (`integer`, optional): Limit the search to this product family ID.

Example input: `{"code":"<code>"}`

### `maxio_coupon_get`

Get Coupon · Read-only

Get one coupon by its ID within a product family.
Returns the coupon with name, code, discount, recurrence, end date and restrictions.
Use maxio_coupon_get for a known coupon id. Use maxio_coupon_find when you have the code.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `coupon_id` (`integer`, required): The Advanced Billing id of the coupon
- `product_family_id` (`integer`, required): The Advanced Billing id of the product family to which the coupon belongs
- `currency_prices` (`boolean`, optional): Set to true to include per-currency prices on multi-currency sites.

Example input: `{"coupon_id":1,"product_family_id":1}`

### `maxio_coupon_usage_get`

Get Coupon Usage · Read-only

Get usage statistics for a coupon, broken down by product.
Returns, per product, the number of signups, savings and revenue with the coupon.
Use maxio_coupon_usage_get to measure coupon performance.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `coupon_id` (`integer`, required): The Advanced Billing id of the coupon.
- `product_family_id` (`integer`, required): The Advanced Billing id of the product family to which the coupon belongs.

Example input: `{"coupon_id":1,"product_family_id":1}`

### `maxio_coupon_validate`

Validate Coupon · Read-only

Check whether a coupon code is valid and can be used.
Returns the coupon if it is valid, or a 404 error explaining why it is not.
Use maxio_coupon_validate before applying a code at signup or with maxio_subscription_coupons_apply.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `code` (`string`, required): The coupon code to validate.
- `product_family_id` (`integer`, optional): Validate the code within this product family ID.

Example input: `{"code":"<code>"}`

### `maxio_coupons_list`

List Coupons · Read-only

List coupons across all product families in the site.
Returns a page of coupons with id, name, code, discount, recurrence, end date and product family.
Use maxio_coupons_list to browse coupons. Use maxio_coupon_find for one code, or maxio_product_family_coupons_list for one family.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `currency_prices` (`boolean`, optional): Set to true to include per-currency prices on multi-currency sites.
- `filter_codes` (`string`, optional): Comma-separated coupon codes to return, for example SAVE20,FREETRIAL.
- `filter_ids` (`string`, optional): Comma-separated coupon IDs to return, for example 1,2,3.
- `filter_include_archived` (`boolean`, optional): Set to true to include archived coupons.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of coupons per page, up to 200. Default is 30.

Example input: `{}`

### `maxio_custom_field_values_list`

List Custom Field Values · Read-only

List the custom field values (metadata) set on one subscription or customer.
Returns each value with the custom field name, value and resource id.
Use maxio_custom_field_values_list for one record. Use maxio_custom_fields_list for the field definitions.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `resource_id` (`integer`, required): The Advanced Billing ID of the subscription or customer.
- `resource_type` (`string`, required): Whether resource_id is a subscription or a customer. One of: `subscriptions`, `customers`.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of values per page, up to 200. Default is 20.

Example input: `{"resource_id":1,"resource_type":"subscriptions"}`

### `maxio_custom_fields_list`

List Custom Fields · Read-only

List the custom field definitions (metafields) for subscriptions or customers.
Returns each custom field with id, name, input type, enum options and scope.
Use maxio_custom_fields_list to see which custom fields exist. Use maxio_custom_field_values_list for the values on one record.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `resource_type` (`string`, required): Whether to list custom fields for subscriptions or customers. One of: `subscriptions`, `customers`.
- `direction` (`string`, optional): Sort direction: asc for oldest first, desc for newest first. One of: `asc`, `desc`.
- `name` (`string`, optional): Only return the custom field with this name.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of custom fields per page, up to 200. Default is 20.

Example input: `{"resource_type":"subscriptions"}`

### `maxio_customer_get`

Get Customer · Read-only

Get one customer by its Advanced Billing customer ID.
Returns the customer object with contact details, address, tax settings, parent_id and portal status.
Use maxio_customer_get when you have the numeric id. Use maxio_customer_get_by_reference for your own reference value, or maxio_customers_list to search.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `customer_id` (`integer`, required): The numeric Advanced Billing ID of the customer.

Example input: `{"customer_id":1}`

### `maxio_customer_get_by_reference`

Get Customer by Reference · Read-only

Get one customer by the reference value your application stored on it.
Returns the single matching customer object.
Use maxio_customer_get_by_reference for an exact reference match. Use maxio_customer_get for a numeric id, or maxio_customers_list for a fuzzy search.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `reference` (`string`, required): The exact reference value set on the customer by your application.

Example input: `{"reference":"<reference>"}`

### `maxio_customer_subscriptions_list`

List Customer Subscriptions · Read-only

List all subscriptions that belong to one customer.
Returns an array of subscription objects with state, product, billing dates and balance.
Use maxio_customer_subscriptions_list for one customer's subscriptions. Use maxio_subscriptions_list to filter subscriptions across the whole site.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `customer_id` (`integer`, required): The numeric Advanced Billing ID of the customer.

Example input: `{"customer_id":1}`

### `maxio_customers_list`

List Customers · Read-only

List customers in the Maxio Advanced Billing site, optionally filtered by a search query or a created/updated date range.
Returns a page of customer objects with id, name, email, organization, reference and address.
Use maxio_customers_list to browse or search. Use maxio_customer_get when you know the customer id, or maxio_customer_get_by_reference for your own reference value.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `date_field` (`string`, optional): Which timestamp the date filters apply to: created_at or updated_at. One of: `updated_at`, `created_at`.
- `direction` (`string`, optional): Sort direction: asc for oldest first, desc for newest first. One of: `asc`, `desc`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of customers per page, up to 200. Default is 50.
- `q` (`string`, optional): Search text matched against customer email, Advanced Billing ID, reference, organization, first name and last name.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{}`

### `maxio_events_list`

List Events · Read-only

List site activity events, such as signups, payments, renewals, state changes and component allocations.
Returns a page of events with id, key, message, subscription_id, customer_id and event-specific data.
Use maxio_events_list for site-wide activity. Use maxio_subscription_events_list for one subscription, or maxio_invoice_events_list for invoice activity.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `date_field` (`string`, optional): Timestamp the date filters apply to (created_at). One of: `created_at`.
- `direction` (`string`, optional): Sort direction. Default is desc. One of: `asc`, `desc`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `filter` (`string`, optional): Comma-separated event keys to return, for example signup_success,payment_success,renewal_failure.
- `max_id` (`integer`, optional): Only return events with an ID less than or equal to this one.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of events per page, up to 200. Default is 20.
- `since_id` (`integer`, optional): Only return events with an ID greater than or equal to this one.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{}`

### `maxio_invoice_events_list`

List Invoice Events · Read-only

List invoice events such as issued, payment applied, credit note created, refund and void.
Returns a page of events with id, event_type, invoice and event-specific data.
Use maxio_invoice_events_list to track invoice activity over time. Use maxio_events_list for subscription and site activity.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `event_types` (`string`, optional): Comma-separated event types, for example issue_invoice,apply_payment,void_invoice.
- `invoice_uid` (`string`, optional): Only return events for this invoice or credit note uid.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of events per page, up to 200. Default is 100.
- `since_date` (`string`, optional): Only return events on or after this time (YYYY-MM-DD or YYYY-MM-DDTHH:MM:SSZ).
- `since_id` (`integer`, optional): Only return events with an ID greater than this one.
- `with_change_invoice_status` (`string`, optional): Set to true to also return change_invoice_status events.

Example input: `{}`

### `maxio_invoice_get`

Get Invoice · Read-only

Get one invoice by its uid.
Returns the full invoice with line items, discounts, taxes, credits, payments, refunds and addresses.
Use maxio_invoice_get for one invoice. Use maxio_invoices_list to find invoice uids.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `uid` (`string`, required): The unique identifier of the invoice (for example inv_8gd8tdhtd3hgr), not the public invoice number.

Example input: `{"uid":"<uid>"}`

### `maxio_invoices_list`

List Invoices · Read-only

List invoices across the site, filtered by status, subscription, customer, invoice number, product or a date range.
Returns a page of invoices with uid, number, status, dates and amounts; line items, payments and other details are included when requested.
Use maxio_invoices_list to find invoices. Use maxio_invoice_get for one invoice by uid.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `consolidation_level` (`string`, optional): Comma-separated consolidation levels: none, parent and/or child.
- `credits` (`boolean`, optional): Set to true to include credits.
- `custom_fields` (`boolean`, optional): Set to true to include custom fields.
- `customer_ids` (`string`, optional): Comma-separated customer IDs, for example 1,2,3.
- `date_field` (`string`, optional): Which invoice date the date filters apply to. Default is due_date. One of: `created_at`, `due_date`, `issue_date`, `updated_at`, `paid_date`.
- `direction` (`string`, optional): Sort direction. Default is desc. One of: `asc`, `desc`.
- `discounts` (`boolean`, optional): Set to true to include discounts.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `line_items` (`boolean`, optional): Set to true to include line items.
- `number` (`string`, optional): Comma-separated invoice numbers, for example 1234,1235.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `payments` (`boolean`, optional): Set to true to include payments.
- `per_page` (`integer`, optional): Number of invoices per page, up to 200. Default is 20.
- `product_ids` (`string`, optional): Comma-separated product IDs that appear on invoice line items, for example 23,34.
- `refunds` (`boolean`, optional): Set to true to include refunds.
- `sort` (`string`, optional): Field to sort by. Default is number. One of: `status`, `total_amount`, `due_amount`, `created_at`, `updated_at`, `issue_date`, `due_date`, `number`.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.
- `status` (`string`, optional): Only return invoices with this status. One of: `draft`, `open`, `paid`, `pending`, `voided`, `canceled`, `processing`.
- `subscription_group_uid` (`string`, optional): Only return consolidated invoices for this subscription group uid.
- `subscription_id` (`integer`, optional): Only return invoices for this subscription ID.
- `taxes` (`boolean`, optional): Set to true to include taxes.

Example input: `{}`

### `maxio_offer_get`

Get Offer · Read-only

Get one offer by its ID.
Returns the offer with product, price point, components, discounts and signup pages.
Use maxio_offer_get for one offer. Use maxio_offers_list to browse.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `offer_id` (`integer`, required): The Advanced Billing ID of the offer.

Example input: `{"offer_id":1}`

### `maxio_offers_list`

List Offers · Read-only

List offers, which bundle a product, price point, components and coupons into one signup package.
Returns each offer with id, name, handle, product and included items.
Use maxio_offers_list to find an offer_id for maxio_subscription_create. Use maxio_offer_get for one offer.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `include_archived` (`boolean`, optional): Set to true to include archived offers.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of offers per page, up to 200. Default is 20.

Example input: `{}`

### `maxio_payment_profile_get`

Get Payment Profile · Read-only

Get one stored payment method by its payment profile ID.
Returns the payment profile with type, masked card or account number, expiration and billing address.
Use maxio_payment_profile_get for one payment method. Use maxio_payment_profiles_list to find ids.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `payment_profile_id` (`integer`, required): The Advanced Billing ID of the payment profile.

Example input: `{"payment_profile_id":1}`

### `maxio_payment_profiles_list`

List Payment Profiles · Read-only

List stored payment methods (cards and bank accounts), optionally for one customer.
Returns each payment profile with id, type, masked number, expiration and customer id.
Use maxio_payment_profiles_list to find a payment profile id. Use maxio_payment_profile_get for one.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `customer_id` (`integer`, optional): Only return payment profiles for this customer ID.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number per page, up to 200. Default is 20.

Example input: `{}`

### `maxio_product_families_list`

List Product Families · Read-only

List the product families in the site.
Returns each family with id, name, handle and description.
Use maxio_product_families_list to find a family id for product, component and coupon tools.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `date_field` (`string`, optional): The type of filter you would like to apply to your search. Use in query: date_field=created_at. One of: `updated_at`, `created_at`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{}`

### `maxio_product_family_components_list`

List Product Family Components · Read-only

List the components in one product family.
Returns a page of components with id, name, handle, kind, unit name and pricing.
Use maxio_product_family_components_list for one family. Use maxio_components_list across all families.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `product_family_id` (`integer`, required): The Advanced Billing id of the product family
- `date_field` (`string`, optional): The type of filter you would like to apply to your search. Use in query date_field=created_at. One of: `updated_at`, `created_at`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `filter_ids` (`string`, optional): Comma-separated component IDs to return, for example 1,2,3.
- `include_archived` (`boolean`, optional): Include archived items.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of components per page, up to 200. Default is 20.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{"product_family_id":1}`

### `maxio_product_family_coupons_list`

List Product Family Coupons · Read-only

List the coupons in one product family.
Returns a page of coupons with id, name, code, discount, recurrence and end date.
Use maxio_product_family_coupons_list for one family. Use maxio_coupons_list across all families.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `product_family_id` (`integer`, required): The Advanced Billing id of the product family to which the coupon belongs
- `currency_prices` (`boolean`, optional): Set to true to include per-currency prices on multi-currency sites.
- `filter_codes` (`string`, optional): Comma-separated coupon codes to return, for example SAVE20,FREETRIAL.
- `filter_include_archived` (`boolean`, optional): Set to true to include archived coupons.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of coupons per page, up to 200. Default is 30.

Example input: `{"product_family_id":1}`

### `maxio_product_family_get`

Get Product Family · Read-only

Get one product family by its ID.
Returns the family with id, name, handle, description and accounting code.
Use maxio_product_family_get for one family. Use maxio_product_families_list to browse.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `product_family_id` (`integer`, required): The numeric Advanced Billing ID of the product family.

Example input: `{"product_family_id":1}`

### `maxio_product_family_products_list`

List Product Family Products · Read-only

List the products in one product family.
Returns a page of products with id, name, handle, price and interval.
Use maxio_product_family_products_list for one family. Use maxio_products_list across all families.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `product_family_id` (`string`, required): The product family's ID, or its handle prefixed with handle:, for example handle:saas-plans.
- `date_field` (`string`, optional): The type of filter you would like to apply to your search. Use in query: date_field=created_at. One of: `updated_at`, `created_at`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `filter_ids` (`string`, optional): Comma-separated product IDs to return, for example 1,2,3.
- `include` (`string`, optional): Set to prepaid_product_price_point to embed the prepaid price point on each product. One of: `prepaid_product_price_point`.
- `include_archived` (`boolean`, optional): Include archived products.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of products per page, up to 200. Default is 20.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{"product_family_id":"<product_family_id>"}`

### `maxio_product_get`

Get Product · Read-only

Get one product by its Advanced Billing product ID.
Returns the product with name, handle, price, interval, trial, expiration and product family.
Use maxio_product_get for a numeric id. Use maxio_product_get_by_handle for an API handle.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `product_id` (`integer`, required): The Advanced Billing id of the product
- `include_features` (`boolean`, optional): When true, embeds the active feature catalog items for each result in a features array. Default value is false. Default: false

Example input: `{"product_id":1}`

### `maxio_product_get_by_handle`

Get Product by Handle · Read-only

Get one product by its API handle.
Returns the product with name, handle, price, interval, trial and product family.
Use maxio_product_get_by_handle when you have the handle. Use maxio_product_get for a numeric id.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `api_handle` (`string`, required): The API handle of the product, for example pro-monthly.

Example input: `{"api_handle":"<api_handle>"}`

### `maxio_product_price_point_get`

Get Product Price Point · Read-only

Get one price point of a product by ID or handle.
Returns the price point with price, interval, trial, initial charge and expiration settings.
Use maxio_product_price_point_get for one price point. Use maxio_product_price_points_list to browse.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `price_point_id` (`string`, required): The price point's ID, or its handle prefixed with handle:.
- `product_id` (`string`, required): The product's ID, or its handle prefixed with handle:.
- `currency_prices` (`boolean`, optional): (Optional) If you have defined multiple currencies at the site level, you can pass ?currency_prices=true to include an array of currency price data in the response. If the product price point is set to use_site_exchange_rate: true, it will return pricing based on the current exchange rate. If the flag is set to false, it will return all of the defined prices for each currency.

Example input: `{"price_point_id":"<price_point_id>","product_id":"<product_id>"}`

### `maxio_product_price_points_list`

List Product Price Points · Read-only

List the price points of a product.
Returns each price point with id, name, handle, price, interval, trial and type.
Use maxio_product_price_points_list to find price point ids for subscriptions. Use maxio_product_price_point_get for one price point.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `product_id` (`string`, required): The product's ID, or its handle prefixed with handle:, for example handle:pro-monthly.
- `archived` (`boolean`, optional): Set to true to include archived price points.
- `currency_prices` (`boolean`, optional): (Optional) If you have defined multiple currencies at the site level, you can pass ?currency_prices=true to include an array of currency price data in the response. If the product price point is set to use_site_exchange_rate: true, it will return pricing based on the current exchange rate. If the flag is set to false, it will return all of the defined prices for each currency.
- `filter_type` (`string`, optional): Comma-separated price point types to return: catalog, default and/or custom.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of price points per page, up to 200. Default is 10.

Example input: `{"product_id":"<product_id>"}`

### `maxio_products_list`

List Products · Read-only

List products across all product families in the site.
Returns a page of products with id, name, handle, price, interval and product family.
Use maxio_products_list to browse the catalog. Use maxio_product_family_products_list for one family, or maxio_product_get for one product.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `date_field` (`string`, optional): The type of filter you would like to apply to your search. Use in query: date_field=created_at. One of: `updated_at`, `created_at`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `filter_ids` (`string`, optional): Comma-separated product IDs to return, for example 1,2,3.
- `include` (`string`, optional): Set to prepaid_product_price_point to embed the prepaid price point on each product. One of: `prepaid_product_price_point`.
- `include_archived` (`boolean`, optional): Include archived products. Use in query: include_archived=true.
- `include_features` (`boolean`, optional): When true, embeds the active feature catalog items for each result in a features array. Default value is false. Default: false
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of products per page, up to 200. Default is 20.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{}`

### `maxio_proforma_invoice_get`

Get Proforma Invoice · Read-only

Get one proforma invoice by its uid.
Returns the proforma invoice with line items, discounts, taxes and totals.
Use maxio_proforma_invoice_get for one proforma invoice. Use maxio_subscription_proforma_invoices_list to find uids.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `proforma_invoice_uid` (`string`, required): The uid of the proforma invoice, for example pfm_8htcd29wcq3bw.

Example input: `{"proforma_invoice_uid":"<proforma_invoice_uid>"}`

### `maxio_reason_codes_list`

List Reason Codes · Read-only

List the churn reason codes configured for the site.
Returns each reason code with id, code, description and position.
Use maxio_reason_codes_list to get valid reason_code values for maxio_subscription_cancel.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of reason codes per page, up to 200. Default is 20.

Example input: `{}`

### `maxio_site_get`

Get Site · Read-only

Get the settings of the Maxio Advanced Billing site the API key belongs to.
Returns the site name, subdomain, currency, time zone, test mode flag, and tax and payment settings.
Use maxio_site_get to confirm which site you are connected to. Use maxio_site_stats_get for revenue and subscription totals.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `maxio_site_stats_get`

Get Site Stats · Read-only

Get headline statistics for the site.
Returns total subscriptions, subscriptions today, total and today revenue, and counts of active, past due and canceled subscriptions.
Use maxio_site_stats_get for a quick business overview. Use maxio_subscriptions_list for subscription-level detail.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `maxio_subscription_component_allocations_list`

List Component Allocations · Read-only

List the allocation history of a component on a subscription.
Returns each allocation with quantity, previous quantity, memo, proration and timestamp.
Use maxio_subscription_component_allocations_list to audit quantity changes. Use maxio_subscription_component_usages_list for metered usage records.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `component_id` (`integer`, required): The Advanced Billing id of the component
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.

Example input: `{"component_id":1,"subscription_id":1}`

### `maxio_subscription_component_get`

Get Subscription Component · Read-only

Get one component on a subscription.
Returns the component with its kind, allocated quantity or unit balance, price point and pricing.
Use maxio_subscription_component_get for one component. Use maxio_subscription_components_list for all components on the subscription.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `component_id` (`string`, required): The component's ID, or its handle prefixed with handle:.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"component_id":"<component_id>","subscription_id":1}`

### `maxio_subscription_component_usages_list`

List Component Usages · Read-only

List usage records for a metered or prepaid component on a subscription.
Returns each usage with id, quantity, memo and created_at.
Use maxio_subscription_component_usages_list to audit recorded usage. Use maxio_subscription_component_usage_create to add usage.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `component_id` (`string`, required): The component's ID, or its handle prefixed with handle:.
- `subscription_id_or_reference` (`string`, required): The subscription ID, or its reference. A numeric string is read as an ID first.
- `max_id` (`integer`, optional): Returns usages with an id less than or equal to the one specified.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of usage records per page, up to 200. Default is 20.
- `since_date` (`string`, optional): Only return usage created on or after this date (YYYY-MM-DD).
- `since_id` (`integer`, optional): Returns usages with an id greater than or equal to the one specified.
- `until_date` (`string`, optional): Only return usage created on or before this date (YYYY-MM-DD).

Example input: `{"component_id":"<component_id>","subscription_id_or_reference":"<subscription_id_or_reference>"}`

### `maxio_subscription_components_list`

List Subscription Components · Read-only

List the components on a subscription with their current quantities.
Returns each component with component_id, kind, allocated_quantity or unit_balance, price point and enabled state.
Use maxio_subscription_components_list to see a subscription's add-ons and usage. Use maxio_subscription_component_get for one component.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `date_field` (`string`, optional): Timestamp the date filters apply to (updated_at). One of: `updated_at`.
- `direction` (`string`, optional): Sort direction: asc for oldest first, desc for newest first. One of: `asc`, `desc`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `in_use` (`boolean`, optional): Set to true to return only components currently in use on the subscription.
- `include` (`string`, optional): Comma-separated extra data to embed: subscription and/or historic_usages.
- `price_point_ids` (`string`, optional): Set to not_null to return only components that have a price point. One of: `not_null`.
- `product_family_ids` (`string`, optional): Comma-separated product family IDs to filter by, for example 1,2,3.
- `sort` (`string`, optional): Field to sort by: id or updated_at. One of: `id`, `updated_at`.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.

Example input: `{"subscription_id":1}`

### `maxio_subscription_entitlements_list`

List Subscription Entitlements · Read-only

List the feature entitlements a subscription has through its product and components.
Returns each entitled feature with its value and where it comes from.
Use maxio_subscription_entitlements_list to check what a customer can access.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"subscription_id":1}`

### `maxio_subscription_events_list`

List Subscription Events · Read-only

List activity events for one subscription, such as payments, renewals, state changes and allocations.
Returns a page of events with id, key, message and event-specific data.
Use maxio_subscription_events_list for one subscription. Use maxio_events_list for the whole site.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `direction` (`string`, optional): Sort direction. Default is desc. One of: `asc`, `desc`.
- `filter` (`string`, optional): Comma-separated event keys to return, for example signup_success,payment_success,renewal_failure.
- `max_id` (`integer`, optional): Only return events with an ID less than or equal to this one.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of events per page, up to 200. Default is 20.
- `since_id` (`integer`, optional): Only return events with an ID greater than or equal to this one.

Example input: `{"subscription_id":1}`

### `maxio_subscription_get`

Get Subscription · Read-only

Get one subscription by its Advanced Billing subscription ID.
Returns the subscription with its state, product, customer, credit card or bank account, balances and billing dates.
Use maxio_subscription_get when you know the id. Use maxio_subscription_get_by_reference for your own reference value, or maxio_subscriptions_list to search.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `include` (`array`, optional): Extra data to embed in the response: coupons and/or self_service_page_token.

Example input: `{"subscription_id":1}`

### `maxio_subscription_get_by_reference`

Get Subscription by Reference · Read-only

Get one subscription by the reference value your application stored on it.
Returns the single matching subscription object.
Use maxio_subscription_get_by_reference for an exact reference match. Use maxio_subscription_get for a numeric id.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `reference` (`string`, required): The exact reference value set on the subscription by your application.

Example input: `{"reference":"<reference>"}`

### `maxio_subscription_group_find`

Find Subscription Group · Read-only

Find the subscription group that a subscription belongs to.
Returns the group with uid, scheme, customer and member subscriptions.
Use maxio_subscription_group_find from a subscription id. Use maxio_subscription_group_get when you have the group uid.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`string`, required): The Advanced Billing ID of a subscription in the group.

Example input: `{"subscription_id":"<subscription_id>"}`

### `maxio_subscription_group_get`

Get Subscription Group · Read-only

Get one subscription group by its uid.
Returns the group with scheme, customer, payment profile, member subscriptions and account balances.
Use maxio_subscription_group_get for a known uid. Use maxio_subscription_group_find from a subscription id.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `group_uid` (`string`, required): The uid of the subscription group, for example grp_952mvqcnk53wq.
- `include` (`array`, optional): Set to ["current_billing_amount_in_cents"] to include the current billing amount.

Example input: `{"group_uid":"<group_uid>"}`

### `maxio_subscription_groups_list`

List Subscription Groups · Read-only

List subscription groups, which bill several subscriptions together on one invoice.
Returns each group with uid, scheme, primary subscription, customer and member subscription ids.
Use maxio_subscription_groups_list to browse groups. Use maxio_subscription_group_find to find the group of one subscription.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `include` (`array`, optional): Set to ["account_balances"] to include account balance information for each group.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of groups per page, up to 200. Default is 20.

Example input: `{}`

### `maxio_subscription_note_get`

Get Subscription Note · Read-only

Get one internal note on a subscription.
Returns the note with id, body, sticky flag and timestamps.
Use maxio_subscription_note_get for one note. Use maxio_subscription_notes_list to find note ids.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `note_id` (`integer`, required): The Advanced Billing ID of the note.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"note_id":1,"subscription_id":1}`

### `maxio_subscription_notes_list`

List Subscription Notes · Read-only

List the internal notes on a subscription.
Returns each note with id, body, sticky flag and timestamps.
Use maxio_subscription_notes_list to read all notes. Use maxio_subscription_note_get for one note.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of notes per page, up to 200. Default is 20.

Example input: `{"subscription_id":1}`

### `maxio_subscription_prepayments_list`

List Subscription Prepayments · Read-only

List the prepayments recorded on a subscription.
Returns each prepayment with id, amount, remaining amount, method, memo and dates.
Use maxio_subscription_prepayments_list to see prepayment history. Use maxio_subscription_service_credits_list for service credits.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `filter_date_field` (`string`, optional): Which timestamp the date filters apply to: created_at or application_at.
- `filter_end_date` (`string`, optional): Only return prepayments on or before this date (YYYY-MM-DD).
- `filter_start_date` (`string`, optional): Only return prepayments on or after this date (YYYY-MM-DD).
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of prepayments per page, up to 200. Default is 20.

Example input: `{"subscription_id":1}`

### `maxio_subscription_proforma_invoices_list`

List Subscription Proforma Invoices · Read-only

List the proforma invoices (quotes for upcoming charges) of a subscription.
Returns each proforma invoice with uid, status, dates and totals; line items and other details when requested.
Use maxio_subscription_proforma_invoices_list to find proforma invoices. Use maxio_proforma_invoice_get for one.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `credits` (`boolean`, optional): Set to true to include credits.
- `custom_fields` (`boolean`, optional): Set to true to include custom fields.
- `direction` (`string`, optional): Sort direction: asc for oldest first, desc for newest first. One of: `asc`, `desc`.
- `discounts` (`boolean`, optional): Set to true to include discounts.
- `end_date` (`string`, optional): Only return proforma invoices due on or before this date (YYYY-MM-DD).
- `line_items` (`boolean`, optional): Set to true to include line items.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `payments` (`boolean`, optional): Set to true to include payments.
- `per_page` (`integer`, optional): Number per page, up to 200. Default is 20.
- `start_date` (`string`, optional): Only return proforma invoices due on or after this date (YYYY-MM-DD).
- `status` (`string`, optional): Only return proforma invoices with this status. One of: `draft`, `voided`, `archived`.
- `taxes` (`boolean`, optional): Set to true to include taxes.

Example input: `{"subscription_id":1}`

### `maxio_subscription_service_credits_list`

List Subscription Service Credits · Read-only

List the service credits issued to a subscription.
Returns each credit with id, amount, ending balance, entry type and memo.
Use maxio_subscription_service_credits_list for credit history. Use maxio_subscription_service_credit_issue to add a credit.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `direction` (`string`, optional): Sort direction: asc for oldest first, desc for newest first. One of: `asc`, `desc`.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of service credits per page, up to 200. Default is 20.

Example input: `{"subscription_id":1}`

### `maxio_subscriptions_list`

List Subscriptions · Read-only

List subscriptions in the site, filtered by state, product, customer, coupon, collection method, search text or a date range.
Returns a page of subscription objects with state, product, customer, billing period and balances.
Use maxio_subscriptions_list to browse or filter. Use maxio_subscription_get for one subscription by id, or maxio_customer_subscriptions_list for one customer's subscriptions.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `collection_method` (`string`, optional): Only return subscriptions with this payment collection method. One of: `automatic`, `remittance`, `prepaid`.
- `coupon` (`integer`, optional): Only return subscriptions with this coupon ID currently applied.
- `coupon_code` (`string`, optional): Only return subscriptions with this coupon code currently applied.
- `currencies` (`string`, optional): Comma-separated currency codes to filter by, for example USD,EUR.
- `customer_id` (`integer`, optional): Only return subscriptions that belong to this customer ID.
- `date_field` (`string`, optional): Which subscription timestamp the date filters apply to. One of: `current_period_ends_at`, `current_period_starts_at`, `created_at`, `activated_at`, `canceled_at`, `expires_at`, `trial_started_at`, `trial_ended_at`, `updated_at`.
- `direction` (`string`, optional): Sort direction: asc for oldest first, desc for newest first. One of: `asc`, `desc`.
- `end_date` (`string`, optional): Only return records whose date_field value is on or before this date (YYYY-MM-DD), up to 11:59:59 PM in the site time zone.
- `end_datetime` (`string`, optional): Only return records whose date_field value is at or before this exact time (YYYY-MM-DD HH:MM:SS). Overrides end_date when both are sent. Uses the site time zone unless a zone is included.
- `group_status` (`string`, optional): Only return subscriptions that are in a subscription group (grouped) or not (ungrouped). One of: `ungrouped`, `grouped`.
- `include` (`array`, optional): Extra data to embed in each subscription: self_service_page_token, current_account_balance_in_cents, current_billing_amount or coupons.
- `page` (`integer`, optional): Page number of results to return, starting at 1. Default is 1.
- `per_page` (`integer`, optional): Number of subscriptions per page, up to 200. Default is 20.
- `product` (`string`, optional): Only return subscriptions on this product. Accepts the product ID or the exact product name (not the handle).
- `product_price_point_id` (`integer`, optional): Only return subscriptions on this product price point. Requires product.
- `q` (`string`, optional): Search text. Use q_scope to choose which fields are searched.
- `q_scope` (`string`, optional): Which field the q search text is matched against. One of: `full_name`, `first_name`, `last_name`, `organization`, `customer_reference`, `subscription_reference`.
- `sort` (`string`, optional): Field to sort by. Default is signup_date. One of: `signup_date`, `period_start`, `period_end`, `next_assessment`, `updated_at`, `created_at`, `total_payments`, `id`, `open_balance`, `expires_at`.
- `start_date` (`string`, optional): Only return records whose date_field value is on or after this date (YYYY-MM-DD), evaluated from midnight in the site time zone.
- `start_datetime` (`string`, optional): Only return records whose date_field value is at or after this exact time (YYYY-MM-DD HH:MM:SS). Overrides start_date when both are sent. Uses the site time zone unless a zone is included.
- `state` (`string`, optional): Only return subscriptions in this state, for example active, trialing, past_due, canceled or on_hold. One of: `active`, `canceled`, `expired`, `expired_cards`, `expired_cards_(live_subscriptions)`, `expired_cards_(all_subscriptions)`, `on_hold`, `awaiting_signup`, `awaiting_signup_date`, `past_due`, `pending_cancellation`, `pending_renewal`, `prepaid_dunning`, `suspended`, `trial_ended`, `trialing`, `unpaid`.

Example input: `{}`

### `maxio_billing_portal_enable`

Enable Billing Portal · Write

Enable billing portal access for a customer, optionally emailing them an invitation.
Returns the customer portal status.
Use maxio_billing_portal_enable once per customer. Use maxio_billing_portal_link_get for a login link, or maxio_billing_portal_invitation_resend to email the invitation again.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `customer_id` (`integer`, required): The numeric Advanced Billing ID of the customer.
- `auto_invite` (`string`, optional): Set to 1 to email the customer an invitation. 0 or omitted sends no email. One of: `0`, `1`.

Example input: `{"customer_id":1}`

### `maxio_billing_portal_invitation_resend`

Resend Billing Portal Invitation · Write

Resend the billing portal invitation email to a customer.
Returns when the invitation was sent and its status.
Use maxio_billing_portal_invitation_resend when a customer lost the original invite. Use maxio_billing_portal_link_get for a direct login link.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `customer_id` (`integer`, required): The numeric Advanced Billing ID of the customer.

Example input: `{"customer_id":1}`

### `maxio_coupon_create`

Create Coupon · Write

Create a percentage or flat-amount coupon in a product family.
Returns the new coupon with its id and code.
Use maxio_coupon_create to add a discount code. Use maxio_coupon_update to change an existing coupon.
Send either percentage or amount_in_cents.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `code` (`string`, required): Code customers enter, up to 255 characters of uppercase letters, numbers and the symbols % @ + - _ . Required when creating.
- `description` (`string`, required): Description that can be shown to customers. Required when creating.
- `name` (`string`, required): Internal name of the coupon (not shown to customers), up to 255 characters. Required when creating.
- `product_family_id` (`integer`, required): The Advanced Billing id of the product family to which the coupon belongs
- `allow_negative_balance` (`boolean`, optional): Flat amount coupons only. Set to true to let unused discount carry forward as credit.
- `amount_in_cents` (`integer`, optional): Flat discount in integer cents. Send amount_in_cents or percentage, not both.
- `apply_on_cancel_at_end_of_period` (`boolean`, optional): Set to true to keep applying the coupon when a subscription is set to cancel at period end.
- `apply_on_subscription_expiration` (`boolean`, optional): Set to true to apply the coupon on the charge made at subscription expiration.
- `compounding_strategy` (`string`, optional): Stackable coupons only: compound (percentage applies to the already discounted price) or full-price. One of: `compound`, `full-price`.
- `end_date` (`string`, optional): Last day new signups can use the coupon (YYYY-MM-DD).
- `exclude_mid_period_allocations` (`boolean`, optional): Set to true to not discount charges from mid-period component allocations.
- `percentage` (`string`, optional): Percentage discount as a string, for example 15 or 12.5. Send percentage or amount_in_cents, not both.
- `recurring` (`boolean`, optional): Set to true to apply the discount on every renewal, not only the first charge.
- `restricted_components` (`object`, optional): Components the coupon is limited to, as an object whose keys are component IDs (or handle:<handle>) and values are true to restrict or false to unrestrict.
- `restricted_products` (`object`, optional): Products the coupon is limited to, as an object whose keys are product IDs (or handle:<handle>) and values are true to restrict or false to unrestrict.
- `stackable` (`boolean`, optional): Set to true to allow combining this coupon with other coupons on a subscription.

Example input: `{"code":"<code>","description":"<description>","name":"<name>","product_family_id":1}`

### `maxio_coupon_update`

Update Coupon · Write

Update a coupon's name, code, description, discount, end date or product restrictions. Only the fields you send are changed.
Returns the updated coupon.
Use maxio_coupon_update to edit a coupon. Use maxio_coupon_create to add a new one.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `coupon_id` (`integer`, required): The Advanced Billing id of the coupon
- `product_family_id` (`integer`, required): The Advanced Billing id of the product family to which the coupon belongs
- `allow_negative_balance` (`boolean`, optional): Flat amount coupons only. Set to true to let unused discount carry forward as credit.
- `amount_in_cents` (`integer`, optional): Flat discount in integer cents. Send amount_in_cents or percentage, not both.
- `apply_on_cancel_at_end_of_period` (`boolean`, optional): Set to true to keep applying the coupon when a subscription is set to cancel at period end.
- `apply_on_subscription_expiration` (`boolean`, optional): Set to true to apply the coupon on the charge made at subscription expiration.
- `code` (`string`, optional): Coupon code, up to 255 characters.
- `compounding_strategy` (`string`, optional): Stackable coupons only: compound (percentage applies to the already discounted price) or full-price. One of: `compound`, `full-price`.
- `description` (`string`, optional): Description that can be shown to customers.
- `end_date` (`string`, optional): Last day new signups can use the coupon (YYYY-MM-DD).
- `exclude_mid_period_allocations` (`boolean`, optional): Set to true to not discount charges from mid-period component allocations.
- `name` (`string`, optional): Internal name of the coupon, up to 255 characters.
- `percentage` (`string`, optional): Percentage discount as a string, for example 15 or 12.5. Send percentage or amount_in_cents, not both.
- `recurring` (`boolean`, optional): Set to true to apply the discount on every renewal, not only the first charge.
- `restricted_components` (`object`, optional): Components the coupon is limited to, as an object whose keys are component IDs (or handle:<handle>) and values are true to restrict or false to unrestrict.
- `restricted_products` (`object`, optional): Products the coupon is limited to, as an object whose keys are product IDs (or handle:<handle>) and values are true to restrict or false to unrestrict.
- `stackable` (`boolean`, optional): Set to true to allow combining this coupon with other coupons on a subscription.

Example input: `{"coupon_id":1,"product_family_id":1}`

### `maxio_customer_create`

Create Customer · Write

Create a customer in the Maxio Advanced Billing site without creating a subscription.
Returns the new customer object, including its Advanced Billing id.
Use maxio_customer_create to add a customer on its own. Use maxio_subscription_create to create a customer and subscription in one call.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `email` (`string`, required): The customer's email address. Invoices and receipts go here.
- `first_name` (`string`, required): The customer's first name.
- `last_name` (`string`, required): The customer's last name.
- `address` (`string`, optional): First line of the street address.
- `address_2` (`string`, optional): Second line of the street address, such as a suite or unit number.
- `cc_emails` (`string`, optional): Comma-separated list of extra email addresses to copy on customer communications.
- `city` (`string`, optional): City of the address.
- `country` (`string`, optional): Two-letter ISO 3166-1 country code, for example US.
- `entity_identifier_kind` (`string`, optional): Kind of tax or business identifier in entity_identifier_value: vat_eu (EU VAT, needs vat_country), national_tax (non-EU tax ID, needs vat_country), company_reg (company registration number), gln (13 digits), duns (9 digits) or lei (20 characters). Send together with entity_identifier_value. One of: `vat_eu`, `national_tax`, `company_reg`, `gln`, `duns`, `lei`.
- `entity_identifier_value` (`string`, optional): The customer's tax or business identifier. Send together with entity_identifier_kind.
- `locale` (`string`, optional): Language and region used for invoices and emails, for example en-US or es-MX.
- `organization` (`string`, optional): The customer's company or organization name.
- `parent_id` (`integer`, optional): The Advanced Billing ID of a parent customer, for customer hierarchies.
- `phone` (`string`, optional): The customer's phone number.
- `reference` (`string`, optional): Your own unique identifier for the customer (for example, the customer ID in your app). Must be unique within the site.
- `state` (`string`, optional): State or province code in ISO 3166-2 format, for example MA for Massachusetts.
- `surcharging` (`boolean`, optional): Whether surcharging applies to this customer. Defaults to true. Only used on sites with surcharging control enabled.
- `tax_exempt` (`boolean`, optional): Set to true if the customer is exempt from tax.
- `tax_exempt_reason` (`string`, optional): Why the customer is tax exempt. Used with tax_exempt set to true.
- `vat_country` (`string`, optional): Two-letter ISO country code that qualifies the tax ID. Required when entity_identifier_kind is vat_eu or national_tax.
- `vat_number` (`string`, optional): Legacy VAT number field. Prefer entity_identifier_kind with entity_identifier_value.
- `zip` (`string`, optional): Postal or ZIP code.

Example input: `{"email":"<email>","first_name":"<first_name>","last_name":"<last_name>"}`

### `maxio_customer_update`

Update Customer · Write

Update fields on an existing customer. Only the fields you send are changed.
Returns the updated customer object.
Use maxio_customer_update to change contact, address or tax details. Use maxio_customer_get first if you need current values.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `customer_id` (`integer`, required): The numeric Advanced Billing ID of the customer.
- `address` (`string`, optional): First line of the street address.
- `address_2` (`string`, optional): Second line of the street address, such as a suite or unit number.
- `cc_emails` (`string`, optional): Comma-separated list of extra email addresses to copy on customer communications.
- `city` (`string`, optional): City of the address.
- `country` (`string`, optional): Two-letter ISO 3166-1 country code, for example US.
- `email` (`string`, optional): The customer's email address. Invoices and receipts go here.
- `entity_identifier_kind` (`string`, optional): Kind of tax or business identifier in entity_identifier_value: vat_eu (EU VAT, needs vat_country), national_tax (non-EU tax ID, needs vat_country), company_reg, gln (13 digits), duns (9 digits) or lei (20 characters). Send together with entity_identifier_value. One of: `vat_eu`, `national_tax`, `company_reg`, `gln`, `duns`, `lei`.
- `entity_identifier_value` (`string`, optional): The customer's tax or business identifier. Send together with entity_identifier_kind.
- `first_name` (`string`, optional): The customer's first name.
- `last_name` (`string`, optional): The customer's last name.
- `locale` (`string`, optional): Language and region used for invoices and emails, for example en-US or es-MX.
- `organization` (`string`, optional): The customer's company or organization name.
- `parent_id` (`integer`, optional): The Advanced Billing ID of a parent customer, for customer hierarchies.
- `phone` (`string`, optional): The customer's phone number.
- `reference` (`string`, optional): Your own unique identifier for the customer (for example, the customer ID in your app). Must be unique within the site.
- `state` (`string`, optional): State or province code in ISO 3166-2 format, for example MA for Massachusetts.
- `surcharging` (`boolean`, optional): Whether surcharging applies to this customer. Only used on sites with surcharging control enabled.
- `tax_exempt` (`boolean`, optional): Set to true if the customer is exempt from tax.
- `tax_exempt_reason` (`string`, optional): Why the customer is tax exempt. Used with tax_exempt set to true.
- `vat_country` (`string`, optional): Two-letter ISO country code that qualifies the tax ID. Required when entity_identifier_kind is vat_eu or national_tax.
- `vat_number` (`string`, optional): Legacy VAT number field. Prefer entity_identifier_kind with entity_identifier_value.
- `zip` (`string`, optional): Postal or ZIP code.

Example input: `{"customer_id":1}`

### `maxio_invoice_create`

Create Ad Hoc Invoice · Write

Create an ad hoc invoice on a subscription with custom line items, outside the normal billing cycle.
Returns the new invoice with uid, number, status and totals.
Use maxio_invoice_create for one-off charges. Leave status as open (the default) to issue it right away.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `billing_address` (`object`, optional): Billing address overriding the customer's default: first_name, last_name, phone, address, address_2, city, state, zip and country.
- `coupons` (`array`, optional): Coupons to apply. Each item has a code, or a percentage or amount with a description.
- `issue_date` (`string`, optional): Date the invoice is issued (YYYY-MM-DD). Defaults to today in the site time zone.
- `line_items` (`array`, optional): Line items to bill. Each item has a title, quantity and unit_price (strings with up to 8 decimals), and can set taxable, tax_code, period_range_start, period_range_end, description, or a product_id/component_id with price point.
- `memo` (`string`, optional): Memo printed on the invoice, overriding the site's default.
- `net_terms` (`integer`, optional): Number of days until the invoice is due. Defaults to due on issue.
- `payment_instructions` (`string`, optional): Payment instructions printed on the invoice.
- `shipping_address` (`object`, optional): Shipping address overriding the customer's default, same fields as billing_address.
- `status` (`string`, optional): Create the invoice as draft or open. Default is open. One of: `draft`, `open`.

Example input: `{"subscription_id":1}`

### `maxio_invoice_payment_record`

Record Invoice Payment · Write

Record a payment against an invoice, such as an external check or wire, or apply a prepayment or service credit.
Returns the invoice with the payment applied.
Use maxio_invoice_payment_record to mark an invoice paid. Use maxio_invoice_get to check the remaining due amount first.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `amount` (`string`, required): Payment amount as a decimal string, for example 10.50.
- `uid` (`string`, required): The unique identifier of the invoice, not the public invoice number.
- `details` (`string`, optional): Extra payment details, such as a check number. Only used for external payments.
- `memo` (`string`, optional): Description attached to the payment. Only used for external payments.
- `method` (`string`, optional): Payment method: credit_card, check, cash, money_order, ach or other. Defaults to other. One of: `credit_card`, `check`, `cash`, `money_order`, `ach`, `other`.
- `payment_profile_id` (`integer`, optional): ID of a payment profile to charge, when type is payment.
- `received_on` (`string`, optional): Date the payment was received (YYYY-MM-DD, in the past). Only used for external payments.
- `type` (`string`, optional): Source of the payment: external (default), prepayment, service_credit, or payment (charge a payment profile). One of: `external`, `prepayment`, `service_credit`, `payment`.

Example input: `{"amount":"<amount>","uid":"<uid>"}`

### `maxio_product_create`

Create Product · Write

Create a product in a product family, with its price, billing interval and optional trial.
Returns the new product with its id and default price point.
Use maxio_product_create to add a plan to the catalog. Use maxio_product_price_point_create to add another price to an existing product.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `description` (`string`, required): Product description shown to customers.
- `interval` (`integer`, required): Number of interval_unit periods between charges, for example 1 with month.
- `interval_unit` (`string`, required): Unit of the billing interval: day or month. One of: `day`, `month`.
- `name` (`string`, required): Product name.
- `price_in_cents` (`integer`, required): Recurring price in integer cents, for example 4900 for $49.00.
- `product_family_id` (`string`, required): The product family's ID, or its handle prefixed with handle:, for example handle:saas-plans.
- `accounting_code` (`string`, optional): Internal accounting code or SKU.
- `auto_create_signup_page` (`boolean`, optional): Set to true to create a public signup page for the product.
- `expiration_interval` (`integer`, optional): Number of expiration_interval_unit periods after which the subscription expires.
- `expiration_interval_unit` (`string`, optional): Unit of the expiration interval: day, month or never. One of: `day`, `month`, `never`.
- `handle` (`string`, optional): API handle for the product: lowercase letters, numbers, dashes and underscores.
- `tax_code` (`string`, optional): Tax code for the product, used by tax services such as AvaTax. Up to 25 characters.
- `trial_interval` (`integer`, optional): Length of the trial in trial_interval_unit periods.
- `trial_interval_unit` (`string`, optional): Unit of the trial interval: day or month. One of: `day`, `month`.
- `trial_price_in_cents` (`integer`, optional): Trial price in integer cents.
- `trial_type` (`string`, optional): What happens at trial end without a card on file: no_obligation (subscription ends) or payment_expected (it moves to past due). One of: `no_obligation`, `payment_expected`.

Example input: `{"description":"<description>","interval":1,"interval_unit":"day","name":"<name>","price_in_cents":1,"product_family_id":"<product_family_id>"}`

### `maxio_product_family_create`

Create Product Family · Write

Create a product family to group related products, components and coupons.
Returns the new product family with its id.
Use maxio_product_family_create before adding products with maxio_product_create.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `name` (`string`, required): Name of the product family.
- `description` (`string`, optional): Description of the product family.
- `handle` (`string`, optional): API handle for the product family.
- `surcharging` (`boolean`, optional): Whether surcharging applies to products in this family. Defaults to true. Only used on sites with surcharging control enabled.

Example input: `{"name":"<name>"}`

### `maxio_product_price_point_create`

Create Product Price Point · Write

Add a new price point (an alternative price or interval) to a product.
Returns the new price point with its id and handle.
Use maxio_product_price_point_create to offer another price for the same product, for example an annual plan.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `interval` (`integer`, required): Number of interval_unit periods between charges, for example 1 with month.
- `interval_unit` (`string`, required): Unit of the billing interval: day or month. One of: `day`, `month`.
- `name` (`string`, required): Name of the price point.
- `price_in_cents` (`integer`, required): Recurring price in integer cents, for example 4900 for $49.00.
- `product_id` (`string`, required): The product's ID, or its handle prefixed with handle:.
- `expiration_interval` (`integer`, optional): Number of expiration_interval_unit periods after which the subscription expires.
- `expiration_interval_unit` (`string`, optional): Unit of the expiration interval: day, month or never. One of: `day`, `month`, `never`.
- `handle` (`string`, optional): API handle for the price point.
- `initial_charge_after_trial` (`boolean`, optional): Set to true to charge the initial charge after the trial instead of at signup.
- `initial_charge_in_cents` (`integer`, optional): One-time initial charge in integer cents.
- `trial_interval` (`integer`, optional): Length of the trial in trial_interval_unit periods.
- `trial_interval_unit` (`string`, optional): Unit of the trial interval: day or month. One of: `day`, `month`.
- `trial_price_in_cents` (`integer`, optional): Trial price in integer cents.
- `trial_type` (`string`, optional): What happens at trial end without a card on file: no_obligation (subscription ends) or payment_expected (it moves to past due). One of: `no_obligation`, `payment_expected`.
- `use_site_exchange_rate` (`boolean`, optional): For multi-currency sites, set to true to convert prices with the site exchange rate.

Example input: `{"interval":1,"interval_unit":"day","name":"<name>","price_in_cents":1,"product_id":"<product_id>"}`

### `maxio_product_update`

Update Product · Write

Update a product's name, handle, description, accounting code, price or intervals. Only the fields you send are changed.
Returns the updated product.
Use maxio_product_update to edit a product. Use maxio_product_price_point_create to add a new price instead of changing the default one.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `product_id` (`integer`, required): The Advanced Billing id of the product
- `accounting_code` (`string`, optional): Internal accounting code or SKU.
- `auto_create_signup_page` (`boolean`, optional): Set to true to create a public signup page for the product.
- `description` (`string`, optional): Product description shown to customers.
- `expiration_interval` (`integer`, optional): Number of expiration_interval_unit periods after which the subscription expires.
- `expiration_interval_unit` (`string`, optional): Unit of the expiration interval: day, month or never. One of: `day`, `month`, `never`.
- `handle` (`string`, optional): API handle for the product: lowercase letters, numbers, dashes and underscores.
- `interval` (`integer`, optional): Number of interval_unit periods between charges, for example 1 with month.
- `interval_unit` (`string`, optional): Unit of the billing interval: day or month. One of: `day`, `month`.
- `name` (`string`, optional): Product name.
- `price_in_cents` (`integer`, optional): Recurring price in integer cents, for example 4900 for $49.00.
- `tax_code` (`string`, optional): Tax code for the product, used by tax services such as AvaTax. Up to 25 characters.
- `trial_interval` (`integer`, optional): Length of the trial in trial_interval_unit periods.
- `trial_interval_unit` (`string`, optional): Unit of the trial interval: day or month. One of: `day`, `month`.
- `trial_price_in_cents` (`integer`, optional): Trial price in integer cents.
- `trial_type` (`string`, optional): What happens at trial end without a card on file: no_obligation (subscription ends) or payment_expected (it moves to past due). One of: `no_obligation`, `payment_expected`.

Example input: `{"product_id":1}`

### `maxio_subscription_component_allocate`

Allocate Subscription Component · Write

Set the quantity of a quantity-based or on/off component on a subscription, with proration.
Returns the allocation with previous and new quantity, proration settings and payment details.
Use maxio_subscription_component_allocate for seats and on/off add-ons. Use maxio_subscription_component_usage_create for metered usage.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `component_id` (`integer`, required): The Advanced Billing id of the component
- `quantity` (`number`, required): New total quantity for the component. Use 1 or 0 for on/off components.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `accrue_charge` (`boolean`, optional): Set to true to add an upgrade charge to the next renewal instead of charging now.
- `downgrade_credit` (`string`, optional): How to credit a decrease: full, prorated or none. Defaults to the component, then site setting. One of: `full`, `prorated`, `none`.
- `initiate_dunning` (`boolean`, optional): Set to true to start dunning if the immediate payment for the allocation fails.
- `memo` (`string`, optional): A free-text memo recorded with this action.
- `price_point_id` (`string`, optional): Price point to charge the allocation at: its ID, or handle prefixed with handle:.
- `proration_downgrade_scheme` (`string`, optional): Legacy downgrade proration scheme. Prefer downgrade_credit.
- `proration_upgrade_scheme` (`string`, optional): Legacy upgrade proration scheme. Prefer upgrade_charge.
- `upgrade_charge` (`string`, optional): How to charge for an increase: full, prorated or none. Defaults to the component, then site setting. One of: `full`, `prorated`, `none`.

Example input: `{"component_id":1,"quantity":1,"subscription_id":1}`

### `maxio_subscription_component_usage_create`

Record Component Usage · Write

Record metered usage for a metered or prepaid usage component on a subscription.
Returns the usage record with id, quantity, memo and timestamp.
Use maxio_subscription_component_usage_create for metered and prepaid usage. Use maxio_subscription_component_allocate for quantity-based components.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `component_id` (`string`, required): The component's ID, or its handle prefixed with handle:.
- `quantity` (`number`, required): Amount of usage to record. Integer unless fractional quantities are enabled for the component. Negative values reduce usage.
- `subscription_id_or_reference` (`string`, required): The subscription ID, or its reference. A numeric string is read as an ID first.
- `memo` (`string`, optional): A free-text memo recorded with this action.
- `price_point_id` (`string`, optional): Price point to rate the usage at: its ID, or handle prefixed with handle:.

Example input: `{"component_id":"<component_id>","quantity":1,"subscription_id_or_reference":"<subscription_id_or_reference>"}`

### `maxio_subscription_coupons_apply`

Apply Coupons to Subscription · Write

Add one or more coupon codes to an existing subscription.
Returns the subscription with the coupons applied.
Use maxio_subscription_coupons_apply to add discounts. Use maxio_coupon_validate first to check a code, and maxio_subscription_coupon_remove to take one off.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `codes` (`array`, required): Coupon codes to add. They are added to any coupons already on the subscription.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"codes":[],"subscription_id":1}`

### `maxio_subscription_create`

Create Subscription · Write

Create a subscription for an existing or new customer on a product, optionally with components, coupons and a payment method on file.
Returns the new subscription with its state, customer, product and billing dates.
Use maxio_subscription_create to sign a customer up. Use maxio_subscription_preview first to see the charges without creating anything.
Needs a product (product_handle or product_id) and a customer (customer_id, customer_reference or customer_attributes). Card details must be tokenized with Maxio.js and are not accepted here.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `calendar_billing` (`object`, optional): Calendar billing settings, such as snap_day (1 to 28 or end) and calendar_billing_first_charge (prorated, immediate or delayed). Cannot be combined with next_billing_at.
- `components` (`array`, optional): Components to add at signup. Each item has a component_id (ID or handle:<handle>) and, depending on the component kind, allocated_quantity (quantity-based), unit_balance (metered) or enabled (on/off). An item can also set price_point_id.
- `coupon_codes` (`array`, optional): Coupon codes to apply to the subscription.
- `currency` (`string`, optional): Currency code for the subscription, for sites with multi-currency enabled.
- `custom_price` (`object`, optional): A custom price point unique to this subscription, used instead of product_price_point_id. Needs price_in_cents, interval and interval_unit.
- `customer_attributes` (`object`, optional): Details for a new customer created with the subscription. Needs first_name, last_name and email; can also hold organization, reference, address fields, phone and metafields.
- `customer_id` (`integer`, optional): ID of an existing customer to subscribe. Send customer_id, customer_reference or customer_attributes.
- `customer_reference` (`string`, optional): Reference of an existing customer to subscribe. Send customer_id, customer_reference or customer_attributes.
- `defer_signup` (`boolean`, optional): Set to true to create the subscription in the Awaiting Signup Date state.
- `expires_at` (`string`, optional): Date and time (ISO 8601) at which the subscription expires.
- `initial_billing_at` (`string`, optional): Future date and time (ISO 8601) at which the subscription starts. The subscription stays in Awaiting Signup until then.
- `metafields` (`object`, optional): Custom field values as key/value pairs. Unknown keys create new custom fields on the site.
- `net_terms` (`string`, optional): Number of days after the invoice date that a remittance invoice is due.
- `next_billing_at` (`string`, optional): Date and time of the next billing (ISO 8601). Used to align imported subscriptions with an existing billing date.
- `offer_id` (`string`, optional): ID of an offer to apply. Use instead of product and component details.
- `payment_collection_method` (`string`, optional): How payments are collected: automatic (charge the payment method on file), remittance (send invoices to be paid manually), or prepaid. One of: `automatic`, `remittance`, `prepaid`, `invoice`.
- `payment_profile_id` (`integer`, optional): ID of an existing card or bank account that belongs to the customer, used to pay for this subscription.
- `product_handle` (`string`, optional): API handle of the product to subscribe to. Send product_handle or product_id.
- `product_id` (`integer`, optional): ID of the product to subscribe to. Send product_id or product_handle.
- `product_price_point_handle` (`string`, optional): Handle of a specific price point on the product. Omit to use the product's default price point.
- `product_price_point_id` (`integer`, optional): ID of a specific price point on the product. Omit to use the product's default price point.
- `receives_invoice_emails` (`boolean`, optional): Whether invoice emails are sent for this subscription. Defaults to true.
- `reference` (`string`, optional): Your own unique identifier for the subscription.

Example input: `{}`

### `maxio_subscription_default_payment_profile_change`

Change Subscription Default Payment Profile · Write

Make one of the customer's stored payment methods the default for a subscription.
Returns the payment profile that is now the default.
Use maxio_subscription_default_payment_profile_change to switch which card or bank account is charged. Use maxio_payment_profiles_list to find the profile id.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `payment_profile_id` (`integer`, required): ID of the payment profile to make the default. It must belong to the subscription customer.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"payment_profile_id":1,"subscription_id":1}`

### `maxio_subscription_delayed_cancel`

Schedule Subscription Cancellation · Write

Schedule a subscription to cancel at the end of its current billing period.
Returns a message confirming the delayed cancellation.
Use maxio_subscription_delayed_cancel for end-of-period cancellation. Use maxio_subscription_cancel to cancel now, and maxio_subscription_delayed_cancel_stop to undo this.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `cancellation_message` (`string`, optional): Internal note explaining why the subscription is being canceled.
- `reason_code` (`string`, optional): Churn reason code to record. Get valid codes from maxio_reason_codes_list.

Example input: `{"subscription_id":1}`

### `maxio_subscription_note_create`

Create Subscription Note · Write

Add an internal note to a subscription.
Returns the new note with its id.
Use maxio_subscription_note_create to record context on an account. Use maxio_subscription_note_update to edit an existing note.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `body` (`string`, required): Text of the note.
- `sticky` (`boolean`, required): Set to true to pin the note to the top of the subscription page.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"body":"<body>","sticky":true,"subscription_id":1}`

### `maxio_subscription_note_update`

Update Subscription Note · Write

Replace the text and sticky flag of an existing subscription note.
Returns the updated note.
Use maxio_subscription_note_update to edit a note. Use maxio_subscription_note_create to add a new one.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `body` (`string`, required): Text of the note.
- `note_id` (`integer`, required): The Advanced Billing ID of the note.
- `sticky` (`boolean`, required): Set to true to pin the note to the top of the subscription page.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"body":"<body>","note_id":1,"sticky":true,"subscription_id":1}`

### `maxio_subscription_pause`

Pause Subscription · Write

Put a subscription on hold so it stops billing, optionally until a set date.
Returns the subscription in the on_hold state.
Use maxio_subscription_pause to stop billing temporarily. Use maxio_subscription_resume to restart billing, or maxio_subscription_cancel to end it.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `automatically_resume_at` (`string`, optional): Date and time (ISO 8601) at which the subscription resumes automatically. Omit to hold indefinitely.

Example input: `{"subscription_id":1}`

### `maxio_subscription_payment_update_request_send`

Send Payment Update Request · Write

Email the customer a link to update the payment method on a subscription.
Returns a confirmation on success.
Use maxio_subscription_payment_update_request_send when a card has expired or failed. Use maxio_billing_portal_invitation_resend for billing portal access.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"subscription_id":1}`

### `maxio_subscription_prepayment_create`

Create Subscription Prepayment · Write

Record a prepayment on a subscription, either received externally or charged to the card on file.
Returns the prepayment with id, amount and remaining balance.
Use maxio_subscription_prepayment_create to add funds that pay future invoices. Use maxio_subscription_service_credit_issue for a goodwill credit with no payment.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `amount` (`string`, required): Prepayment amount as a decimal string, for example 100.00.
- `details` (`string`, required): Payment details, such as a check number.
- `memo` (`string`, required): Description of the prepayment.
- `method` (`string`, required): How the prepayment was paid. Use credit_card_on_file to charge the payment method on file; other values record an external payment. One of: `check`, `cash`, `money_order`, `ach`, `paypal_account`, `credit_card`, `credit_card_on_file`, `other`.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `payment_profile_id` (`integer`, optional): ID of the payment profile to charge when method is credit_card_on_file.

Example input: `{"amount":"<amount>","details":"<details>","memo":"<memo>","method":"check","subscription_id":1}`

### `maxio_subscription_preview`

Preview Subscription · Write

Preview the charges for a new subscription without creating it.
Returns a billing manifest with line items, taxes, discounts and totals for the signup and the next renewal.
Use maxio_subscription_preview to quote a price. Use maxio_subscription_create to actually create the subscription.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `calendar_billing` (`object`, optional): Calendar billing settings, such as snap_day (1 to 28 or end) and calendar_billing_first_charge (prorated, immediate or delayed). Cannot be combined with next_billing_at.
- `components` (`array`, optional): Components to add at signup. Each item has a component_id (ID or handle:<handle>) and, depending on the component kind, allocated_quantity (quantity-based), unit_balance (metered) or enabled (on/off). An item can also set price_point_id.
- `coupon_codes` (`array`, optional): Coupon codes to apply to the subscription.
- `currency` (`string`, optional): Currency code for the subscription, for sites with multi-currency enabled.
- `custom_price` (`object`, optional): A custom price point unique to this subscription, used instead of product_price_point_id. Needs price_in_cents, interval and interval_unit.
- `customer_attributes` (`object`, optional): Details for a new customer created with the subscription. Needs first_name, last_name and email; can also hold organization, reference, address fields, phone and metafields.
- `customer_id` (`integer`, optional): ID of an existing customer to subscribe. Send customer_id, customer_reference or customer_attributes.
- `customer_reference` (`string`, optional): Reference of an existing customer to subscribe. Send customer_id, customer_reference or customer_attributes.
- `defer_signup` (`boolean`, optional): Set to true to create the subscription in the Awaiting Signup Date state.
- `expires_at` (`string`, optional): Date and time (ISO 8601) at which the subscription expires.
- `initial_billing_at` (`string`, optional): Future date and time (ISO 8601) at which the subscription starts. The subscription stays in Awaiting Signup until then.
- `metafields` (`object`, optional): Custom field values as key/value pairs. Unknown keys create new custom fields on the site.
- `net_terms` (`string`, optional): Number of days after the invoice date that a remittance invoice is due.
- `next_billing_at` (`string`, optional): Date and time of the next billing (ISO 8601). Used to align imported subscriptions with an existing billing date.
- `offer_id` (`string`, optional): ID of an offer to apply. Use instead of product and component details.
- `payment_collection_method` (`string`, optional): How payments are collected: automatic (charge the payment method on file), remittance (send invoices to be paid manually), or prepaid. One of: `automatic`, `remittance`, `prepaid`, `invoice`.
- `payment_profile_id` (`integer`, optional): ID of an existing card or bank account that belongs to the customer, used to pay for this subscription.
- `product_handle` (`string`, optional): API handle of the product to subscribe to. Send product_handle or product_id.
- `product_id` (`integer`, optional): ID of the product to subscribe to. Send product_id or product_handle.
- `product_price_point_handle` (`string`, optional): Handle of a specific price point on the product. Omit to use the product's default price point.
- `product_price_point_id` (`integer`, optional): ID of a specific price point on the product. Omit to use the product's default price point.
- `receives_invoice_emails` (`boolean`, optional): Whether invoice emails are sent for this subscription. Defaults to true.
- `reference` (`string`, optional): Your own unique identifier for the subscription.
- `skip_billing_manifest_taxes` (`boolean`, optional): Set to true to skip tax calculation in the preview.

Example input: `{}`

### `maxio_subscription_product_migrate`

Migrate Subscription Product · Write

Move a subscription to a different product now, with proration for the rest of the period.
Returns the subscription on its new product.
Use maxio_subscription_product_migrate for an immediate upgrade or downgrade. Use maxio_subscription_product_migration_preview to see the charges first, or maxio_subscription_update with product_change_delayed for a change at renewal.
Needs product_id or product_handle.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `include_coupons` (`boolean`, optional): Set to false to drop the coupons on the subscription. Defaults to true.
- `include_initial_charge` (`boolean`, optional): Set to true to charge the initial charge of the target product. Defaults to false.
- `include_trial` (`boolean`, optional): Set to true to start the trial configured on the target price point. Defaults to false.
- `preserve_period` (`boolean`, optional): Set to false to reset the billing period to today and charge the full price. Defaults to true, which keeps the period and prorates.
- `product_handle` (`string`, optional): Handle of the target product. Send product_handle or product_id.
- `product_id` (`integer`, optional): ID of the target product. Send product_id or product_handle.
- `product_price_point_handle` (`string`, optional): Handle of a non-default price point on the target product.
- `product_price_point_id` (`integer`, optional): ID of a non-default price point on the target product.
- `proration` (`object`, optional): Proration settings, such as {"upgrade_charge": "prorated", "downgrade_credit": "none", "accrue_charge": false}.

Example input: `{"subscription_id":1}`

### `maxio_subscription_product_migration_preview`

Preview Subscription Product Migration · Write

Preview the charges and credits of moving a subscription to a different product, without changing it.
Returns the prorated adjustment, charge, payment due and credit applied.
Use maxio_subscription_product_migration_preview before maxio_subscription_product_migrate.
Needs product_id or product_handle.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `include_coupons` (`boolean`, optional): Set to false to drop the coupons on the subscription. Defaults to true.
- `include_initial_charge` (`boolean`, optional): Set to true to charge the initial charge of the target product. Defaults to false.
- `include_trial` (`boolean`, optional): Set to true to start the trial configured on the target price point. Defaults to false.
- `preserve_period` (`boolean`, optional): Set to false to reset the billing period to today and charge the full price. Defaults to true, which keeps the period and prorates.
- `product_handle` (`string`, optional): Handle of the target product. Send product_handle or product_id.
- `product_id` (`integer`, optional): ID of the target product. Send product_id or product_handle.
- `product_price_point_handle` (`string`, optional): Handle of a non-default price point on the target product.
- `product_price_point_id` (`integer`, optional): ID of a non-default price point on the target product.
- `proration` (`object`, optional): Proration settings, such as {"upgrade_charge": "prorated", "downgrade_credit": "none", "accrue_charge": false}.
- `proration_date` (`string`, optional): Date and time (ISO 8601) from which proration is calculated in the preview.

Example input: `{"subscription_id":1}`

### `maxio_subscription_reactivate`

Reactivate Subscription · Write

Reactivate a canceled, expired or trial-ended subscription.
Returns the reactivated subscription with its new state and billing dates.
Use maxio_subscription_reactivate for subscriptions that have ended. Use maxio_subscription_resume for a paused (on hold) subscription.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `calendar_billing` (`object`, optional): Calendar billing subscriptions only. Object with reactivation_charge: prorated, immediate or delayed.
- `coupon_code` (`string`, optional): Coupon code to apply on reactivation.
- `include_trial` (`boolean`, optional): Set to true to start a trial on reactivation if the product has one. Defaults to false.
- `preserve_balance` (`boolean`, optional): Set to true to keep the existing balance instead of clearing it before adding the reactivation charges.
- `resume` (`boolean`, optional): Set to true to resume the existing billing period if possible instead of starting a new one.
- `use_credits_and_prepayments` (`boolean`, optional): Set to true to apply service credits and prepayments on reactivation.

Example input: `{"subscription_id":1}`

### `maxio_subscription_renewal_preview`

Preview Subscription Renewal · Write

Preview a subscription's next renewal, optionally with different component quantities.
Returns the renewal date, line items, subtotal, taxes, discounts, total and the existing balance.
Use maxio_subscription_renewal_preview to forecast the next charge. Use maxio_subscription_product_migration_preview to price a product change.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `components` (`array`, optional): Optional component quantities to use instead of the current ones. Each item has component_id (ID or handle:<handle>), quantity, and optionally price_point_id.

Example input: `{"subscription_id":1}`

### `maxio_subscription_resume`

Resume Subscription · Write

Resume billing for a subscription that is on hold.
Returns the subscription in its resumed state.
Use maxio_subscription_resume for paused subscriptions. Use maxio_subscription_reactivate for canceled or expired ones.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"subscription_id":1}`

### `maxio_subscription_service_credit_issue`

Issue Subscription Service Credit · Write

Issue a service credit to a subscription, which is applied to future invoices.
Returns the service credit with amount and new ending balance.
Use maxio_subscription_service_credit_issue for goodwill or SLA credits. Use maxio_subscription_prepayment_create when the customer paid in advance.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `amount` (`string`, required): Credit amount as a decimal string, for example 10.50.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `memo` (`string`, optional): Reason for the credit.

Example input: `{"amount":"<amount>","subscription_id":1}`

### `maxio_subscription_update`

Update Subscription · Write

Update a subscription's product, price point, next billing date, expiration, collection method, net terms or reference.
Returns the updated subscription.
Use maxio_subscription_update for these field changes. Use maxio_subscription_product_migrate for a prorated product change, and maxio_subscription_cancel, maxio_subscription_pause or maxio_subscription_reactivate to change state.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `components` (`array`, optional): Components whose custom prices should be updated. Each item has component_id and custom_price.
- `custom_price` (`object`, optional): A custom price point unique to this subscription. Needs price_in_cents, interval and interval_unit.
- `expires_at` (`string`, optional): New expiration date and time (ISO 8601).
- `net_terms` (`string`, optional): Number of days after the invoice date that a remittance invoice is due.
- `next_billing_at` (`string`, optional): New date and time of the next billing (ISO 8601).
- `next_product_id` (`string`, optional): ID of the product to switch to at the next renewal. Send an empty string to cancel a pending delayed product change.
- `next_product_price_point_id` (`string`, optional): ID of the price point to use with next_product_id.
- `payment_collection_method` (`string`, optional): How payments are collected: automatic, remittance or prepaid.
- `product_change_delayed` (`boolean`, optional): Set to true to apply the product change at the end of the current period.
- `product_handle` (`string`, optional): Handle of a different product to switch to. Takes effect at the next renewal when product_change_delayed is true, otherwise immediately without proration.
- `product_id` (`integer`, optional): ID of a different product to switch to. Same timing rules as product_handle.
- `product_price_point_handle` (`string`, optional): Handle of a different price point on the current product.
- `product_price_point_id` (`integer`, optional): ID of a different price point on the current product.
- `receives_invoice_emails` (`boolean`, optional): Whether invoice emails are sent for this subscription.
- `reference` (`string`, optional): Your own unique identifier for the subscription.
- `snap_day` (`string`, optional): Day of the month the subscription renews on: 1 to 28, or end.

Example input: `{"subscription_id":1}`

### `maxio_subscription_cancel`

Cancel Subscription · Destructive

Cancel a subscription immediately, at the end of the current period, or on a scheduled date.
Returns the subscription with its new state and cancellation details.
Use maxio_subscription_cancel to end a subscription. Use maxio_subscription_delayed_cancel to cancel at period end, and maxio_subscription_pause to stop billing temporarily.

Read only: no. Destructive: yes. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.
- `cancel_at_end_of_period` (`boolean`, optional): Set to true to cancel at the end of the current period instead of immediately.
- `cancellation_message` (`string`, optional): Internal note explaining why the subscription is being canceled.
- `reason_code` (`string`, optional): Churn reason code to record. Get valid codes from maxio_reason_codes_list.
- `refund_prepayment_account_balance` (`boolean`, optional): Prepaid subscriptions only. When true (the default), the remaining prepaid balance is refunded on cancellation.
- `scheduled_cancellation_at` (`string`, optional): Date and time (ISO 8601) on which to cancel. Not available for prepaid subscriptions.

Example input: `{"subscription_id":1}`

### `maxio_subscription_coupon_remove`

Remove Coupon from Subscription · Destructive

Remove a coupon from a subscription.
Returns a confirmation message.
Use maxio_subscription_coupon_remove to take a discount off. Use maxio_subscription_coupons_apply to add one.

Read only: no. Destructive: yes. Idempotent (safe to retry): yes.

Inputs:

- `coupon_code` (`string`, required): The code of the coupon to remove from the subscription.
- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"coupon_code":"<coupon_code>","subscription_id":1}`

### `maxio_subscription_delayed_cancel_stop`

Stop Scheduled Cancellation · Destructive

Remove a pending end-of-period cancellation so the subscription keeps renewing.
Returns a message confirming the delayed cancellation was removed.
Use maxio_subscription_delayed_cancel_stop to undo maxio_subscription_delayed_cancel. Use maxio_subscription_reactivate for a subscription that is already canceled.

Read only: no. Destructive: yes. Idempotent (safe to retry): yes.

Inputs:

- `subscription_id` (`integer`, required): The numeric Advanced Billing ID of the subscription.

Example input: `{"subscription_id":1}`

## Related

Other Accounting & Finance connectors ([all 37](/agentkit/connectors/?category=accounting-finance)):

- [QuickBooks](/agentkit/connectors/quickbooks/): Scalekit connector, OAuth, 117 tools
- [Xero](/agentkit/connectors/xero/): Scalekit connector, OAuth, 94 tools
- [Stripe](/agentkit/connectors/stripe/): Scalekit connector, Access token, 178 tools


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
