---
title: SubscriptionContractBase - Customer API
description: The common fields of a subscription contract.
api_version: 2026-10
source_url:
  html: >-
    https://shopify.dev/docs/api/customer/latest/interfaces/SubscriptionContractBase
  md: >-
    https://shopify.dev/docs/api/customer/latest/interfaces/SubscriptionContractBase.md
api_name: customer
api_type: graphql
type: interface
---

# Subscription​Contract​Base

interface

Requires `customer_read_customers` access scope.

The common fields of a subscription contract.

## Fields

* currency​Code

  [Currency​Code!](https://shopify.dev/docs/api/customer/latest/enums/CurrencyCode)

  non-null

  The currency used for the subscription contract.

* custom​Attributes

  [\[Attribute!\]!](https://shopify.dev/docs/api/customer/latest/objects/Attribute)

  non-null

  A list of custom attributes to be added to the generated orders.

* delivery​Method

  [Subscription​Delivery​Method](https://shopify.dev/docs/api/customer/latest/unions/SubscriptionDeliveryMethod)

  The delivery method for each billing of the subscription contract.

* delivery​Price

  [Money​V2!](https://shopify.dev/docs/api/customer/latest/objects/MoneyV2)

  non-null

  The delivery price for each billing of the subscription contract.

* discounts

  [Subscription​Discount​Connection](https://shopify.dev/docs/api/customer/latest/connections/SubscriptionDiscountConnection)

  The list of subscription discounts associated with the subscription contract.

  * after

    [String](https://shopify.dev/docs/api/customer/latest/scalars/String)

    ### Arguments

    The elements that come after the specified [cursor](https://shopify.dev/api/usage/pagination-graphql).

  * before

    [String](https://shopify.dev/docs/api/customer/latest/scalars/String)

    The elements that come before the specified [cursor](https://shopify.dev/api/usage/pagination-graphql).

  * first

    [Int](https://shopify.dev/docs/api/customer/latest/scalars/Int)

    The first `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql).

  * last

    [Int](https://shopify.dev/docs/api/customer/latest/scalars/Int)

    The last `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql).

  * reverse

    [Boolean](https://shopify.dev/docs/api/customer/latest/scalars/Boolean)

    Default:false

    Reverse the order of the underlying list.

  ***

* lines

  [Subscription​Line​Connection!](https://shopify.dev/docs/api/customer/latest/connections/SubscriptionLineConnection)

  non-null

  A list of subscription lines associated with the subscription contract.

  * after

    [String](https://shopify.dev/docs/api/customer/latest/scalars/String)

    ### Arguments

    The elements that come after the specified [cursor](https://shopify.dev/api/usage/pagination-graphql).

  * before

    [String](https://shopify.dev/docs/api/customer/latest/scalars/String)

    The elements that come before the specified [cursor](https://shopify.dev/api/usage/pagination-graphql).

  * first

    [Int](https://shopify.dev/docs/api/customer/latest/scalars/Int)

    The first `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql).

  * last

    [Int](https://shopify.dev/docs/api/customer/latest/scalars/Int)

    The last `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql).

  * reverse

    [Boolean](https://shopify.dev/docs/api/customer/latest/scalars/Boolean)

    Default:false

    Reverse the order of the underlying list.

  ***

* lines​Count

  [Count](https://shopify.dev/docs/api/customer/latest/objects/Count)

  The number of lines associated with the subscription contract.

* note

  [String](https://shopify.dev/docs/api/customer/latest/scalars/String)

  A note that will be applied to the generated orders.

* orders

  [Order​Connection!](https://shopify.dev/docs/api/customer/latest/connections/OrderConnection)

  non-null

  A list of the subscription contract's orders.

  * after

    [String](https://shopify.dev/docs/api/customer/latest/scalars/String)

    ### Arguments

    The elements that come after the specified [cursor](https://shopify.dev/api/usage/pagination-graphql).

  * before

    [String](https://shopify.dev/docs/api/customer/latest/scalars/String)

    The elements that come before the specified [cursor](https://shopify.dev/api/usage/pagination-graphql).

  * first

    [Int](https://shopify.dev/docs/api/customer/latest/scalars/Int)

    The first `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql).

  * last

    [Int](https://shopify.dev/docs/api/customer/latest/scalars/Int)

    The last `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql).

  * reverse

    [Boolean](https://shopify.dev/docs/api/customer/latest/scalars/Boolean)

    Default:false

    Reverse the order of the underlying list.

  ***

* updated​At

  [Date​Time!](https://shopify.dev/docs/api/customer/latest/scalars/DateTime)

  non-null

  The date and time when the subscription contract was updated.

***

##### Variables

```json
{
	"currencyCode": "",
	"customAttributes": "",
	"deliveryMethod": "",
	"deliveryPrice": "",
	"discounts": {
		"after": "",
		"before": "",
		"first": "",
		"last": "",
		"reverse": ""
	},
	"lines": {
		"after": "",
		"before": "",
		"first": "",
		"last": "",
		"reverse": ""
	},
	"linesCount": "",
	"note": "",
	"orders": {
		"after": "",
		"before": "",
		"first": "",
		"last": "",
		"reverse": ""
	},
	"updatedAt": ""
}
```

##### Schema

```graphql
interface SubscriptionContractBase {
  currencyCode: CurrencyCode!
  customAttributes: [Attribute!]!
  deliveryMethod: SubscriptionDeliveryMethod
  deliveryPrice: MoneyV2!
  discounts: SubscriptionDiscountConnection
  lines: SubscriptionLineConnection!
  linesCount: Count
  note: String
  orders: OrderConnection!
  updatedAt: DateTime!
}
```
