---
id: object/page/8054
type: object
title: Page 8054 "Contract Types"
summary: Page 8054 "Contract Types" in Subscription Billing (Microsoft.SubscriptionBilling). Introduced in BC29, still in BC30.
tier: official
language: en
tags:
  - page
  - subscription billing
versions:
  introduced: "29"
  last_changed: null
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 9e0575504e41d20c6ac8de55e69d9f2c42d41d0cdd37263398751e7af1fa2a63
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Subscription%20Billing/app/Base/Pages/ContractTypes.Page.al
    title: src/Apps/W1/Subscription Billing/app/Base/Pages/ContractTypes.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/SRB/setup/contract-types
    title: Subscription contract types
    date: null
    commit: null
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/SRB/setup/general
    title: General setup
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/SRB/setup/contract-types
    - https://learn.microsoft.com/dynamics365/business-central/SRB/setup/general
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/set-up-business-central/set-up-sales/set-up-subscription-billing
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes:
    - change/bcapps/12053
object_type: page
object_id: 8054
name: Contract Types
caption: Subscription Contract Types
namespace: Microsoft.SubscriptionBilling
app: Subscription Billing
extends: null
first_version: "29"
last_version: "30"
present_in:
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/SRB/setup/contract-types.md
  - docs/learn-smb-docs/business-central/SRB/setup/general.md
counts:
  fields: 0
  procedures: 0
  events: 0
  subscribers: 0
  controls: 8
  actions: 1
relations:
  out: 1
  referenced_by: 0
  pages: 2
  extended_by: 0
  event_subscribers: 0
  calls: 0
  called_by: 0
  implements: 0
---

# Page 8054 "Contract Types"

> Page 8054 "Contract Types" in Subscription Billing (Microsoft.SubscriptionBilling). Introduced in BC29, still in BC30.

Subscription Billing · Microsoft.SubscriptionBilling · captioned "Subscription Contract Types" · BC29-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/W1/Subscription%20Billing/app/Base/Pages/ContractTypes.Page.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | Subscription Contract Types |
| SourceTable | Subscription Contract Type |
| PageType | List |
| UsageCategory | Lists |
| ApplicationArea | All |

## Fields on this page

Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control's own, else the bound field's (marked).

| Group | Control | Shows | ToolTip |
|---|---|---|---|
| Group | Code | [Code](../table/8053.md#fields) | Specifies the unique code of the Subscription Contract Type. |
|  | Description | [Description](../table/8053.md#fields) | Specifies a brief description of the type of contract. |
|  | HarmonizedBillingCustContracts | [HarmonizedBillingCustContracts](../table/8053.md#fields) | Specifies that the contract elements of the Customer Subscription Contracts with this Subscription Contract Type are billed on a common key date. |
|  | DefaultWithoutContractDeferrals <small>obsolete Pending 27.0; #if not CLEAN27</small> | [Def. Without Contr. Deferrals](../table/8053.md#fields) | Specifies the default value for the associated field in the contract. |
|  | ContractDeferrals | [Create Contract Deferrals](../table/8053.md#fields) | Specifies the default value for the associated field in the contract. |
|  | AllowDiffCurrInVendUD | [Allow Diff. Curr. in Vend. UD](../table/8053.md#fields) | Specifies whether vendor contracts of this type allow usage data with a currency different from the contract currency. If enabled, amounts will be automatically converted to the vendor contract currency when creating usage data billing. If disabled, an error will be raised when the usage data curren... <small>from the table field</small> |
|  | AllowDiffCurrInCustUD | [Allow Diff. Curr. in Cust. UD](../table/8053.md#fields) | Specifies whether customer contracts of this type allow usage data with a currency different from the contract currency. If enabled, amounts will be automatically converted to the customer contract currency when creating usage data billing. If disabled, an error will be raised when the usage data cu... <small>from the table field</small> |
|  | No. of Translations | `FieldTranslation.GetNumberOfTranslations(Rec, Rec.FieldNo(Description))` | Specifies the number of translations. |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Processing | Translations | Displays or edits translations. Translations are automatically considered and used according to the language code when printing. |  |

## Relations

- source table [Table 8053 "Subscription Contract Type"](../table/8053.md)

## Pages and codeunits on this table

- [Table 8053 "Subscription Contract Type"](../table/8053.md) (drill-down page)
- [Table 8053 "Subscription Contract Type"](../table/8053.md) (lookup page)

## Recent changes

- 2026-09-30 [#12053 Remove-Sustainability-CLEAN27-tags-for-Wave2-2026](../../changes/bcapps/12053.md) (main, BC30, obsoletion)

## Across versions

- Present in: BC29-30
- Changed (declaration) in: none

## Documented on Microsoft Learn

- [Subscription contract types](https://learn.microsoft.com/dynamics365/business-central/SRB/setup/contract-types)
- [General setup](https://learn.microsoft.com/dynamics365/business-central/SRB/setup/general)

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "page", object_name: "Contract Types")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
