> ## Documentation Index
> Fetch the complete documentation index at: https://docs.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Subscription

> Retrieves a specific Subscription.



## OpenAPI

````yaml /marketONE/MarketONEAPIs.yaml get /intgw/v2/subscriptions/{id}
openapi: 3.0.1
info:
  title: MarketONE APIs
  description: >
    The MarketONE OpenAPIs provide a quick and easy way to access MarketONE
    features and your data. These APIs let Resellers (Service Providers) and
    Merchants work together to resell products and handle billing on a single
    platform.


    With an API key, you can authenticate and perform various tasks, like
    accessing and managing data. You can use an HTTP client in any programming
    language to send HTTP requests to MarketONE to create, edit, or delete data.
    The data you work with, like subscriptions or entitlements, are called
    resources, and each resource has its own endpoint (URL).


    The MarketONE OpenAPIs use built-in HTTP features, like HTTP authentication
    and HTTP verbs, which are easy for standard HTTP clients to understand. They
    also use HTTP response codes to indicate errors. All responses, including
    errors, are in JSON format, but our API libraries convert them into objects
    that are specific to the programming language you're using. 


    You can also download the MarketONE OpenAPIs in a YAML file, which is easy
    to read and manage.


    For more information about the MarketONE OpenAPIs, see the [API Reference
    Guide for Merchants](https://docs.saas.amdocs.com/bundle/b_partnerAPIGuide/)
    and the [API Reference Guide for Resellers (Service
    Providers)](https://docs.saas.amdocs.com/bundle/b_aggregatorAPIGuide).


    ## Other MarketONE APIs


    Other MarketONE APIs, such as the [Reseller (CSP) Adapter
    OpenAPIs](https://docs.saas.amdocs.com/bundle/MarketONECSPAdapter/page/index.html),
    the [Merchant (OTT) Service
    Callbacks](https://docs.saas.amdocs.com/bundle/MarketONEOTTServiceCallbacks/page/index.html),
    and the [Commerce Gateway
    OpenAPIs](https://docs.saas.amdocs.com/bundle/Amdocs_Media-Commerce-Gateway-Latest-resolved/page/index.html),
    are available to provide additional services for specific organizations.


    # Environments


    MarketONE provides two distinct environments for testing and production:

    - **Prodtest environment**: this is a pre-production environment allowing
    you to test your application with test data. Use server
    <https://int-prodtest.m1amdocs.io/>.

    - **Production environment**: this is the live environment for the
    real-world implementation of  data. Use server <https://int.m1amdocs.com/>.


    # HTTP Verbs


    The MarketONE OpenAPIs support the following HTTP verbs:

    - **GET**: Retrieve resources (as a list or single record fetch).

    - **POST**:  Create new resources or update existing ones (overloading
    during create/update is permitted where specified).

    - **PUT**: Create a new resource or replace a resource with the request
    payload.

    - **DELETE**: Remove ownership or hierarchical association between certain
    resources.


    #  Example

     ## Request Example

     ```
    POST /v1/entitlement 

    Content-Type: application/json

    {
      "account": {
        "id": "2922fbf1-1dc4-2293-9d0e-c9a46630ad6e"
      },
      "subscriptionId": "ef1917b8-4a06-4595-9998-718799a33ed6",
      "productCodes": [
        "Basic_Addon"
      ],
      "metadata": {
        "email": "j.smith@email.com"
      }
    }

    ```

      ## Response Example

    ```

    Response: 200 OK

    Content-Type: application/json

    [
      {
        "partnerSubscriptionId": "80e08955-b0e9-4ba6-b882-b24230bfc703",
        "account": {
          "id": "0006fbf1-1ac4-4793-9d0e-c0a0080ad6e",
          "partnerCustomerId": "1bbbb3a5-0f05-4009-b4ae-b01f7eba7g"
        },
       "subscriptionId": "ef1417b8-4a06-7775-8518-718714a33ed2",
        "externalPartnerSubscriptionId": "7d50531-31eb-45f9-91ce-6355250f5501",
        "partnerCode": "PRTNR",
        "productCode": "Basic_Addon",
        "createdDate": "2024-05-04T17:38:10.889",
        "updatedDate": "2024-05-04T17:38:11.160",
        "startServiceDate": "2024-05-04T17:38:10.889",
        "serviceStatus": "PROVISION-COMPLETE"
      }
    ]

    ```


    # Status Codes


    MarketONE uses the following HTTP response codes to indicate the success or
    failure of an API request.


    | Code | Status | Description |

    | -------  | ------   | ------------------- |

    | **200** | OK | Everything worked as expected. |

    | **201** | OK | Everything worked as expected. |

    | **400** | Bad Request | The request was unacceptable, often due to missing
    a required parameter. Other possibilities include: <ul><li>A parameter
    doesn't fit the data type</li><li>A parameter is outside the maximum or
    minimum boundaries of what can be accepted.</li> |

    | **401** | Unauthorized | Couldn’t authenticate your request. This could be
    due to a wrong or invalid API key. |

    | **403** | Forbidden | Authentication failed. Check your username and
    password. |

    | **404** | Not Found | The requested resource doesn’t exist. |

    | **409** | Conflict | |

    | **429** | Too Many Requests | Too many requests were made to the API too
    quickly. |

    | **500** | Internal Server Error  | |

    | **501** | Not Implemented | |

    | **503** | Service Unavailable | We’re temporarily offline for maintenance.
    Please try again later. |


    # Authentication


    API keys are required to make requests to the MarketONE OpenAPIs. In Partner
    Ecosystem Management, Resellers (Service Providers) can conveniently
    [generate an API
    key](https://docs.saas.amdocs.com/bundle/b_userGuideForResellers/page/topics/apiKeysAggregatorManage_t.html).
    Merchants can also [generate an API key for each Reseller (Service Provider)
    partnership](https://docs.saas.amdocs.com/bundle/b_userGuideForMerchants/page/topics/apiKeysManage_t.html)
    in Partner Ecosystem Management. After you authenticate with your API
    key(s), you can access resources through the MarketONE OpenAPIs.


    Each API key is a JSON Web Token (JWT) that doesn't expire. For every API
    call you make to the MarketONE OpenAPIs, the API key must be included in the
    header (`X-API-KEY`) of the call to ensure trusted communication. All
    communication is HTTP(s) based and supports SSL/TLS encryption.


    # Errors


    All error responses will return an error object.


    # Attributes


    | Name | Type | Required/Optional | Description |

    | -------  | ------ | ------ | ------ |

    | **code** | string | required | The error type, such as
    "authentication-required" (401) or "not-found" (404). |

    | **message** | string | required | A human-readable message providing more
    detailed information about the error. |

    | **validationErrors** | object | optional | An array of validation errors
    with **code** and **message** attributes provided. |
  license:
    name: Amdocs Inc.
    url: http://www.amdocs.com
  version: Released
servers:
  - url: https://int-prodtest.m1amdocs.io/
    description: Sandbox server (uses test data)
  - url: https://int.m1amdocs.com/
    description: Production server (uses live data)
security: []
paths:
  /intgw/v2/subscriptions/{id}:
    get:
      tags:
        - subscriptions
      summary: Get Subscription
      description: Retrieves a specific Subscription.
      operationId: fetchDeprecated
      parameters:
        - name: X-B3-TraceId
          in: header
          description: >-
            The TraceId indicates the overall ID of the trace. Every span in a
            trace shares this ID. The X-B3-TraceId header is encoded as 32 or 16
            lower-hex characters. For example, a 128-bit TraceId header might
            look like 463ac35c9f6413ad48485a3953bb6124.
          required: false
          style: simple
          explode: false
          schema:
            type: string
        - name: X-B3-SpanId
          in: header
          description: >-
            The SpanId is 64-bit in length and indicates the position of the
            current operation in the trace tree. The value should not be
            interpreted; it may or may not be derived from the value of the
            TraceId. The X-B3-SpanId header is encoded as 16 lower-hex
            characters. For example, a SpanId header might look like
            a2fb4a1d1a96d312. Unless propagating only the Sampling State, the
            X-B3-SpanId header is required.
          required: false
          style: simple
          explode: false
          schema:
            type: string
        - name: X-B3-ParentSpanId
          in: header
          description: >-
            The ParentSpanId is 64-bit in length and indicates the position of
            the parent operation in the trace tree. When the span is the root of
            the trace tree, there is no ParentSpanId. The X-B3-ParentSpanId
            header may be present on a child span and must be absent on the root
            span. It is encoded as 16 lower-hex characters. For example, a
            ParentSpanId header might look like 0020000000000001.
          required: false
          style: simple
          explode: false
          schema:
            type: string
        - name: id
          in: path
          description: The id or the vid of the Subscription to retrieve
          required: true
          style: simple
          explode: false
          schema:
            type: string
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              description: The content-type of response body.
              style: simple
              explode: false
              schema:
                maxLength: 56
                minLength: 32
                pattern: .*$
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subscription'
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/401Error'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/404Error'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/409Error'
        '500':
          description: Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500Error'
      deprecated: true
      security:
        - ApiKeyAuth: []
components:
  schemas:
    Subscription:
      required:
        - account
        - id
        - items
        - object
        - status
      type: object
      properties:
        object:
          type: string
          description: Value is “Subscription”.
          enum:
            - Subscription
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        created:
          type: string
          description: The date/time at which the subscription was requested.
        account:
          $ref: '#/components/schemas/Account'
        billing_plan:
          $ref: '#/components/schemas/BillingPlan'
        payment_method:
          $ref: '#/components/schemas/PaymentMethod'
        currency:
          type: string
          description: >-
            An [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code.
            A subscription’s charges must be in a single currency.description 
            string  An optional customer-facing identifier or descriptive name
            for the subscription
        status:
          type: string
          description: >-
            The status of the subscription from a service and entitlement
            perspective.
          enum:
            - Pending Activation
            - Active
            - Pending Cancel
            - Cancelled
            - Expired
            - Processing
            - Deleted
            - Dryrun
            - Unknown
            - Upgraded
            - Legacy Suspended
            - Bogus AutoBill Status
            - Paused
            - Pending Pause
        billing_state:
          type: string
          description: The financial state of the subscription.
          enum:
            - Free/Trial
            - Billing Completed
            - Failed To Collect
            - Free Period
            - Bogus BillingState
            - Paused
            - Good Standing
            - Grace Period
            - In Retry
            - Legacy Unknown BillingState
            - Overdue
            - Pending Acceptance
            - Terminated
            - Unbilled
            - Unknown
            - Unusable PaymentMethod
            - Pending Resume
            - Pending Pause
        starts:
          type: string
          description: The date/time the subscription starts service.
          format: datetime
        ends:
          type: string
          description: The date/time the subscription ends service.
          format: datetime
        entitled_through:
          type: string
          description: >-
            The date/time to which the subscription will entitle service if no
            further payments are made – a “paid thru” date based on billing
            schedule and grace period.
          format: datetime
        items:
          $ref: '#/components/schemas/Subscription_items'
        source_ip:
          type: string
          description: Optional source IP Address at sign-up.
        billing_descriptor:
          type: string
          description: >-
            Optional “soft descriptor” to send to the payment processor for
            transactions from this subscription.
        billing_day:
          type: integer
          description: >-
            The day of the month on which the subscription is (typically)
            billed. Often called an “anniversary date.”
        minimum_commitment:
          type: integer
          description: >-
            Number of billing cycles customer is obligated to maintain the
            subscription. Cancelling before this time requires aggregator to
            “force” cancellation.
        affiliate:
          type: string
          description: >-
            Affiliate or channel identifier, if any, under which the
            subscription was submitted.
        sub_affiliate:
          type: string
          description: A more granular or subordinate affiliate identifier.
        notify_on_transition:
          type: boolean
          description: >-
            Indicates whether to send an expiration or trial-end email
            notification using the days-in-advance configuration in the Billing
            Plan.
        most_recent_billing:
          $ref: '#/components/schemas/Transaction'
        most_recent_refunds:
          type: array
          description: >-
            A list of any refunds associated with the Transaction in
            most_recent_billing.
          items:
            $ref: '#/components/schemas/Refund'
        next_billing:
          $ref: '#/components/schemas/Transaction'
        metadata:
          description: >-
            A set of key/value pairs that you can attach to an object. Useful
            for storing additional information. Subscription metadata will be
            inherited by resulting transactions.
          allOf:
            - $ref: '#/components/schemas/METADATA'
        credit:
          $ref: '#/components/schemas/Credit'
        statement_format:
          type: string
          description: >-
            Instructions for if/how to include the invoice statement for this
            subscription. Values can be Attachment, DoNotSend,Inline
          enum:
            - Attachment
            - DoNotSend
            - Inline
        invoice_terms:
          type: integer
          description: >-
            Net Terms (in days); after this many days from a billing, the
            invoice will be considered delinquent.
        statement_offset:
          type: integer
          description: Days before scheduled billing to deliver the statement.
        statement_template:
          type: string
          description: Template to use for statement generation.
        billing_plan_campaign_code:
          type: string
          description: >-
            The Campaign code redeemed on this AutoBill against the price of the
            Billing Plan. To apply a Campaign, use this field to pass in a valid
            Coupon or Promotion code. Note This data member will not be
            returned.
        billing_plan_campaign_id:
          type: string
          description: >-
            The unique identifier for a Campaign applied to this AutoBill’s
            BillingPlan. This is a read-only field returned by MarketONE for
            informational purposes. Values sent in with a SOAP call will be
            ignored. Read only.
        unkonwn_starts:
          type: boolean
          description: Used to create a Subscription Pending Activation.
        balance:
          type: number
        mandate:
          $ref: '#/components/schemas/Mandate'
        cancel_reason:
          $ref: '#/components/schemas/CancelReason'
        policy:
          type: array
          description: The policy object governing Subscription behavior.
          items:
            type: string
      description: >-
        Subscriptions allow you to bill an Account over time and/or on a
        recurring basis. A subscription ties an Account to a particular billing
        plan and set of purchased products (subscription items) you’ve created.
        The API allows you to create, update and amend/modify your
        subscriptions.
    400Error:
      required:
        - code
      type: object
      properties:
        code:
          type: string
          enum:
            - invalid-request
        message:
          type: string
        validationErrors:
          type: array
          items:
            $ref: '#/components/schemas/400ValError'
    401Error:
      required:
        - code
      type: object
      properties:
        code:
          type: string
          enum:
            - authentication-required
            - invalid-api-key
            - api-key-not-found
        message:
          type: string
    404Error:
      required:
        - code
      type: object
      properties:
        code:
          type: string
          enum:
            - not-found
        message:
          type: string
    409Error:
      required:
        - code
      type: object
      properties:
        code:
          type: string
          enum:
            - input-conflict
        message:
          type: string
    500Error:
      required:
        - code
      type: object
      properties:
        code:
          type: string
          enum:
            - server-error
        message:
          type: string
    ID:
      maxLength: 128
      type: string
      description: A unique identifier.
    VID:
      maxLength: 128
      type: string
      description: >-
        A Globally Unique Identifier (GUID) for this object. This value is
        generated by MarketONE.
    Account:
      required:
        - id
      type: object
      properties:
        object:
          type: string
          description: Value is “Account”
          enum:
            - Account
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        external_id:
          maxLength: 128
          type: string
          description: >-
            An additional aggregator-specified unique identifier for when you
            have two external (non-MarketONE) systems using two different
            identification schemes for the same customer. It can be used in
            place of vid or id
        created:
          type: string
          description: The date/time the Account was created.
          format: datetime
        parent:
          $ref: '#/components/schemas/AccountRef'
        default_currency:
          type: string
          description: >-
            The currency used on subscriptions and transactions belonging to
            this Account when not explicitly specified. An [ISO
            4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code.
        email:
          type: string
          description: The email address associated with this Account.
        email_type:
          type: string
          description: The email format type preferred by this customer.
          enum:
            - html
            - multipart
            - plaintext
        language:
          type: string
          description: The language (code) preferred for communications.
        notify_before_billing:
          type: boolean
          description: >-
            Whether or not to send this customer pre-billing notification
            (emails).
        company:
          type: string
          description: The company name of the customer if a business Account.
        name:
          type: string
          description: The name of the person primarily associated with this Account.
        shipping_address:
          $ref: '#/components/schemas/Address'
        payment_methods:
          $ref: '#/components/schemas/Account_payment_methods'
        metadata:
          $ref: '#/components/schemas/METADATA'
        tax_exemptions:
          type: array
          description: Tax Exemptions registered for this Account.
          items:
            $ref: '#/components/schemas/TaxExemption'
        tokens:
          type: array
          description: The token balances for this Account.
          items:
            $ref: '#/components/schemas/TokenAmount'
        credit:
          type: array
          description: The account-level credit balances for this Account.
          items:
            $ref: '#/components/schemas/Credit'
        entitlements:
          type: array
          description: The account-level entitlements for this Account.
          items:
            $ref: '#/components/schemas/BareEntitlement'
        tax_use_code:
          type: string
          description: Special Tax Handling rules defined with aggregator’s tax service.
      description: >-
        The Account represents an aggregator’s customer. As such it can contain
        as much or as little information as you collect about the customers
        (people or organizations) to which you offer billing and subscriptions.
        Subscriptions and Transactions must belong to an Account - as such,
        Accounts will be required in MarketONE for billing. Read More in our
        User Guide An Account can have any number of children accounts and may
        have up to one parent account. Read more in our User Guide. An Account
        owns the “on file” payment methods to be used by it in billing. Payment
        Methods can be created at the same time as an Account is created or
        updated, but when updating an existing Payment Method the Payment Method
        Endpoint must be used.
    BillingPlan:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        object:
          type: string
          description: Value is “BillingPlan”
          enum:
            - BillingPlan
        created:
          type: string
          description: The date and time the plan was created.
          format: datetime
        description:
          type: string
          description: An aggregator-specified description of this offering.
        status:
          type: string
          description: >-
            aggregators may define whether they want to declare a plan as
            available to offer. Values can be Active,Suspended
          enum:
            - Active
            - Suspended
        tax_classification:
          type: string
          description: >-
            The tax classification or code to be used with any plan-level
            charges.
        br_tax_category:
          type: string
          description: enum(Category)
        trial:
          description: Optionally declares an initial trial period for this plan.
          allOf:
            - $ref: '#/components/schemas/BillingPlanPeriod'
        periods:
          type: array
          description: >-
            Defines the sequential billing periods in the plan, each with its
            own billing schedule and terms.
          items:
            $ref: '#/components/schemas/BillingPlanPeriod'
        billing_notification_days:
          type: integer
          description: >-
            Number of days prior to schedule billing at which CashBox will send
            email notification.
        trial_end_notification_days:
          type: integer
          description: >-
            For the trial period, this replaces billing_notification_days,
            indicating the number of days prior to end of a trial to send the
            trial end email.
        skip_initial_billing_notification:
          type: boolean
          description: >-
            Determines whether to send a billing notification for the initial
            period.
        end_of_life:
          type: string
          description: The date after which the plan should not be offered.
          format: datetime
        metadata:
          $ref: '#/components/schemas/METADATA'
        entitlements:
          type: array
          description: Entitlements granted by active subscriptions on this plan.
          items:
            $ref: '#/components/schemas/BareEntitlement'
        billing_descriptor:
          type: string
          description: >-
            Optional “soft descriptor” to send to the payment processor for
            transactions associated with a subscription using this billing plan.
        times_to_run:
          type: string
          description: >-
            The number of times the sequence of Billing Periods should be
            repeated. Valid input includes positive integers (Default is null).
        entitlements_valid_for:
          type: string
          description: >-
            The length of time for which Entitlements are valid after the last
            Billing date (Default is null).
        repeat_every:
          type: string
          description: >-
            If a Billing Period set repeats, this value defines the length of
            time after the first billing that the set should repeat.
        season_set:
          description: The SeasonSet to which the Billing Plan applies. (May be null.)
          allOf:
            - $ref: '#/components/schemas/SeasonSet'
        days_before_season_to_bill:
          type: integer
          description: >-
            Optional setting when using a season set to control the integer
            number of days before a season starts to bill.
        days_entitled_before_season:
          type: integer
          description: >-
            Optional setting when using a season set to control the integer
            number of days customer is entitled before a season starts
        days_entitled_after_season:
          type: integer
          description: >-
            Optional setting when using a season set to control the integer
            number of days after a season ends a customer remains entitled.
        entitled_off_season:
          type: boolean
          description: >-
            Optional setting when using a season set to continue entitling
            customer between seasons.
        used_on_subscriptions:
          type: boolean
          description: Signifies if Billing Plan has been used on an Active Subscription
        grace_period_override:
          type: integer
          description: >-
            Number of days after the billing date when, if payment is not
            received, the Subscription is stopped and the customer is
            disentitled; overrides the global aggregator default setting, if
            both are set.
    PaymentMethod:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        object:
          type: string
          description: Value is “PaymentMethod”.
          enum:
            - PaymentMethod
        created:
          type: string
          description: The date/time the object was created.
          format: datetime
        type:
          type: string
          enum:
            - Amazon
            - ApplePay
            - CreditCard
            - DirectDebit
            - ExternalBilling
            - GooglePay
            - MerchantAcceptedPayment
            - PayPal
            - CarrierBilling
        credit_card:
          $ref: '#/components/schemas/CreditCardDto'
        direct_debit:
          type: object
        paypal:
          type: object
        amazon:
          type: object
        merchant_accepted_payment:
          $ref: '#/components/schemas/MerchantAcceptedPayment'
        external_billing:
          $ref: '#/components/schemas/ExternalBilling'
        carrier_billing:
          $ref: '#/components/schemas/CarrierBilling'
        apple_pay:
          type: object
        google_pay:
          type: object
        metadata:
          $ref: '#/components/schemas/METADATA'
        account_holder:
          type: string
          description: Name of the account holder.
        billing_address:
          $ref: '#/components/schemas/Address'
        customer_specified_type:
          type: string
          description: Optional aggregator or customer specified type description.
        customer_description:
          type: string
          description: Optional aggregator or customer specified card (method) description.
        currency:
          type: string
          description: The [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code.
        primary:
          type: boolean
          description: Primary/default payment method for the account.
        active:
          type: boolean
          description: Active and available for use.
        validation_status:
          $ref: '#/components/schemas/TransactionStatus'
        policy:
          type: object
          description: The policy object governing Payment Method behavior.
    Subscription_items:
      type: object
      properties:
        object:
          type: string
          description: Must be "List"
          enum:
            - List
        total_count:
          type: integer
          description: Integer count of the number of items in the returned list.
        data:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionItem'
      description: The product-based line items for the subscription.
    Transaction:
      type: object
      properties:
        object:
          type: string
          description: Value is “Transaction”
          enum:
            - Transaction
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        created:
          type: string
          description: The time this transaction was initiated.
          format: datetime
        amount:
          type: number
          description: >-
            The net amount of the charge presented by this transaction, as a
            decimal. Must be positive (zero allowed).
        original_amount:
          type: number
          description: >-
            Used with a partial payment; this read-only field reflects the
            original amount of the transaction, as a decimal.
        currency:
          type: string
          description: >-
            The [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code
            of this transaction
        division_number:
          type: string
          description: >-
            The aggregator’s division, reporting or processing group as defined
            with their payment processor.
        previous_id:
          type: string
          description: The identifier of a previous version of this transaction.
        account:
          $ref: '#/components/schemas/Account'
        source_payment_method:
          $ref: '#/components/schemas/PaymentMethod'
        dest_payment_method:
          $ref: '#/components/schemas/PaymentMethod'
        ecp_transaction_type:
          type: string
          description: For ECP/ACH-specific types.
          enum:
            - All
            - Inbound
            - InboundOutbound
            - NA
            - Outbound
            - Transfer
        status_log:
          $ref: '#/components/schemas/TransactionStatusLog'
        payment_processor:
          type: string
          description: The payment processor used for processing this transaction.
        payment_processor_transaction_id:
          type: string
          description: The identifier assigned to the Transaction by the Payment Processor.
        shipping_address:
          $ref: '#/components/schemas/Address'
        metadata:
          description: >-
            A set of key/value pairs that you can attach to an object. Useful
            for storing additional information. For transactions resulting from
            a subscription, the metadata is also inherited from the
            subscription.
          allOf:
            - $ref: '#/components/schemas/METADATA'
        items:
          type: array
          description: >-
            The array of Transaction Items belonging to this transaction. Items
            correspond to the charges, discounts, credits, and taxes.
          items:
            $ref: '#/components/schemas/TransactionItem'
        affiliate:
          type: string
          description: >-
            aggregator’s ID for the channel or affiliate associated with this
            transaction, if any. This is a free-form string of 128 characters or
            less.
        sub_affiliate:
          type: string
          description: >-
            Affiliate ID for a more granular channel component (see
            aggregator_affiliate_id).
        user_agent:
          type: string
          description: >-
            Information on the source of the transaction, such as the Customer’s
            user-agent string, as presented by the browser.
        preferred_notification_language:
          type: string
          description: >-
            ISO language code string. Transaction value will override any
            language setting on the account.
        source_mac_address:
          type: string
          description: >-
            MAC address of the customer (primarily intended for ISP usage), may
            be left blank if unavailable or inappropriate.
        source_ip:
          type: string
          description: End-customer’s source IP associated with this transaction.
        billing_descriptor:
          type: string
          description: >-
            Optional “soft descriptor” to send to the payment processor for this
            transaction.
        sales_tax_address:
          $ref: '#/components/schemas/Address'
        verification_code:
          type: string
          description: >-
            External verification response (e.g. Verified by Visa, MasterCard
            SecureCode).
        subscription_sequence:
          type: integer
          description: >-
            The subscription’s billing cycle for which this transaction collects
            funds. As a zero-based index, this indicates the renewal number.
        billing_plan_sequence:
          type: integer
          description: >-
            The billing cycle for which this transaction collects funds - as
            counted as a zero-based index from the last billing plan change for
            the associated subscription.
        mandate:
          $ref: '#/components/schemas/Mandate'
        original_billing_date:
          type: string
          description: >-
            The original scheduled billing date associated with the billing for
            which this transaction collects funds. For an initial attempt, this
            is the same as the transaction date; for a retry transaction this is
            the original attempt date.
          format: datetime
        billing_attempt:
          type: integer
          description: >-
            The zero-based index counting the number of transaction attempts
            this particular transaction represents in collecting for given
            subscription billing cycle.
        subscription:
          $ref: '#/components/schemas/Subscription'
        score:
          type: integer
          description: The chargeback and fraud risk score generated by MarketONE.
        score_calculated:
          type: string
          description: The datetime the score was calculated.
          format: datetime
        score_calculated_orig:
          type: string
          description: The datetime the score was originally calculated.
          format: datetime
        score_codes:
          type: array
          description: The reason codes justifying the risk score.
          items:
            $ref: '#/components/schemas/ScoreCode'
        distance_ip_ba:
          type: number
          description: The distance from the IP Address to the Billing Address.
        avs_code:
          type: string
          description: AVS Code
        cvn_code:
          type: string
          description: CVN Code.
        cvn_checked:
          type: boolean
          description: Shows if the CVN was checked for this transaction.
        policy:
          type: array
          description: The policy object governing Transaction behavior.
          items:
            type: string
        to_be_captured:
          type: boolean
          description: Indicator of whether the transaction is currently pending capture.
      description: >-
        The Transaction object provides a way to charge a customer. You can
        create one-time transactions, retrieve individual transactions, fetch
        individual transactions, and list all Transactions for a given account
        or subscription. Posting with a new Transaction creates a new one-time
        Transaction object. If “to_be_captured” is false, the request will
        trigger an authorization attempt (based on the provided payment method’s
        authorization process). If successfully authorized, a subsequent post to
        the transaction’s actions/capture endpoint will capture the authorized
        transaction. If you post a new transaction with “to_be_captured” true,
        it will authorize and immediately capture the transaction if successful.
        To refund transactions, use the refunds endpoint.
    Refund:
      type: object
      properties:
        object:
          type: string
          description: Value is “Refund”
          enum:
            - Refund
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        created:
          type: string
          description: The date/time at which the refund was requested.
          format: datetime
        transaction:
          $ref: '#/components/schemas/Transaction'
        refund_items:
          type: array
          description: >-
            For item-level refunds, specifies the transaction items to refund
            with details.
          items:
            $ref: '#/components/schemas/RefundItem'
        refund_distribution_strategy:
          type: string
          description: >-
            Defines strategy for distributing refund amount across the original
            TransactionItems. Default is None.
          enum:
            - None
            - SpecifiedItems
            - RemainingBalance
        amount:
          type: number
          description: >-
            Amount of the refund. Must be positive (non-zero) and less than or
            equal to the as-yet-un-refunded balance of the specified
            transaction. Ignored if refundItems are specified.
        amount_includes_tax:
          type: boolean
          description: whether the amount is tax-inclusive or -exclusive
        currency:
          type: string
          description: >-
            The [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code
            of this transaction; defaults to USD.
        metadata:
          $ref: '#/components/schemas/METADATA'
        reference_string:
          type: string
          description: Read-only. Information provided by payment processor.
        note:
          type: string
          description: Free-form aggregator-specified notes about refund.
        token_action:
          type: string
          description: Action to take with any Tokens paid on transaction. Default None.
          enum:
            - CancelNegativeBalance
            - CancelZeroBalance
            - None
        credit:
          $ref: '#/components/schemas/Credit'
        status:
          type: string
          description: Processing status of refund.
          enum:
            - Complete
            - Failed
            - Processing
            - Reported
      description: >-
        The Refund object provides a way to reverse a charge, refunding money to
        the customer. You can create, and retrieve individual Refunds; as well
        as list all existing Refunds. Refunds require a transaction – a refund
        can only be executed against an existing, successfully captured
        transaction. Refunds can be issued for any valid amount (in the currency
        of the original transaction) up to the as-yet un-refunded balance of the
        original transaction. You can issue any number of refunds on a given
        transaction (until it has been fully refunded).
    METADATA:
      type: object
      additionalProperties:
        type: string
        properties:
          key:
            type: string
          value:
            type: string
      description: >-
        A set of key/value pairs that you can attach to an object. Useful for
        storing additional information.
    Credit:
      type: object
      properties:
        object:
          type: string
          description: Value is “Credit”
          enum:
            - Credit
        token_amounts:
          type: array
          description: Tokens granted
          items:
            $ref: '#/components/schemas/TokenAmount'
        currency_amounts:
          type: array
          description: Currency credits granted
          items:
            $ref: '#/components/schemas/CurrencyAmount'
      description: >-
        The Credit object represents a service credit granted to an account or
        subscription, taking the form of either currency, token, or time
        amounts.
    Mandate:
      type: object
      properties:
        object:
          type: string
          description: Value is “Mandate”
          enum:
            - Mandate
        created:
          type: string
          description: The date/time at which the mandate was recorded into MarketONE.
          format: datetime
        identifier:
          type: string
          description: Externally provided unique identifier for the Mandate (agreement).
        status:
          type: string
          description: Current Mandate status.
          enum:
            - Active
            - Cancelled
            - Expired
            - Failed
            - Pending
      description: >-
        The mandates object represents the end-custom approval for a one-time or
        recurring billing using their provided bank account details. A common
        requirement for UK and SEPA direct debit payment methods.
    CancelReason:
      type: object
      properties:
        reason_code:
          type: string
          description: >-
            The reason code assigned for the cancellation. Can be 15 characters
            or fewer.
        description:
          type: string
          description: >-
            A description of the reason for the cancellation. Can be up to 255
            characters.
    400ValError:
      required:
        - code
      type: object
      properties:
        code:
          type: string
        message:
          type: string
    AccountRef:
      type: object
      properties:
        object:
          type: string
          enum:
            - Account
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
    Address:
      type: object
      properties:
        object:
          type: string
          description: Value is “Address”
          enum:
            - Address
        vid:
          $ref: '#/components/schemas/VID'
        name:
          type: string
          description: The name of the person or contact associated with this address.
        line1:
          type: string
          description: Address Line 1
        line2:
          type: string
          description: Address Line 2
        line3:
          type: string
          description: Address Line 3
        city:
          type: string
        county:
          type: string
        district:
          type: string
          description: State, Province, or District
        postal_code:
          type: string
        country:
          type: string
        phone:
          type: string
        fax:
          type: string
        latitude:
          type: number
        longitude:
          type: number
        tax_area_identifier:
          type: number
      description: The Address object represents a physical or mailing address.
    Account_payment_methods:
      type: object
      properties:
        object:
          type: string
          description: Must be "List"
          enum:
            - List
        total_count:
          type: integer
          description: Integer count of the number of items in the returned list.
        data:
          type: array
          items:
            $ref: '#/components/schemas/PaymentMethod'
      description: The payment methods on file for this Account.
    TaxExemption:
      type: object
      properties:
        object:
          type: string
          description: Value is “TaxExemption”
          enum:
            - TaxExemption
        region:
          type: string
          description: Exempt geography or jurisdiction
        exemption_id:
          type: string
          description: Exemption ID or certificate number filed with tax authority.
        active:
          type: boolean
          description: Required.
      description: >-
        A certificate or other recorded tax exemption on file for a customer
        (account) or specific subscription or transaction.
    TokenAmount:
      type: object
      properties:
        object:
          type: string
          enum:
            - TokenAmount
        token:
          $ref: '#/components/schemas/Token'
        amount:
          type: integer
          description: The balance of tokens in the grant.
        source:
          type: string
      description: >-
        The TokenAmount object represents the token-based credit detail
        associated with a particular grant of token credits.
    BareEntitlement:
      required:
        - id
      type: object
      properties:
        object:
          type: string
          enum:
            - Entitlement
        id:
          type: string
          description: An aggregator-specified unique identifier.
        description:
          type: string
          description: The aggregator-specified description of the entitled service.
    BillingPlanPeriod:
      type: object
      properties:
        object:
          type: string
          description: Value is “BillingPlanPeriod”
          enum:
            - BillingPlanPeriod
        type:
          type: string
          description: Unit of time a period describes. Values can be Day,Week,Month,Year
          enum:
            - Day
            - Week
            - Month
            - Year
        quantity:
          type: integer
        cycles:
          type: integer
        prices:
          type: array
          description: >-
            A price for each defined currency for each period. Optional -
            Billing Plans do not require pricing (can be priced at the
            item/product level).
          items:
            $ref: '#/components/schemas/BillingPlanPrice'
    SeasonSet:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        object:
          type: string
          description: Value is “SeasonSet”
          enum:
            - SeasonSet
        created:
          type: string
          description: The date and time the plan was created.
          format: datetime
        seasons:
          type: array
          description: An array of Seasons that make up the SeasonSet.
          items:
            $ref: '#/components/schemas/Season'
        metadata:
          $ref: '#/components/schemas/METADATA'
      description: The SeasonSet object defines an array of seasons, with an identifier.
    CreditCardDto:
      type: object
      properties:
        vid:
          $ref: '#/components/schemas/VID'
        object:
          type: string
          enum:
            - CreditCard
        last_digits:
          type: string
          description: The last 4 digits of the PAN (Bank Identifier Number).
        account_length:
          type: integer
          description: The number of digits in the PAN (Bank Identifier Number).
        hash_type:
          type: string
          description: >-
            The algorithm used for hashing the account number. If this value is
            not provided we assume SHA1.
          enum:
            - sha1
            - md5
        expiration_date:
          type: string
          description: >-
            Expiration date of the credit card, formatted as YYYYMM. For
            example, July, 2028 represented as 202807.
        extended_card_attributes:
          type: object
          description: Additional credit card details returned from Payment Provider
        cvn:
          type: string
          description: >-
            CVV (Card Verification Value) or CVN (Card Verification Number)
            printed on the card.
        last_au_request_date:
          type: string
          description: Timestamp of the most recent Account Updater request.
          format: datetime
        last_update_date:
          type: string
          description: Timestamp of the most recent credit card update.
          format: datetime
        au_response_code:
          type: string
          description: >-
            Response code from the payment provider for the most recent Account
            Updater request.
        au_response_message:
          type: string
          description: >-
            Reply from the payment provider for the most recent Account Updater
            request.
    MerchantAcceptedPayment:
      type: object
      properties:
        object:
          type: string
          enum:
            - MerchantAcceptedPayment
        amount:
          type: number
          description: >-
            Returns the payment amount for the payment method. Will be defaulted
            to zero when not provided.
        currency:
          type: string
          description: Currency for the payment method.
        created:
          type: string
          description: Created date and time.
        payment_type:
          type: string
          description: The identifier of the payment processor.
        account:
          type: string
          description: >-
            If applicable the account identifier of the customer that will be
            used for payment.
        last_digits:
          type: string
          description: Last 3 digits of the given account with obfuscation.
    ExternalBilling:
      type: object
      properties:
        object:
          type: string
          enum:
            - ExternalBilling
        bill_receiver:
          type: string
          description: >-
            The payment provider. In this case the payment provider is another
            billing system implemented in the integration.
        payment_channel:
          type: string
          description: >-
            The customer paymentChannelId in the billing system. Best practice
            is to set this the same as the Payment Method id.
        financial_account:
          type: string
          description: The customer financial account ID in the billing system.
    CarrierBilling:
      type: object
      properties:
        object:
          type: string
          description: Value is "CarrierBilling"
          enum:
            - CarrierBilling
        phone_number:
          $ref: '#/components/schemas/PhoneNumber'
        encoded_phone_number:
          type: string
          description: >-
            Read Only. The payment provider-encoded phone number used in the
            Transaction.
        carrier:
          type: string
          description: >-
            The identifier for the carrier, either read from the phone or
            entered by the customer.
        payment_provider:
          $ref: '#/components/schemas/PaymentProvider'
        currency:
          type: string
          description: >-
            ISO 4217 Currency Code for either the static_price_inc_salestax, or
            the dynamic_target_price. (For dynamic pricing, the customer
            currency will be determined by the customer region/countryCode.)
        country_code:
          type: string
          description: ISO 3166-1 alpha-2 Country Code for the customer’s location.
        price_criteria:
          $ref: '#/components/schemas/PriceCriteria'
        account_identifier:
          maxLength: 255
          type: string
          description: Unique billing account identifier from Payment Provider BSS.
          nullable: false
        carrier_billing_account_identifier_type:
          type: string
          description: the type of the account_identifier. Enumerated.
          example: MSISDN
          enum:
            - BAN
            - MSISDN
        customer_identifier:
          maxLength: 255
          type: string
          description: >
            Unique MSISDN or other billing account identifier from Payment
            Provider's BSS.
          nullable: true
          example: not yet available - see VIN-26551
        customer_identifier_type:
          maxLength: 255
          type: string
          description: >
            Identifier for the channel from which the customer_identifier value
            originated
          nullable: true
          example: PoS , Web
        validated:
          type: string
          description: Indicates if the payment method is validated
          nullable: true
      description: This object defines Telco carrier billing details.
    TransactionStatus:
      type: object
      properties:
        object:
          type: string
          description: Value is “TransactionStatus”
          enum:
            - TransactionStatus
        status:
          type: string
          description: Status of the Transaction.
          enum:
            - New
            - AuthorizationPending
            - AuthorizedPending
            - Authorized
            - AuthorizedForValidation
            - Cancelled
            - Captured
            - Settled
            - Refunded
            - Pending
        created:
          type: string
          description: The effective datetime of this status
          format: datetime
        payment_method_type:
          type: string
          description: Type of Payment Method (clarifies status).
          enum:
            - CreditCard
            - PayPal
            - ECP
            - DirectDebit
            - Token
            - HostedPage
            - Boleto
            - aggregatorAcceptedPayment
            - CarrierBilling
            - Amazon
            - Skrill
            - ApplePay
        vin_avs:
          type: string
          description: AVS result.
          enum:
            - FullMatch
            - PartialMatch
            - NoMatch
            - IssuerError
            - NoOpinion
            - NotSupported
        funding_source_balance:
          type: number
    SubscriptionItem:
      required:
        - id
        - object
        - product
      type: object
      properties:
        object:
          type: string
          description: Value is “SubscriptionItem”
          enum:
            - SubscriptionItem
        id:
          $ref: '#/components/schemas/SubItemID'
        vid:
          $ref: '#/components/schemas/VID'
        index:
          type: integer
          description: Sequential index of all items on the subscription.
        product:
          $ref: '#/components/schemas/Product'
        campaign_id:
          type: string
          description: >-
            The campaign code for the discount on the subscription. This field
            will not be returned for subscriptions that has no discount.
        amount:
          type: number
          description: The unit price of the item.
        currency:
          type: string
          description: >-
            The [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code
            of this item.
        rate_plan:
          $ref: '#/components/schemas/RatePlan'
        metadata:
          $ref: '#/components/schemas/METADATA'
        quantity:
          type: number
          description: >-
            The unit quantity for the item; for license-based products this is
            the license/seat quantity.
        token:
          $ref: '#/components/schemas/Token'
        cycles:
          type: integer
          description: >-
            The number of billing cycles for which this item should bill (0 =
            life of the Subscription)
        cycles_remaining:
          type: integer
          description: >-
            If a billing cycle limit is defined, this is the number of billing
            cycles left to bill.
        created:
          type: string
          description: The datetime this item was added to the subscription.
          format: datetime
        ends:
          type: string
          description: >-
            The datetime this item was removed from the subscription (end of
            service).
          format: datetime
        starts:
          type: string
          description: >-
            The datetime this item was effective/started on the subscription
            (start of service).
          format: datetime
        discount_tickets:
          type: array
          items:
            $ref: '#/components/schemas/DiscountTicket'
        replaces:
          $ref: '#/components/schemas/SubscriptionItem'
        replaced_by:
          $ref: '#/components/schemas/SubscriptionItem'
    TransactionStatusLog:
      type: object
      properties:
        object:
          type: string
          enum:
            - List
        total_count:
          type: integer
          description: Integer count of the number of items in the list.
        data:
          type: array
          items:
            $ref: '#/components/schemas/TransactionStatus'
      description: >-
        A log of various TransactionStatus entries associated with a
        transaction.
    TransactionItem:
      type: object
      properties:
        object:
          type: string
          description: Value is “TransactionItem”
          enum:
            - TransactionItem
        sku:
          type: string
          description: >-
            The SKU or unique identifier of the product purchased with this item
            (for one-time transactions this is an ad-hoc value.
        index_number:
          type: integer
          description: Sequential index of all items on the transaction.
        item_type:
          type: string
        name:
          type: string
          description: >-
            aggregator-provided name or inherited description of the product
            purchased
        subscription_item:
          $ref: '#/components/schemas/SubscriptionItem'
        price:
          type: number
          description: unit price of this item
        metadata:
          $ref: '#/components/schemas/METADATA'
        quantity:
          type: number
          description: >-
            The unit quantity for the item; for license-based products this is
            the license/seat quantity.
        tax_classification:
          type: string
          description: The tax code or classification applicable to this item.
        tokens:
          type: array
          description: >-
            Tokens granted to the account on this transaction for purchasing
            this item
          items:
            $ref: '#/components/schemas/TokenAmount'
        campaign_code:
          type: string
          description: Campaign code redeemed on this TransactionItem.
        campaign_id:
          type: string
          description: The unique identifier for a campaign applied to this item.
        campaign_description:
          type: string
          description: >-
            Detailed description of the campaign for the discount on this item,
            if there is one.
        service_period_starts:
          type: string
          description: The start date for the period the charge on this item covers.
          format: datetime
        service_period_ends:
          type: string
          description: The end date for the period the charge on this item covers.
          format: datetime
        tax_type:
          type: string
          description: Fixed Tax definition (read only).
        tax:
          $ref: '#/components/schemas/TransactionItem_tax'
        related_transactions:
          type: array
          description: >-
            List of aggregatorTransactionIds for all Transactions related to
            this item. e.g. For a credit resulting from the removal of an
            SubscriptionItem, this will contain the list of all Transactions
            that originally billed for the item within the time frame covered by
            the credit.
          items:
            type: string
        item_refunds:
          type: array
          description: Detail on item-level refunds applied to this item.
          items:
            $ref: '#/components/schemas/TransactionItemRefundSummary'
        discount:
          type: number
          description: The total discount amount applied to this item.
        subtotal:
          type: number
          description: The pre-tax (post-discount) subtotal.
        total:
          type: number
          description: The grand total of this item
    ScoreCode:
      type: object
      properties:
        object:
          type: string
          description: Value is “ScoreCode”
          enum:
            - ScoreCode
        id:
          type: string
          description: A MarketONE-specified unique ID.
        description:
          type: string
          description: String description of the rule, e.g. “PRIOR_CB_IN_VERTICAL”
    RefundItem:
      type: object
      properties:
        transaction_item_index_number:
          type: number
          description: >-
            Sequence number assigned upon creation to a TransactionItem by
            MarketONE. Either the transactionItemIndexNumber, or the sku, must
            be specified for each RefundItem.
        sku:
          type: string
          description: >-
            SKU on the original transaction line item (sku need not be passed in
            if the transactionItemIndexNumber is passed in). If the sku is
            passed in, and can be used to uniquely identify the transaction
            item, it will be used, otherwise an error will be returned.
        description:
          type: string
          description: >-
            Output only. A description of the TransactionItem, which will be
            filled in by MarketONE from line item description on the original
            Transaction.
        amount:
          type: number
          description: >-
            Amount of the requested refund for this item, in the currency of the
            overall transaction. This amount must not exceed the original
            TransactionItem amount, minus any discounts and minus the sum of all
            prior refunds against this item. This field may be left blank if the
            taxOnly field is set to true.
        tax_only:
          type: boolean
          description: >-
            If this is true, the amount parameter is ignored and the refund
            amount will be the total of the as-yet unrefunded taxes for this
            item.
        taxes:
          type: array
          description: >-
            Read-only array to list the taxes from the original TransactionItem
            that are being refunded.
          items:
            $ref: '#/components/schemas/TaxItem'
    CurrencyAmount:
      type: object
      properties:
        object:
          type: string
          description: Value is “CurrencyAmount”
          enum:
            - CurrencyAmount
        vid:
          $ref: '#/components/schemas/VID'
        currency:
          type: string
          description: An [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code.
        amount:
          type: number
          description: The currency amount of the credit.
        metadata:
          $ref: '#/components/schemas/METADATA'
        sort_value:
          type: integer
          description: Order of precedence value.
        description:
          type: string
          description: Text provided upon credit grant.
        reason:
          type: string
          description: Text provided upon credit grant.
        granted_by_cashbox:
          type: boolean
        granted:
          type: string
          description: The date and time the credit was originally granted.
          format: datetime
        account:
          $ref: '#/components/schemas/AccountRef'
        subscription:
          $ref: '#/components/schemas/SubscriptionRef'
      description: >-
        The CurrencyAmount object represents the currency credit detail
        associated with a particular grant of currency credits.
    Token:
      type: object
      properties:
        object:
          type: string
          description: Value is “Token”
          enum:
            - Token
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        description:
          type: string
          description: Text describing the token type
      description: >-
        The token object provides a way to offer virtual currencies or track the
        balance of a consumable service item.
    BillingPlanPrice:
      type: object
      properties:
        object:
          type: string
          description: Value is “BillingPlanPrice”
        amount:
          type: number
          description: price
        currency:
          type: string
          description: >-
            The [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217) Currency Code
            of price.
        price_list_name:
          type: string
          description: >-
            Name of price list containing this price. This is free-form string
            of 255 characters or less
        token_amount:
          description: The number of tokens required to purchase (if token-priced).
          allOf:
            - $ref: '#/components/schemas/TokenAmount'
    Season:
      type: object
      properties:
        object:
          type: string
          description: Value is “Season”
          enum:
            - Season
        description:
          type: string
          description: Free-form description of the season, <= 2048 characters.
        starts:
          type: string
          description: The date/time at which the Season begins.
          format: datetime
        ends:
          type: string
          description: The date/Time at which the Season ends.
          format: datetime
      description: >-
        Season objects represent an aggregator-defined calendar-based “season”
        indicating when a particular service offering is provided. Often
        indicates a sporting or entertainment industry season. In CashBox, most
        simply stored as a date range with a description; and grouped into
        Season Sets as needed (to allow for sequential season-based entitlement
        and billing, from one season to the next where the dates for a given
        season change each year).
    PhoneNumber:
      required:
        - area_code
        - country_code
        - extension
        - local_number
        - object
        - phone_type
      type: object
      properties:
        object:
          type: string
          description: Value is "PhoneNumber"
          enum:
            - PhoneNumber
        phone_type:
          type: string
          description: >-
            Type or Use designation for the phone number. Value can be CS, Fax,
            Home, Main, Mobile, Pager, Unspecified, Work
          enum:
            - CS
            - Fax
            - Home
            - Main
            - Mobile
            - Pager
            - Unspecified
            - Work
        country_code:
          maxLength: 8
          pattern: ^\d+$
          type: string
          description: Country Code segment of a phone number.
        area_code:
          maxLength: 8
          pattern: ^\d+$
          type: string
          description: Area Code segment of a phone number.
        local_number:
          maxLength: 16
          pattern: ^\d+$
          type: string
          description: Local segment of a phone number (excluding extension).
        extension:
          maxLength: 16
          pattern: ^\d+$
          type: string
          description: Phone number extension.
        raw_input:
          type: string
          description: Raw, unfiltered data input by customer.
      description: >-
        The payment providers object represents processor or payment channel
        used to transact a particular charge.
    PaymentProvider:
      type: object
      properties:
        object:
          type: string
          description: Value is "PaymentProvider"
          enum:
            - PaymentProvider
        name:
          type: string
          description: Provider Name
        dispute_address:
          type: string
          description: Contact address for written disputes.
        dispute_email:
          type: string
          description: Contact email for electronic disputes.
        dispute_uri:
          type: string
          description: Contact URL for online disputes.
        auth_expiration_days:
          type: integer
          description: Default expiration timing (days) for un-captured authorizations.
        auth_currency_override:
          type: string
          description: Currency override for Authorizations
        metadata:
          type: object
          description: >-
            A set of key/value pairs that you can attach to an object. Useful
            for storing additional information.
      description: >-
        The payment providers object represents processor or payment channel
        used to transact a particular charge.
    PriceCriteria:
      type: object
      properties:
        object:
          type: string
          description: Value is "PriceCriteria"
          enum:
            - PriceCriteria
        payment_provider:
          $ref: '#/components/schemas/PaymentProvider'
        currency:
          type: string
          description: >-
            ISO 4217 Currency Code for for either the static_price_inc_salestax,
            or the dynamic_target_price Overrides CarrierBilling.currency.
        country_code:
          type: string
          description: >-
            ISO 3166-1 alpha-2 countryCode for customer location. Overrides
            CarrierBilling.countryCode.
        price_point_deviation_policy:
          type: string
          description: >-
            The price deviation policy for dynamic price selection. Value can be
            HiOnly, HiPreferred, LowOnly, LowPreferred, NearestNoPreference
          enum:
            - HiOnly
            - HiPreferred
            - LowOnly
            - LowPreferred
            - NearestNoPreference
        dynamic_price_mode:
          type: string
          description: >-
            Specifies which price point element is matched by the dynamic
            pricing algorithm. Values can be PayoutGross, PayoutNet, Price
          enum:
            - PayoutGross
            - PayoutNet
            - Price
        merchant_service_identifier:
          type: string
          description: Service identifier for Payment Provider/Merchant.
        sub_merchant_identifier:
          type: string
          description: Optional identifier of sub-merchant associated with Transaction.
        description:
          type: string
          description: ''
        fwd_url:
          type: string
          description: >-
            Overrides both the successful transaction forward-to URL and the
            failed transaction forward-to URL.
        static_selection_row_ref:
          type: integer
          description: Row number identifier in the static product/service price matrix
        static_price_inc_sales_tax:
          type: string
          description: >-
            Price including tax (the actual amount the consumer will pay). Used
            with Transactions with static ‘exact match’ pricing.
          format: decimal
        dynamic_deviation:
          type: integer
          description: >-
            The percent deviation (+/- 1000) from the target value that is
            acceptable as a price point selection.
        dynamic_match:
          type: integer
          description: >-
            The percent deviation (+/- 1000) from the target value that is
            classified as an exact match.
        dynamic_target_price:
          type: string
          description: Target price in the specified currency for dynamic pricing.
          format: decimal
      description: Price Criteria details used with telco carrier billing payment methods.
    SubItemID:
      maxLength: 128
      type: string
      description: >-
        A unique identifier. This field will be auto generated and returned by
        MarketONE.
    Product:
      required:
        - descriptions
        - id
        - object
        - status
      type: object
      properties:
        object:
          type: string
          description: Value is “Product”
          enum:
            - Product
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
        created:
          type: string
          description: The date/time the object was created.
          format: datetime
        descriptions:
          $ref: '#/components/schemas/Product_descriptions'
        status:
          type: string
          description: >-
            aggregators may define whether they want to declare a product as
            available to offer.
          enum:
            - Active
            - Suspended
        tax_classification:
          type: string
          description: The tax classification or code for this product.
        br_tax_category:
          type: string
          enum:
            - Goods
            - Services
        default_billing_plan:
          $ref: '#/components/schemas/BillingPlan'
        default_rate_plan:
          $ref: '#/components/schemas/RatePlan'
        end_of_life:
          type: string
          description: >-
            The date/time after which this product should be treated as
            out-of-service.
          format: datetime
        metadata:
          $ref: '#/components/schemas/METADATA'
        entitlements:
          $ref: '#/components/schemas/Product_entitlements'
        inherited_entitlements:
          $ref: '#/components/schemas/Product_inherited_entitlements'
        billing_descriptor:
          type: string
          description: >-
            Optional “soft descriptor” to send to the payment processor for
            transactions associated with a subscription using this product.
        credit_granted:
          $ref: '#/components/schemas/Credit'
        prices:
          $ref: '#/components/schemas/Product_prices'
        bundled_products:
          type: array
          description: >-
            Other Products considered “bundled” under this one; purchase of this
            product’s SKU under a single price, grants the entitlements
            associated with it and with all bundled products (as of the time of
            creation).
          items:
            $ref: '#/components/schemas/Product'
      description: >-
        The Product object represents a unique aggregator product, with its own
        pricing, description and entitlement assignments. The API allows you to
        create, fetch, and update products. You can retrieve individual Product
        objects, as well as a list of all.
    RatePlan:
      type: object
      properties:
        object:
          type: string
          description: Value is “RatePlan”
          enum:
            - RatePlan
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
      description: >-
        Rate Plans represents a pre-defined rating schedule - tier-based pricing
        for rated products (e.g. usage). Both pre-paid (aka License-based) and
        post-paid (metered, aka usage-based) services use pre-defined tiers to
        rate recorded events. Rate Plans support flat and per-unit pricing,
        volume discounts, standard consumption-based prices, included units with
        overage, and maximum/minimum charge limits.
    DiscountTicket:
      type: object
    TransactionItem_tax:
      type: object
      properties:
        object:
          type: string
          description: always List
        data:
          type: array
          items:
            $ref: '#/components/schemas/TaxItem'
        total_count:
          type: integer
          description: Integer count of the number of items in the returned list.
      description: >-
        array to list the individual tax items associated with the corresponding
        transactionItem.
    TransactionItemRefundSummary:
      type: object
      properties:
        created:
          type: string
          format: datetime
        amount:
          type: string
          format: decimal
        tax:
          type: number
        tax_only:
          type: boolean
        refund:
          $ref: '#/components/schemas/Refund'
    TaxItem:
      type: object
      properties:
        object:
          type: string
          description: Value is “TaxItem”
        jurisdiction:
          type: string
          description: Tax jurisdiction
        name:
          type: string
          description: Tax description
        amount:
          type: number
          description: Currency amount of assessed tax
        external_tax_name:
          type: string
        external_tax_category:
          type: string
        external_jurisdiction_name:
          type: string
        tax_rate:
          type: number
        external_tax_identifier:
          type: string
      description: And individual tax assessed for a specified jurisdiction.
    SubscriptionRef:
      type: object
      properties:
        object:
          type: string
          enum:
            - Subscription
        id:
          $ref: '#/components/schemas/ID'
        vid:
          $ref: '#/components/schemas/VID'
    Product_descriptions:
      type: object
      properties:
        object:
          type: string
          description: Must be "List"
          enum:
            - List
        total_count:
          type: integer
          description: Integer count of the number of items in the returned list.
        data:
          type: array
          items:
            $ref: '#/components/schemas/ProductDescription'
      description: Language-specific product/service descriptions
    Product_entitlements:
      type: object
      properties:
        object:
          type: string
          description: Must be "List"
          enum:
            - List
        total_count:
          type: integer
          description: Integer count of the number of items in the returned list.
        data:
          type: array
          items:
            $ref: '#/components/schemas/BareEntitlement'
      description: >-
        Entitlements granted by active subscriptions using this product on one
        or more subscription items.
    Product_inherited_entitlements:
      type: object
      properties:
        object:
          type: string
          description: Must be "List"
          enum:
            - List
        total_count:
          type: integer
          description: Integer count of the number of items in the returned list.
        data:
          type: array
          items:
            $ref: '#/components/schemas/BareEntitlement'
      description: >-
        If a Product has other products bundled with it, the Entitlements for
        the Products in the bundle will be returned
    Product_prices:
      type: object
      properties:
        object:
          type: string
          description: Must be "List"
          enum:
            - List
        total_count:
          type: integer
          description: Integer count of the number of items in the returned list.
        data:
          type: array
          items:
            $ref: '#/components/schemas/ProductPrice'
      description: >-
        Default (i.e. “List”) prices for the product; one price per currency
        code. Prices can be overridden at purchase or with modification.
    ProductDescription:
      type: object
      properties:
        object:
          type: string
          description: Value is “ProductDescription”
          enum:
            - ProductDescription
        language:
          type: string
          description: >-
            The 2 character ISO language code in which the product description
            is written.
        description:
          maxLength: 256
          type: string
          description: >-
            A description of this product written in language. A free-form
            string of less than 256 characters.
    ProductPrice:
      type: object
      properties:
        object:
          type: string
          description: Value is “ProductPrice”
          enum:
            - ProductPrice
        amount:
          type: number
          description: Value of the currency amount.
        currency:
          type: string
          description: >-
            ISO 4217 currency code to be used for this ProductPrice Amount.
            Defaults to USD. Note that this is Mutually Exclusive of token
        token:
          $ref: '#/components/schemas/Token'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      description: The authorization key obtained from MarketONE.
      name: X-API-KEY
      in: header

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.