• Precios
  • Blog
Iniciar sesiónAgendá una demo
Introducción

Inicio rápido

Aprender

OffersIntroductory OffersPromotional OffersPromo CodesMarkets y precios regionalesPeríodos de prueba

Recursos

Referencia del SDKVersionado de APIManejo de erroresTestingCLI

Plugins

Better Auth
DocumentaciónRecursosConstruir con AIAPI ReferenceWebhooks

Markets y precios regionales

Combina precios por moneda, Markets de países reutilizables y variantes seleccionables.

Commet tiene dos capas de precios complementarias:

CapaPara qué sirve
Currency PricingDefine valores del plan, balance y overage en una moneda de presentación
MarketsAgrupa países que deben resolver overrides explícitos de precio y moneda

Currency Pricing sigue siendo el fallback. Agregá Markets cuando necesites segmentación por país o variantes seleccionables.

Crear un Market

Un Market es un recurso de Sales de primer nivel. No requiere un plan ni un precio.

const argentina = await commet.markets.create({
  name: 'Argentina',
  countryCodes: ['AR'],
})

const southernCone = await commet.markets.create({
  name: 'Cono Sur',
  countryCodes: ['BO', 'PY', 'UY'],
})

Un país puede pertenecer a un solo Market activo. Las rutas REST de v9 son /markets y /markets/{id}.

Agregar precios de Market

El monto base sigue siendo el fallback para todos los países sin override de Market.

const basePrice = await commet.plans.addPrice({
  id: 'pln_pro',
  billingInterval: 'monthly',
  price: 4900,
  isDefault: true,
  marketPrices: [
    { marketGroupId: argentina.id, currency: 'ars', price: 6490000 },
    { marketGroupId: southernCone.id, currency: 'usd', price: 3900 },
  ],
})

En checkout, Commet resuelve el Market a partir del país de la solicitud. El checkout de Sandbox permite cambiar Country para probar otro Market; el checkout live ignora ese override.

Variantes seleccionables

Una variante hereda un precio base y solo reemplaza Markets ya configurados en esa base:

const foundingCustomers = await commet.plans.addPrice({
  id: 'pln_pro',
  billingInterval: 'monthly',
  inheritsFromPriceId: basePrice.id,
  metadata: { name: 'Founding customers' },
  marketPrices: [
    { marketGroupId: argentina.id, currency: 'ars', price: 3990000 },
  ],
})

Enviá priceId solamente cuando el customer elige deliberadamente esa variante:

await commet.subscriptions.create({
  customerId: 'user_123',
  planCode: 'pro',
  priceId: foundingCustomers.id,
})

Omitir priceId conserva la resolución normal del precio por defecto y Market.

Renovación y archivado

  • La suscripción guarda la identidad del precio seleccionado.
  • Las renovaciones usan el valor actual de esa fila de precio.
  • Una variante hereda todos los Markets que no reemplaza.
  • Archivar un precio impide nuevas selecciones sin romper suscripciones existentes.
  • Un Market referenciado no puede eliminarse.

Las fases aceptadas de una Offer son un snapshot inmutable separado; el precio seleccionado del catálogo sigue siendo editable.

Compatibilidad con v8

La API 2026-07-24 y el SDK v8 conservan /pricing/market-groups y commet.pricing.*. La API 2026-07-31 y el SDK v9 usan la superficie de Markets de primer nivel.

Relacionado

  • Offers
  • Crear planes
  • Administrar suscripciones
  • Referencia de la API de Markets

¿Cómo está esta guía?

Promo Codes

Distribuye una Offer existente mediante un código que el customer ingresa en checkout.

Períodos de prueba

Usa fases de prueba gratuita en Offers para onboarding automático o campañas explícitas.

On this page

Crear un Market
Agregar precios de Market
Variantes seleccionables
Renovación y archivado
Compatibilidad con v8
Relacionado