Skip to content

The price object

A price is what a subscription item is on, in the source it lives in: a Stripe price, or a plan in a billing system that has no prices. Every price is on one plan, which groups the prices of one thing you sell — monthly and annual, one per currency, or the same plan in two billing systems. A price is created before any subscription item names it.

Attributes

  • idstring (UUID)

    The price’s Summerbase id. Anywhere a price is addressed, one of its identities works too.

  • objectstring

    The object’s type, always price.

    Always price

  • archivedboolean

    Whether the price has stopped being offered. Existing subscriptions keep it — what somebody paid for last year does not stop being true when you withdraw the price.

  • created_attimestamp

    When the price was first seen.

  • currency_codestring

    The currency it is listed in, by its ISO 4217 code.

  • identitiesarray of strings

    What each source calls this price, as source:id. Any entry addresses it — stripe:cus_123.

  • intervalenum

    The unit it bills in. None for a price charged once.

    One of day, week, month, year

  • interval_countinteger

    How many intervals between charges.

  • namestring

    What the price is called in the source it lives in, when it has a name of its own there — a Stripe price’s nickname. Most have none, and are told apart by their terms.

  • owner_sourceobject

    The source the price came from. Expandable.

    Show 18 child attributes
    • idstring (UUID)

      The source’s unique identifier. Records are identified by its slug.

    • objectstring

      The object’s type, always source.

      Always source

    • connected_attimestamp

      When a provider source was given its credential, or empty: a provider source that has not been connected yet or has been disconnected, and every source that is not a provider’s.

    • created_attimestamp

      When the source was added.

    • import_failed_attimestamp

      When the last import gave up, or empty when none has since the last one succeeded. The source’s log says why.

    • import_progressdecimal string

      How far the running import has got, from 0 to 1, or empty while it does not know yet.

    • import_started_attimestamp

      When the import now running began, or empty when none is. Every metric that reads this source’s records is incomplete until it ends.

    • import_stepstring

      What the running import is doing, in a sentence: Importing customers, 1,240 of 8,100.

    • imported_attimestamp

      When the last import finished, or empty when none has.

    • namestring

      What the source is called, for people reading a screen.

    • priorityinteger

      Where this source sits when resolving name and email. Lower wins, and the project’s own source starts at the top so a manual correction outranks a provider sync. It orders nothing else — every other property is namespaced by source and never arbitrated.

    • project_idstring (UUID)

      The project the source belongs to.

    • provider_account_idstring

      The provider’s own id for the account the source is connected to: acct_… for Stripe. Kept through a disconnect, so that connecting again is checked against it.

    • provider_codeenum

      The code of the system the source pulls from. custom is a source you write to yourself, and the only one that accepts writes; stripe is connected with connect_stripe and fetches for itself.

      One of custom, stripe, summerbase

    • sandboxboolean

      Whether the connection is to the provider’s test mode rather than a live account; empty while nothing is connected.

    • slugstring

      How this source’s records are identified — the stripe in stripe:cus_123. Lowercase letters, digits, hyphens and underscores; unique within the project and fixed once the source exists, because integrations hard-code it. A reference shaped like an id is read as one, so a slug may not look like a UUID.

    • webhook_installed_attimestamp

      When the provider’s webhook was installed for this source — by the connection, or by hand and registered with register_stripe_webhook — or empty: nothing is connected, or the source is connected without a webhook and its changes arrive with the hourly reconcile.

    • webhook_urlstring

      Where the provider posts this source’s events: the address of the endpoint a connection installs, and of one to install by hand. Empty for a source whose provider posts no webhooks.

  • owner_source_idstring (UUID)

    The source the price came from.

  • planobject

    The plan the price is on. Expandable.

    Show 10 child attributes
    • idstring (UUID)

      The plan’s Summerbase id. Anywhere a plan is addressed, one of its identities works too.

    • objectstring

      The object’s type, always plan.

      Always plan

    • archivedboolean

      Whether the plan has stopped being offered — the archived property, resolved to the highest-priority source that says one; Stripe says it of a product it has archived. Write properties.archived to change it. Existing subscriptions keep the plan: what somebody paid for last year does not stop being true when you withdraw it.

    • created_attimestamp

      When the plan was first seen.

    • identitiesarray of strings

      What each source calls this plan, as source:id. Any entry addresses it — stripe:cus_123.

    • namestring

      What the plan is called in a filter, a legend or a breakdown — the name property, resolved to the highest-priority source that has one. Write properties.name to change it. Null when no source names it.

    • price_countinteger

      How many prices are on this plan.

    • pricesarray of objects

      The prices on this plan, in every source. Expandable.

      Show 17 child attributes
      • idstring (UUID)

        The price’s Summerbase id. Anywhere a price is addressed, one of its identities works too.

      • objectstring

        The object’s type, always price.

        Always price

      • archivedboolean

        Whether the price has stopped being offered. Existing subscriptions keep it — what somebody paid for last year does not stop being true when you withdraw the price.

      • created_attimestamp

        When the price was first seen.

      • currency_codestring

        The currency it is listed in, by its ISO 4217 code.

      • identitiesarray of strings

        What each source calls this price, as source:id. Any entry addresses it — stripe:cus_123.

      • intervalenum

        The unit it bills in. None for a price charged once.

        One of day, week, month, year

      • interval_countinteger

        How many intervals between charges.

      • namestring

        What the price is called in the source it lives in, when it has a name of its own there — a Stripe price’s nickname. Most have none, and are told apart by their terms.

      • owner_sourceobject

        The source the price came from. Expandable.

      • owner_source_idstring (UUID)

        The source the price came from.

      • planobject

        The plan the price is on. Expandable.

      • plan_idstring (UUID)

        The plan the price is on.

      • pricing_modelenum

        How an item’s unit amount is arrived at on this price.

        One of fixed, tiered, metered

      • propertiesobject

        Your source’s properties on this price, as they stand now. What you write here is what you read back — another source’s values never appear in it and can never be overwritten through it. properties_by_source has everyone’s.

      • properties_by_sourceobject

        Every source’s properties on this price, keyed by source slug — including your own. Read-only: a write only ever reaches the source it is attributed to.

      • unit_amountdecimal string

        What one unit is listed at per interval: for a metered price, one unit of usage. None for a tiered one, whose units cost what their tier says. Excludes tax.

    • propertiesobject

      Your source’s properties on this plan, as they stand now. What you write here is what you read back — another source’s values never appear in it and can never be overwritten through it. properties_by_source has everyone’s.

    • properties_by_sourceobject

      Every source’s properties on this plan, keyed by source slug — including your own. Read-only: a write only ever reaches the source it is attributed to.

  • plan_idstring (UUID)

    The plan the price is on.

  • pricing_modelenum

    How an item’s unit amount is arrived at on this price.

    One of fixed, tiered, metered

  • propertiesobject

    Your source’s properties on this price, as they stand now. What you write here is what you read back — another source’s values never appear in it and can never be overwritten through it. properties_by_source has everyone’s.

  • properties_by_sourceobject

    Every source’s properties on this price, keyed by source slug — including your own. Read-only: a write only ever reaches the source it is attributed to.

  • unit_amountdecimal string

    What one unit is listed at per interval: for a metered price, one unit of usage. None for a tiered one, whose units cost what their tier says. Excludes tax.

Example

{
"archived": false,
"created_at": "2025-09-08T14:12:30Z",
"currency_code": "USD",
"id": "0198f1a4-2e5f-7b80-a1c2-3d4e5f6a7b8c",
"identities": [
"stripe:price_1PqR8sT2uV4wX6yZ"
],
"interval": "month",
"interval_count": 1,
"name": "Growth monthly",
"object": "price",
"owner_source_id": "0198f1a3-0b7c-7e25-9f41-6a2d8c3e5b19",
"plan_id": "0198f1a4-1d2e-7a40-9b31-5c6d7e8f9a0b",
"pricing_model": "fixed",
"properties": {
"tier": "mid"
},
"properties_by_source": {
"backend": {
"tier": "mid"
}
},
"unit_amount": "50.00"
}

Endpoints