--- title: SubscriptionContract - GraphQL Admin description: >- A subscription contract that defines recurring purchases for a customer. Each contract specifies what products to deliver, when to bill and ship them, and at what price. The contract includes [`SubscriptionBillingPolicy`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionBillingPolicy) and [`SubscriptionDeliveryPolicy`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionDeliveryPolicy) that control the frequency of charges and fulfillments. [`SubscriptionLine`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionLine) items define the products, quantities, and pricing for each recurring [`Order`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order). The contract tracks [`SubscriptionBillingAttempt`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionBillingAttempt) records, payment status, and generated orders throughout its lifecycle. [`App`](https://shopify.dev/docs/api/admin-graphql/latest/objects/App) instances manage contracts through various status transitions including active, paused, failed, cancelled, or expired states. Learn more about [building subscription contracts](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/contracts/build-a-subscription-contract) and [updating subscription contracts](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/contracts/update-a-subscription-contract). api_version: 2026-01 api_name: admin type: object api_type: graphql source_url: html: >- https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionContract md: >- https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionContract.md --- # Subscription​Contract object Requires the `read_own_subscription_contracts` or `write_own_subscription_contracts` scope. A subscription contract that defines recurring purchases for a customer. Each contract specifies what products to deliver, when to bill and ship them, and at what price. The contract includes [`SubscriptionBillingPolicy`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionBillingPolicy) and [`SubscriptionDeliveryPolicy`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionDeliveryPolicy) that control the frequency of charges and fulfillments. [`SubscriptionLine`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionLine) items define the products, quantities, and pricing for each recurring [`Order`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order). The contract tracks [`SubscriptionBillingAttempt`](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionBillingAttempt) records, payment status, and generated orders throughout its lifecycle. [`App`](https://shopify.dev/docs/api/admin-graphql/latest/objects/App) instances manage contracts through various status transitions including active, paused, failed, cancelled, or expired states. Learn more about [building subscription contracts](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/contracts/build-a-subscription-contract) and [updating subscription contracts](https://shopify.dev/docs/apps/build/purchase-options/subscriptions/contracts/update-a-subscription-contract). ## Fields * app * appAdminUrl * billingAttempts * billingPolicy * createdAt * currencyCode * customAttributes * customer * customerPaymentMethod * deliveryMethod * deliveryPolicy * deliveryPrice * discounts * id * lastBillingAttemptErrorType * lastPaymentStatus * lines * linesCount * nextBillingDate * note * orders * originOrder * revisionId * status * updatedAt * lineCount: deprecated *** ## Map ### Fields and connections with this object * [Customer.subscriptionContracts](https://shopify.dev/docs/api/admin-graphql/latest/objects/Customer#field-Customer.fields.subscriptionContracts) * [CustomerPaymentMethod.subscriptionContracts](https://shopify.dev/docs/api/admin-graphql/latest/objects/CustomerPaymentMethod#field-CustomerPaymentMethod.fields.subscriptionContracts) * [LineItem.contract](https://shopify.dev/docs/api/admin-graphql/latest/objects/LineItem#field-LineItem.fields.contract) * [SubscriptionBillingAttempt.subscriptionContract](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionBillingAttempt#field-SubscriptionBillingAttempt.fields.subscriptionContract) * [SubscriptionBillingCycle.sourceContract](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionBillingCycle#field-SubscriptionBillingCycle.fields.sourceContract) * [SubscriptionContractConnection.nodes](https://shopify.dev/docs/api/admin-graphql/latest/connections/SubscriptionContractConnection#returns-nodes) * [SubscriptionContractEdge.node](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionContractEdge#field-SubscriptionContractEdge.fields.node) * [SubscriptionDraft.originalContract](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionDraft#field-SubscriptionDraft.fields.originalContract) * [SubscriptionLine.concatenatedOriginContract](https://shopify.dev/docs/api/admin-graphql/latest/objects/SubscriptionLine#field-SubscriptionLine.fields.concatenatedOriginContract) *** ## Queries * subscriptionContract * subscriptionContracts *** ## SubscriptionContract Queries ### Queried by * [subscription​Contract](https://shopify.dev/docs/api/admin-graphql/latest/queries/subscriptionContract) * [subscription​Contracts](https://shopify.dev/docs/api/admin-graphql/latest/queries/subscriptionContracts) *** ## Mutations * subscriptionContractActivate * subscriptionContractAtomicCreate * subscriptionContractCancel * subscriptionContractExpire * subscriptionContractFail * subscriptionContractPause * subscriptionContractProductChange * subscriptionContractSetNextBillingDate * subscriptionDraftCommit *** ## SubscriptionContract Mutations ### Mutated by * [subscription​Contract​Activate](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractActivate) * [subscription​Contract​Atomic​Create](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractAtomicCreate) * [subscription​Contract​Cancel](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractCancel) * [subscription​Contract​Expire](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractExpire) * [subscription​Contract​Fail](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractFail) * [subscription​Contract​Pause](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractPause) * [subscription​Contract​Product​Change](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractProductChange) * [subscription​Contract​Set​Next​Billing​Date](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionContractSetNextBillingDate) * [subscription​Draft​Commit](https://shopify.dev/docs/api/admin-graphql/latest/mutations/subscriptionDraftCommit) *** ## Interfaces * Node * SubscriptionContractBase *** ## SubscriptionContract Implements ### Implements * [Node](https://shopify.dev/docs/api/admin-graphql/latest/interfaces/Node) * [Subscription​Contract​Base](https://shopify.dev/docs/api/admin-graphql/latest/interfaces/SubscriptionContractBase)