Passer au contenu principal
Cette page fournit une référence complète du schéma pour toutes les données exportées de Metronome vers votre data warehouse. Utilisez cette référence pour comprendre la structure et le contenu de chaque table disponible dans vos exports. Pour des exemples de requêtes SQL, voir le cookbook SQL.
COLONNES NULLABLESEn raison de notre méthodologie d’export, toutes les colonnes peuvent apparaître comme nullables dans le schéma de destination.

Entités principales

Types de données et entités fondamentaux utilisés à travers Metronome.

billable_metric

ColonneTypeDescription
idstringID de la billable metric
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
aggregatestringLe type d’agrégation
aggregate_keysjsonLes clés utilisées pour l’agrégation
group_keysjsonLes clés group by associées à cette billable metric
namestringNom de la billable metric
created_attimestampLe timestamp (UTC) de la création de la billable_metric
archived_attimestampLe timestamp (UTC) de l’archivage de la billable_metric
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de la billable_metric

credit_type

ColonneTypeDescription
_metronome_metadata_idstringID des métadonnées Metronome
idstringL’ID du credit type
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
namestringLe nom du credit type
is_currencybooleanIndique si le credit type est une monnaie, TRUE ou FALSE
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

Events

L’ensemble complet des événements bruts dédupliqués reçus par Metronome, qu’ils correspondent ou non à une billable metric.

events

ColonneTypeDescription
transaction_idstringL’ID unique de l’événement
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
customer_idstringL’ID du client auquel l’événement s’applique
timestamptimestampLe timestamp (UTC) de l’événement
event_typestringLe type d’événement
propertiesjsonLes propriétés de l’événement
_metronome_metadata_idstringID des métadonnées Metronome
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

Customers

Inclut les métadonnées des clients stockées dans Metronome, y compris leurs ingest aliases, qui peuvent être joints à la table events. La colonne archived_at est utilisée pour déterminer si le client est actif.

customer

ColonneTypeDescription
idstringL’ID Metronome du client
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
namestringLe nom du client
ingest_aliasesjsonLes ingest aliases du client
salesforce_account_idstringL’ID du compte Salesforce pour le client
billing_provider_typestringLe billing provider connecté au client
billing_provider_customer_idstringL’ID du client chez le billing provider
custom_fieldsjsonCustom fields attachés au client
created_attimestampLe timestamp (UTC) de la création du client
updated_attimestampLe timestamp (UTC) de la dernière mise à jour du client
archived_attimestampLe timestamp (UTC) de l’archivage du client, le cas échéant

Facturation

Toutes les données liées à la facturation, y compris les factures finalisées, les brouillons et les ventilations détaillées.

Factures finalisées

Inclut toutes les factures clients qui ont été finalisées ou annulées. Aucune modification supplémentaire ne peut être apportée à ces factures ou à leurs line items correspondants.

invoice

ColonneTypeDescription
idstringL’ID de facture Metronome
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
statusstringLe statut de facture Metronome : FINALIZED ou VOID
totaldecimalLe total de la facture
credit_type_idstringL’ID du credit type pour la facture
credit_type_namestringLe nom du credit type associé à la facture
customer_idstringL’ID Metronome du client
plan_idstringChamp déprécié — attendez-vous à NULL
plan_namestringChamp déprécié — attendez-vous à NULL
contract_idstringL’ID de contrat associé à la facture
billing_provider_invoice_idstringL’ID de facture externe du billing provider (par exemple, Stripe)
billing_provider_typestringLe type de billing provider du système externe (par exemple, Stripe)
billing_provider_invoice_created_attimestampLe timestamp (UTC) de la création de la facture externe par Metronome
billing_provider_invoice_external_statusstringLe statut de la facture dans le système externe (par exemple, Stripe)
invoice_labelstringL’étiquette catégorielle de la facture
metadatajsonMetadata
start_timestamptimestampDébut de la période d’utilisation que cette facture couvre (UTC)
end_timestamptimestampFin de la période d’utilisation que cette facture couvre (UTC)
issued_attimestampLe timestamp (UTC) de l’émission de la facture
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

line_item

ColonneTypeDescription
idstringL’ID du line item
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
invoice_idstringL’ID de facture Metronome associé au line item
credit_grant_idstringChamp déprécié — attendez-vous à NULL
credit_type_idstringL’ID du credit type associé au line item
credit_type_namestringLe nom du credit type associé au line item
namestringLa description du line item
quantitydecimalLa quantité associée au line item ; ce sera toujours 1 pour les ajustements de facture
totaldecimalLe total du line item
commit_idstringL’ID du commit associé au line item. Présent uniquement pour les Contract Invoices
product_idstringL’ID du produit associé au line item ; ce sera toujours NULL pour les ajustements de facture
group_keystringLa group key associée au line item
group_valuestringLa group value associée au line item
unit_pricedecimalLe prix associé au line item
pricing_group_valuesjsonTableau facultatif des pricing group values
metadatajsonMetadata
subscription_idstringL’ID de l’abonnement associé au line item. Présent uniquement pour les frais d’abonnement.
is_proratedbooleanIndique si la valeur est calculée au prorata sur la période. Pour les frais d’abonnement uniquement.
starting_attimestampLe timestamp (UTC) à partir duquel le line item est effectif (inclus)
ending_beforetimestampLe timestamp (UTC) jusqu’auquel le line item est effectif (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour du line item

Factures brouillon

Inclut toutes les factures clients qui sont à l’état brouillon. Ces tables sont des snapshots quotidiens de factures basés sur la configuration et l’utilisation de chaque client à un instant donné de la journée. La colonne updated_at est l’heure à laquelle la ligne de facture a été calculée tandis que snapshot_time correspond au début de la journée (UTC). Une ligne de facture sera renseignée une fois par jour tout au long d’une période de facturation jusqu’à ce qu’elle soit finalisée ou annulée. Si une facture est à l’état DRAFT_INCOMPLETE, cela signifie que Metronome n’a pas entièrement calculé la facture. Il n’y aura pas de line items ni de total sur la facture. L’export de ces factures vous permet de savoir que la facture existe, mais que Metronome n’a pas réussi à la calculer pour une raison quelconque. L’export des factures incomplètes permet à Metronome d’envoyer les données vers la destination spécifiée le plus rapidement possible. Nous nous attendons à ce que ces factures incomplètes soient hydratées dans les snapshots futurs.

draft_invoice

ColonneTypeDescription
_metronome_metadata_idstringIdentifiant unique pour chaque paire ID de facture brouillon + snapshot_time
idstringL’ID de facture Metronome
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_timetimestampLe timestamp (UTC) correspondant au début du snapshot
statusstringLe statut de facture Metronome : DRAFT ou DRAFT_INCOMPLETE (voir la table invoice pour les factures FINALIZED et VOID)
totaldecimalLe total de la facture
credit_type_idstringL’ID du credit type pour la facture
credit_type_namestringLe nom du credit type associé à la facture
customer_idstringL’ID Metronome du client
plan_idstringChamp déprécié — attendez-vous à NULL
plan_namestringChamp déprécié — attendez-vous à NULL
contract_idstringL’ID de contrat associé à la facture
billable_statusstringStatut facturable de la facture, BILLABLE ou UNBILLABLE
billing_provider_invoice_idstringL’ID de facture externe du billing provider (par exemple, Stripe)
billing_provider_invoice_created_attimestampLe timestamp (UTC) de la création de la facture externe par Metronome
labelstringL’étiquette catégorielle de la facture
start_timestamptimestampDébut de la période d’utilisation que cette facture couvre (UTC)
end_timestamptimestampFin de la période d’utilisation que cette facture couvre (UTC)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

draft_line_item

ColonneTypeDescription
_metronome_metadata_idstringIdentifiant unique opaque pour chaque ligne
idstringL’ID du line item
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_timetimestampLe timestamp (UTC) correspondant au début du snapshot
invoice_idstringL’ID de facture Metronome associé au line item
credit_grant_idstringChamp déprécié — attendez-vous à NULL
credit_type_idstringL’ID du credit type associé au line item
credit_type_namestringLe nom du credit type associé au line item
namestringLa description du line item
quantitydecimalLa quantité associée au line item ; ce sera toujours 1 pour les ajustements de facture
totaldecimalLe total du line item
commit_idstringL’ID du commit associé au line item. Présent uniquement pour les Contract Invoices
product_idstringL’ID du produit associé au line item ; ce sera toujours NULL pour les ajustements de facture
group_keystringLa group key associée au line item
group_valuestringLa group value associée au line item
unit_pricedecimalLe prix associé au line item
pricing_group_valuesjsonTableau facultatif des pricing group values
subscription_idstringL’ID de l’abonnement associé au line item. Présent uniquement pour les frais d’abonnement.
is_proratedbooleanIndique si la valeur est calculée au prorata sur la période. Pour les frais d’abonnement uniquement.
metadatajsonMetadata
starting_attimestampLe timestamp (UTC) à partir duquel le line item est effectif (inclus)
ending_beforetimestampLe timestamp (UTC) jusqu’auquel le line item est effectif (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour du line item

Ventilations de factures

Les ventilations de factures sont stockées dans quatre tables distinctes qui sont exportées quotidiennement vers votre destination warehouse. Les données de factures brouillon sont exportées en snapshots contenant toutes les périodes de breakdown du mois en cours jusqu’au timestamp du snapshot. Cela garantit que tout changement de pricing et packaging en milieu de période de facturation, ainsi que les données d’utilisation rétroactives, sont correctement reflétés dans le snapshot de breakdown de facture brouillon le plus récent. Les ventilations de factures finalisées sont exportées de manière incrémentale au fur et à mesure que les factures sont finalisées.
FILTRES DE VENTILATIONS DE FACTURESPour réduire le volume de données exportées vers votre destination data warehouse, vous pouvez filtrer les exports de ventilations de factures pour ignorer :
  • Toutes les factures et line items avec un total de 0 $ et une quantité > 0
  • Toutes les factures et line items avec un total de 0 $ et une quantité de 0
Pour activer les filtres, contactez votre Solutions Architect Metronome.

breakdowns_invoices

ColonneTypeDescription
idstringL’ID de la ventilation de facture Metronome
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_timestamptimestampLe timestamp (UTC) correspondant au début du snapshot
invoice_idstringL’ID de facture Metronome associé à la ventilation
customer_idstringL’ID de client Metronome associé à la ventilation
transfer_idstringL’ID de transfert Metronome pour cette ventilation de facture
credit_type_idstringL’ID du credit type associé à la facture
net_payment_term_daysintegerLe délai de paiement net en jours associé à la facture
credit_type_namestringLe nom du credit type associé à la facture
subtotaldecimalChamp déprécié — attendez-vous à NULL sauf si vous utilisez le modèle de données Plans
totaldecimalLe total de la facture
typestringLe type de facture
external_invoicejsonLes données de la facture externe
plan_idstringChamp déprécié — attendez-vous à NULL sauf si vous utilisez le modèle de données Plans
contract_idstringL’ID de contrat associé à la facture
amendment_idstringL’ID d’amendement associé à la facture
custom_fieldsjsonCustom fields qui s’appliquent à la facture
billable_statusstringLe statut facturable de la facture
window_sizestringLa taille de la fenêtre de breakdown — généralement DAILY
metadatajsonMetadata
issued_attimestampLe timestamp (UTC) de l’émission de cette facture
invoice_start_timestamptimestampDébut de la période d’utilisation que cette facture couvre (UTC) (inclus)
invoice_end_timestamptimestampFin de la période d’utilisation que cette facture couvre (UTC) (exclus)
breakdown_start_timestamptimestampLe timestamp correspondant au début de la fenêtre de breakdown (inclus)
breakdown_end_timestamptimestampLe timestamp correspondant à la fin de la fenêtre de breakdown (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

breakdowns_line_items

ColonneTypeDescription
idstringL’ID de la ventilation de line item Metronome
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_timestamptimestampLe timestamp (UTC) correspondant au début du snapshot
watermark_timestamptimestampLe timestamp indiquant la dernière modification de cette ligne
invoice_breakdown_idstringL’ID de la ventilation de facture Metronome associé au line item
namestringLe nom du line item associé à la ventilation
transfer_idstringL’ID de transfert Metronome pour cette ventilation de line item
group_keystringLa group key associée au line item
group_valuestringLa group value associée au line item
quantitydecimalLa quantité de cette ligne de ventilation de line item — toujours 1 pour les ajustements de facture
totaldecimalLe total de la ventilation de line item
unit_pricedecimalLe prix unitaire du line item
product_idstringL’ID du produit pour le line item — toujours NULL pour les ajustements de facture
product_typestringLe type de produit pour la ventilation de line item
credit_type_idstringL’ID du credit type associé au line item
credit_type_namestringLe nom du credit type associé au line item
commit_idstringL’ID du commit associé à la ventilation de line item
commit_segment_idstringL’ID du commit segment associé à la ventilation de line item
commit_typestringLe type de commit associé à la ventilation de line item
subscription_idstringL’ID de l’abonnement associé à la ventilation de line item — présent uniquement pour les frais d’abonnement.
is_proratedbooleanIndique si la valeur est calculée au prorata sur la période. Pour les frais d’abonnement uniquement.
line_item_idstringL’id unique du line item qui peut être utilisé pour joindre avec des enregistrements de la table line_item
line_item_typestringLe type unique de line item qui définit le type de revenu représenté dans le line item
custom_fieldsjsonCustom fields qui s’appliquent à la ventilation
pricing_group_valuesjsonLes pricing group values associées à la ventilation de line item
presentation_group_valuesjsonLes presentation group values associées à la ventilation de line item
billable_metric_idstringL’ID de billable metric qui s’applique à la ventilation de line item
metadatajsonMétadonnées supplémentaires au format JSON (voir Metadata)
breakdown_start_timestamptimestampLe timestamp correspondant au début de la fenêtre de breakdown (inclus)
breakdown_end_timestamptimestampLe timestamp correspondant à la fin de la fenêtre de breakdown (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

breakdowns_draft_invoices

ColonneTypeDescription
idstringL’ID de la ventilation de facture Metronome
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_timestamptimestampLe timestamp (UTC) correspondant au début du snapshot
invoice_idstringL’ID de facture Metronome associé à la ventilation
customer_idstringL’ID de client Metronome associé à la ventilation
transfer_idstringL’ID de transfert Metronome pour cette ventilation de facture
credit_type_idstringL’ID du credit type associé à la facture
net_payment_term_daysintegerLe délai de paiement net en jours associé à la facture
credit_type_namestringLe nom du credit type associé à la facture
subtotaldecimalChamp déprécié — attendez-vous à NULL sauf si vous utilisez le modèle de données Plans
totaldecimalLe total de la facture
typestringLe type de facture
external_invoicejsonLes données de la facture externe
plan_idstringChamp déprécié — attendez-vous à NULL sauf si vous utilisez le modèle de données Plans
contract_idstringL’ID de contrat associé à la facture
amendment_idstringL’ID d’amendement associé à la facture
custom_fieldsjsonCustom fields qui s’appliquent à la facture
billable_statusstringLe statut facturable de la facture
window_sizestringLa taille de la fenêtre de breakdown — généralement DAILY
metadatajsonMétadonnées supplémentaires au format JSON
issued_attimestampLe timestamp (UTC) de l’émission de cette facture
invoice_start_timestamptimestampDébut de la période d’utilisation que cette facture couvre (UTC) (inclus)
invoice_end_timestamptimestampFin de la période d’utilisation que cette facture couvre (UTC) (exclus)
breakdown_start_timestamptimestampLe timestamp correspondant au début de la fenêtre de breakdown (inclus)
breakdown_end_timestamptimestampLe timestamp correspondant à la fin de la fenêtre de breakdown (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

breakdowns_draft_line_items

ColonneTypeDescription
idstringL’ID de la ventilation de line item Metronome
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_timestamptimestampLe timestamp (UTC) correspondant au début du snapshot
watermark_timestamptimestampLe timestamp indiquant la dernière modification de cette ligne
invoice_breakdown_idstringL’ID de la ventilation de facture Metronome associé au line item
namestringLe nom du line item associé à la ventilation
transfer_idstringL’ID de transfert Metronome pour cette ventilation de line item
group_keystringLa group key associée au line item
group_valuestringLa group value associée au line item
quantitydecimalLa quantité de cette ligne de ventilation de line item ; toujours 1 pour les ajustements de facture
totaldecimalLe total de la ventilation de line item
unit_pricedecimalLe prix unitaire du line item
product_idstringL’ID du produit pour le line item ; toujours NULL pour les ajustements de facture
product_typestringLe type de produit pour la ventilation de line item
credit_type_idstringL’ID du credit type associé au line item
credit_type_namestringLe nom du credit type associé au line item
commit_idstringL’ID du commit associé à la ventilation de line item
commit_segment_idstringL’ID du commit segment associé à la ventilation de line item
commit_typestringLe type de commit associé à la ventilation de line item
subscription_idstringL’ID de l’abonnement associé à la ventilation de line item ; présent uniquement pour les frais d’abonnement.
is_proratedbooleanIndique si la valeur est calculée au prorata sur la période. Pour les frais d’abonnement uniquement.
line_item_idstringL’id unique du line item qui peut être utilisé pour joindre avec des enregistrements de la table line_item
line_item_typestringLe type unique de line item qui définit le type de revenu représenté dans le line item
custom_fieldsjsonCustom fields qui s’appliquent à la ventilation
pricing_group_valuesjsonLes pricing group values associées à la ventilation de line item
presentation_group_valuesjsonLes presentation group values associées à la ventilation de line item
billable_metric_idstringL’ID de billable metric qui s’applique à la ventilation de line item
metadatajsonMétadonnées supplémentaires au format JSON (voir Metadata)
breakdown_start_timestamptimestampLe timestamp correspondant au début de la fenêtre de breakdown (inclus)
breakdown_end_timestamptimestampLe timestamp correspondant à la fin de la fenêtre de breakdown (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

Contrats

Inclut les informations sur les contrats. La colonne archived_at définit si le contrat a été archivé ou non.

contracts_contracts

ColonneTypeDescription
idstringID du contrat
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne de contrat
namestringNom du contrat
customer_idstringL’ID client du contrat
package_idstringL’ID du package à partir duquel le contrat a été créé, le cas échéant.
rate_card_idstringL’ID de la rate card du contrat
starting_attimestampLe timestamp (UTC) de début du contrat
ending_beforetimestampLe timestamp (UTC) de fin du contrat. Ce timestamp est exclusif.
archived_attimestampLe timestamp (UTC) de l’archivage du contrat.
multiplier_override_prioritizationstringLa priorisation pour un multiplier override. Il existe deux options :
• Multiplicateur le plus bas (par défaut) : le multiplicateur le plus bas, c’est-à-dire la plus grande remise, est utilisé.
• Explicite : l’override avec la priorité la plus basse sera priorisé.
net_payment_terms_daysintegerLe délai dont dispose un client pour payer un contrat. Par exemple, « net 30 »
usage_statement_schedule_frequencystringLa fréquence de génération du relevé d’utilisation. Par exemple, « monthly » ou « quarterly ».
scheduled_charges_on_usage_invoicesstringLes valeurs valides sont ALL si les factures programmées seront combinées avec les factures d’utilisation à la même date, sinon null.
metadataMetadataObjet encodé en JSON
created_attimestampLe timestamp (UTC) de la création du contrat
created_bystringL’entité par laquelle le contrat a été créé
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_commits

La table commits n’inclut que les commits au niveau du contrat. Elle n’inclut pas les commits ou credits au niveau du client, ni les credits au niveau du contrat.
ColonneTypeDescription
idstringLe commit
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot de la ligne
contract_idstringL’ID de contrat du commit
amendment_idstringL’ID d’amendement associé au commit
typestringLe type de commit : postpaid ou prepaid
namestringLe nom du commit
priorityfloatLa priorité qui définit l’ordre dans lequel les commits doivent être appliqués
descriptionstringLa description du commit
product_idstringL’ID du produit associé au commit
amountfloatDéprécié (utilisez plutôt le montant des schedule items)
access_schedulejsonAccessSchedule
invoice_schedulejsonInvoiceSchedule L’invoice_schedule est toujours défini pour les commits « postpaid », parfois défini pour les commits « prepaid », et jamais pour « credit »
rollover_fractionfloatLa fraction du commit qui a été reportée
rate_typestringSoit COMMIT_RATE soit LIST_RATE
applicable_product_idsjsonListe encodée en JSON des IDs de produits applicables
applicable_product_tagsjsonListe encodée en JSON des tags de produits applicables
specifiersjsonCommitSpecifier[] — Liste encodée en JSON de l’utilisation applicable
ledgerjsonCommitLedgerEntry[]
rolled_over_from_commit_idstringL’ID de commit à partir duquel le commit a été reporté
rolled_over_from_contract_idstringL’ID de contrat à partir duquel le commit a été reporté
recurring_commit_idstringL’ID de la configuration parent qui a créé ce commit (null si ce commit n’a pas été créé par un recurring commit)
metadatajsonMetadata
balancefloatLe solde actuel du commit. Ce solde reflète le montant du commit auquel le client a accès en ce moment. Les segments de commit expirés et à venir contribuent à hauteur de 0 au solde. Le solde correspond à la somme de toutes les entrées du registre, sauf lorsque la somme des entrées manuelles négatives du registre dépasse le montant positif restant sur le commit. Dans ce cas, le solde est 0. Toutes les entrées manuelles du registre associées à des segments de commit actifs sont incluses dans le solde, y compris les entrées manuelles du registre à date future.
updated_attimestampLe timestamp (UTC) de la dernière mise à jour du commit

contracts_commits.AccessSchedule

interface AccessSchedule {
  credit_type_id: string;
  credit_type_name: string;
  schedule_items: Array<{
    id: string;
    /** ISO-8601 formatted timestamp */
    date: string;
    /** ISO-8601 formatted timestamp */
    end_date: string | null;
    /** Float */
    amount: number;
  }>;
}

contracts_commits.InvoiceSchedule

interface InvoiceSchedule {
  credit_type_id: string;
  credit_type_name: string;
  do_not_invoice: boolean;
  schedule_items: Array<{
    id: string;
    /** ISO-8601 formatted timestamp */
    date: string;
    /** Float */
    amount: number;
    invoice_id: string | null;
  }>;
  recurring_schedule: {
    /** ISO-8601 formatted timestamp */
    start_date: string;
    /** ISO-8601 formatted timestamp */
    end_date: string;
    /** Float */
    amount: number;
    amount_distribution: "divided" | "divided_rounded" | "each";
    frequency: "annual" | "monthly" | "quarterly" | "semi_annual";
    /** Float */
    quantity?: number;
    /** Float */
    unit_price?: number;
  } | null;
}

contracts_commits.CommitLedgerEntry

type LedgerEntry =
  | {
      /**
       * Represents the starting balance of a postpaid commit.
       */
      type: "postpaid_initial_balance";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
    }
  | {
      /**
       * Represents deductions from the remaining obligation of the
       * postpaid commit as the result of an invoice with usage that
       * applies to this commit.
       */
      type: "postpaid_automated_invoice_deduction";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      invoice_id: string;
    }
  | {
      /**
       * Represents a true-up invoice that was issued for this commit to
       * cover usage that was not covered by automated usage invoices.
       */
      type: "postpaid_trueup";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      invoice_id: string;
    }
  | {
      /**
       * Represents that a prepaid commit segment was started and the customer
       * now has access to the usage amount for that segment. These segments
       * are described in the access schedule of the prepaid commit.
       */
      type: "prepaid_segment_start";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
    }
  | {
      /**
       * Represents deductions from the prepaid commit segment caused by a
       * usage invoice that included usage applicable to this commit.
       */
      type: "prepaid_automated_invoice_deduction";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      /**
       * Represents unused usage from the prepaid commit which was rolled
       * over to a new contract.
       */
      type: "prepaid_rollover";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      new_contract_id: string;
      new_commit_id: string;
    }
  | {
      type: "prepaid_commit_canceled";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      type: "prepaid_commit_credited";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      /**
       * Represents commit amount that was unused and expired at the end of
       * a commit segment. Does not include usage that rolled over to a new
       * contract.
       */
      type: "prepaid_segment_expiration";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
    }
  | {
      type: "prepaid_manual";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      reason: string;
    }
  | {
      type: "postpaid_manual";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
    };

contracts_commits.CommitSpecifier

type CommitSpecifier = {
  product_id?: string;
  product_tags?: string[];
  presentation_group_values?: {
    [key: string]: string;
  };
  pricing_group_values?: {
    [key: string]: string;
  };
}

contracts_balances

ColonneTypeDescription
idstringL’ID du solde
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot de la ligne
customer_idstringL’ID client du solde
contract_idstringL’ID de contrat du solde
amendment_idstringL’ID d’amendement du solde
typestringSoit postpaid, prepaid ou credit
namestringLe nom du solde
priorityfloatLa priorité qui définit l’ordre d’application du solde
descriptionstringLa description du solde
product_idstringL’ID du produit associé au solde
access_schedulejsonAccessSchedule
invoice_schedulejsonInvoiceSchedule — L’invoice_schedule est toujours défini pour les commits « postpaid », parfois défini pour les commits « prepaid », et jamais pour « credit »
rollover_fractionfloatLa fraction du solde qui a été reportée
rate_typestringSoit COMMIT_RATE soit LIST_RATE
applicable_product_idsjsonListe encodée en JSON des IDs de produits applicables
applicable_product_tagsjsonListe encodée en JSON des tags de produits applicables
specifiersjsonCommitSpecifier[] — Liste encodée en JSON de l’utilisation applicable
applicable_contract_idsjsonListe encodée en JSON des IDs de contrats applicables
invoice_contract_idstringL’ID de contrat de facturation associé au solde
ledgerjsonCommitLedgerEntry[]
rolled_over_from_commit_idstringL’ID de commit à partir duquel le solde a été reporté
rolled_over_from_contract_idstringL’ID de contrat à partir duquel le solde a été reporté
recurring_commit_idstringL’ID de la configuration parent qui a créé ce commit / credit (null si ce commit n’a pas été créé par un recurring commit / credit)
metadatajsonMetadata
balancefloatLe solde actuel du credit ou commit. Ce solde reflète le montant du credit ou du commit auquel le client a accès en ce moment. Les segments de credit ou commit expirés et à venir contribuent à hauteur de 0 au solde. Le solde correspond à la somme de toutes les entrées du registre, sauf lorsque la somme des entrées manuelles négatives du registre dépasse le montant positif restant sur le credit ou commit. Dans ce cas, le solde est 0. Toutes les entrées manuelles du registre associées à des segments de credit ou commit actifs sont incluses dans le solde, y compris les entrées manuelles du registre à date future.
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_balances.AccessSchedule

interface AccessSchedule {
  credit_type_id: string;
  credit_type_name: string;
  schedule_items: Array<{
    id: string;
    /** ISO-8601 formatted timestamp */
    date: string;
    /** ISO-8601 formatted timestamp */
    end_date: string | null;
    /** Float */
    amount: number;
  }>;
}

contracts_balances.InvoiceSchedule

interface InvoiceSchedule {
  credit_type_id: string;
  credit_type_name: string;
  do_not_invoice: boolean;
  schedule_items: Array<{
    id: string;
    /** ISO-8601 formatted timestamp */
    date: string;
    /** Float */
    amount: number;
    invoice_id: string | null;
  }>;
  recurring_schedule: {
    /** ISO-8601 formatted timestamp */
    start_date: string;
    /** ISO-8601 formatted timestamp */
    end_date: string;
    /** Float */
    amount: number;
    amount_distribution: "divided" | "divided_rounded" | "each";
    frequency: "annual" | "monthly" | "quarterly" | "semi_annual";
    /** Float */
    quantity?: number;
    /** Float */
    unit_price?: number;
  } | null;
}

contracts_balances.CommitLedgerEntry

type LedgerEntry =
  | {
      /**
       * Represents the starting balance of a postpaid commit.
       */
      type: "postpaid_initial_balance";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
    }
  | {
      /**
       * Represents deductions from the remaining obligation of the
       * postpaid commit as the result of an invoice with usage that
       * applies to this commit.
       */
      type: "postpaid_automated_invoice_deduction";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      invoice_id: string;
    }
  | {
      /**
       * Represents a true-up invoice that was issued for this commit to
       * cover usage that was not covered by automated usage invoices.
       */
      type: "postpaid_trueup";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      invoice_id: string;
    }
  | {
      /**
       * Represents that a prepaid commit segment was started and the customer
       * now has access to the usage amount for that segment. These segments
       * are described in the access schedule of the prepaid commit.
       */
      type: "prepaid_segment_start";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
    }
  | {
      /**
       * Represents deductions from the prepaid commit segment caused by a
       * usage invoice that included usage applicable to this commit.
       */
      type: "prepaid_automated_invoice_deduction";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      /**
       * Represents unused usage from the prepaid commit which was rolled
       * over to a new contract.
       */
      type: "prepaid_rollover";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      new_contract_id: string;
      new_commit_id: string;
    }
  | {
      type: "prepaid_commit_canceled";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      type: "prepaid_commit_credited";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      /**
       * Represents commit amount that was unused and expired at the end of
       * a commit segment. Does not include usage that rolled over to a new
       * contract.
       */
      type: "prepaid_segment_expiration";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
    }
  | {
      type: "prepaid_manual";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      reason: string;
    }
  | {
      type: "postpaid_manual";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
    }
  | {
      /**
       * Represents that a credit segment was started and the customer
       * now has access to the usage amount for that segment. These segments
       * are described in the access schedule of the credit.
       */
      type: "credit_segment_start";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
    }
  | {
      /**
       * Represents deductions from the credit segment caused by a
       * usage invoice that included usage applicable to this credit.
       */
      type: "credit_automated_invoice_deduction";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      type: "credit_commit_canceled";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      type: "credit_commit_credited";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      invoice_id: string;
    }
  | {
      /**
       * Represents credit amount that was unused and expired at the end of
       * a credit segment.
       */
      type: "credit_segment_expiration";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
    }
  | {
      type: "credit_manual";
      /** ISO-8601 formatted timestamp */
      timestamp: string;
      /** Float */
      amount: number;
      segment_id: string;
      reason: string;
    };

contracts_balances.CommitSpecifier

type CommitSpecifier = {
  product_id?: string;
  product_tags?: string[];
  presentation_group_values?: {
    [key: string]: string;
  };
  pricing_group_values?: {
    [key: string]: string;
  };
}
Cela inclut tous les recurring commits et credits définis sur les contrats.

contracts_recurring_commits_and_credits

ColonneTypeDescription
idstringL’ID unique du recurring commit/credit
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot de la ligne
contract_idstringL’ID de contrat du recurring commit/credit
customer_idstringL’ID client associé au recurring commit/credit
typestringLe type : commit ou credit
namestringLe nom transmis aux commits/credits créés
priorityfloatLa priorité transmise aux commits/credits créés
descriptionstringLa description transmise aux commits/credits créés
product_idstringL’ID de produit transmis aux commits/credits créés
access_amountjsonAccessAmount
invoice_amountjsonInvoiceAmount — Non défini pour les recurring credits, mais optionnel pour les recurring commits
rollover_fractionfloatLe montant de rollover transmis aux commits/credits créés. Notez que cela contrôle le rollover entre contrats lors d’une transition de contrat, et non le rollover d’une période à la suivante.
rate_typestringLe type de tarif transmis aux commits/credits créés
applicable_product_idsjsonLes IDs de produits applicables transmis aux commits/credits créés
applicable_product_tagsjsonLes tags de produits applicables transmis aux commits/credits créés
specifiersjsonCommitSpecifier[] — Liste encodée en JSON de l’utilisation applicable
commit_durationjsonCommitDuration Combien de temps chaque commit créé est valide à partir de la date de début. Actuellement l’unité est toujours PERIODS, représentant la durée des périodes de facturation du contrat (par exemple mensuelle, trimestrielle ou annuelle)
prorationstringUtilisé pour contrôler si les premières ou dernières périodes de facturation sont calculées au prorata. Les valeurs valides sont NONE, FIRST, LAST et FIRST_AND_LAST. La valeur par défaut est FIRST_AND_LAST.
proration_roundingjsonProrationRounding — Configuration facultative pour une meilleure présentation des commits et factures.
recurrence_frequencystringSi défini, les commits ou credits sont créés en fonction de la fréquence spécifiée et commencent à se répéter à la date de début spécifiée sur la configuration du recurring commit ou credit. Les valeurs acceptées sont MONTHLY, QUARTERLY et ANNUAL.
metadatajsonMetadata
subscription_configjsonSubscriptionConfig — Configuration pour l’abonnement lié
starting_attimestampLe timestamp (UTC) du début du recurring credit ou commit (inclus)
ending_beforetimestampLe timestamp (UTC) de la fin du recurring credit ou commit (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour du recurring commit / credit

contracts_recurring_commits_and_credits.AccessAmount

interface AccessAmount {
  unit_price: number;
  quantity: number;
  credit_type_id: string;
  credit_type_name: string;
}

contracts_recurring_commits_and_credits.InvoiceAmount

interface InvoiceAmount {
  unit_price: number;
  quantity: number;
  credit_type_id: string;
  credit_type_name: string;
}

contracts_recurring_commits_and_credits.CommitSpecifier

type CommitSpecifier = {
  product_id?: string;
  product_tags?: string[];
  presentation_group_values?: {
    [key: string]: string;
  };
  pricing_group_values?: {
    [key: string]: string;
  };
}

contracts_recurring_commits_and_credits.CommitDuration

enum CommitDurationUnit {
  PERIODS = "PERIODS",
}

interface CommitDuration {
  unit: CommitDurationUnit;
  value: number;
}

contracts_recurring_commits_and_credits.ProrationRounding

interface ProrationRounding {
  access: {
    rounding_method: "round_up" | "round_down" | "round_half_up";
    decimal_places: number;
  };
  invoice: {
    rounding_method: "round_up" | "round_down" | "round_half_up";
    decimal_places: number;
  };
}

contracts_recurring_commits_and_credits.SubscriptionConfig

enum SubscriptionAllocationForRecurringCommitEnum {
  POOLED = "pooled",
  INDIVIDUAL = "individual",
}

type SubscriptionConfig = {
  subscription_id: string;
  apply_seat_increase_config: {
    is_prorated: boolean;
  };
  allocation: SubscriptionAllocationForRecurringCommitEnum;
};
Les usage filters changent au fil du temps, donc chaque ligne représente une version distincte d’un usage filter. Pour déterminer la version correcte d’un usage filter à un moment donné, filtrez la table par :
  • contract_id
  • starting_at >= {TIME_PERIOD_START}
  • ending_before <= {TIME_PERIOD_END}
(Filtrez en combinant ces trois qualificateurs.)

contracts_usage_filter_schedule

ColonneTypeDescription
idstringL’ID Metronome de l’usage filter du contrat
contract_idstringL’ID du contrat associé à l’usage filter
starting_attimestampLe timestamp (UTC) du timestamp de début pendant lequel l’usage filter est actif (inclus)
ending_beforetimestampLe timestamp (UTC) du timestamp de fin pendant lequel l’usage filter est actif (inclus)
group_keystringLa group key de l’usage filter
group_valuesjsonLes group values pour cette ligne d’usage filter, stockées dans une liste encodée en JSON
metadatajsonMetadata
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_usage_filters

Les usage filters changent au fil du temps, donc chaque ligne représente une version distincte d’un usage filter. Pour déterminer la version correcte d’un usage filter à un moment donné :
  • Filtrez la table par contract_id et starting_at <= {TIME}
  • Sélectionnez la ligne avec le plus grand version
ColonneTypeDescription
idstringL’ID Metronome de l’usage filter du contrat
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID du snapshot pendant lequel cette ligne a été transférée
contract_idstringL’ID du contrat associé à l’usage filter
versionintegerLa version de l’usage filter
starting_attimestampLe timestamp (UTC) du timestamp de début pendant lequel l’usage filter est actif (inclus)
group_keystringLa group key de l’usage filter
group_valuesjsonLes group values pour cette ligne d’usage filter, stockées dans une liste encodée en JSON
metadatajsonMetadata
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_prepaid_balance_threshold_configurations

ColonneTypeDescription
idstringIdentique à contract_id
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
contract_idstringL’ID de contrat associé à la configuration de seuil de solde prépayé
enabledbooleanIndique si la facturation par seuil de solde prépayé est activée
threshold_amountfloatLe seuil de solde prépayé déclenchant la création d’un threshold commit
recharge_to_amountfloatLe montant auquel recharger le solde lorsque le seuil est atteint
commit_namestringLe nom à utiliser comme line item du threshold charge
commit_descriptionstringLa description utilisée dans le threshold commit
commit_product_idstringL’ID de produit fixe utilisé pour les threshold commits de solde prépayé
commit_applicable_product_idsjsonListe encodée en JSON des IDs de produits applicables pour le commit
commit_applicable_product_tagsjsonListe encodée en JSON des tags de produits applicables pour le commit
payment_gate_typestringLe type de payment gate : STRIPE, EXTERNAL ou NONE
tax_typestringLe fournisseur de taxes utilisé : STRIPE, ANROK, PRECALCULATED ou NONE
stripe_payment_typestringLe type de paiement si vous utilisez Stripe payment gate : PAYMENT_INTENT ou INVOICE
metadatajsonMetadata
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_spend_threshold_configurations

ColonneTypeDescription
idstringIdentique à contract_id
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
contract_idstringL’ID de contrat associé à la configuration de seuil de dépense
enabledbooleanIndique si la facturation par seuil de dépense est activée
threshold_amountfloatLe seuil de dépense déclenchant la création d’un threshold commit
commit_namestringLe nom à utiliser comme line item du threshold charge
commit_descriptionstringLa description utilisée dans le threshold commit
commit_product_idstringL’ID du produit fixe utilisé pour les threshold commits de dépense
payment_gate_typestringLe type de payment gate : STRIPE, EXTERNAL ou NONE
tax_typestringLe fournisseur de taxes utilisé : STRIPE, ANROK, PRECALCULATED ou NONE
stripe_payment_typestringLe type de paiement si vous utilisez Stripe payment gate : PAYMENT_INTENT ou INVOICE
metadatajsonMetadata
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_subscriptions

ColonneTypeDescription
idstringL’ID de l’abonnement
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
customer_idstringL’ID Metronome du client
contract_idstringL’ID du contrat actuel
product_idstringL’ID de produit de l’abonnement
namestringLe nom de l’abonnement
descriptionstringLa description de l’abonnement
billing_frequencystringLa fréquence de facturation de l’abonnement
billing_cycle_configjsonBillingCycleConfig — Configuration pour la facturation et l’émission de factures d’abonnement
collection_schedulestringLe calendrier de collecte de l’abonnement
is_proratedbooleanIndique si l’abonnement est calculé au prorata
proration_roundingjsonProrationRounding — Configuration facultative pour une meilleure présentation des factures.
invoice_behaviorstringLe comportement de facturation de l’abonnement
quantity_schedulejsonLe calendrier de quantité de l’abonnement
fiat_credit_type_idstringL’ID du fiat credit type utilisé par l’abonnement
metadatajsonMetadata
starting_attimestampLe timestamp (UTC) du début de l’abonnement
ending_beforetimestampLe timestamp (UTC) de la fin de l’abonnement
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_subscriptions.BillingCycleConfig

enum SubscriptionInvoicePlacementEnum {
  ON_USAGE_INVOICE = "ON_USAGE_INVOICE",
  ON_SCHEDULED_INVOICE = "ON_SCHEDULED_INVOICE",
}

interface BillingCycleConfig {
  anchor_date: timestamp;
  invoice_placement: SubscriptionInvoicePlacementEnum;
}

contracts_subscriptions.ProrationRounding

interface ProrationRounding {
  rounding_method: "round_up" | "round_down" | "round_half_up";
  decimal_places: number;
}

contracts_scheduled_charges

ColonneTypeDescription
idstringL’ID du scheduled charge
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
contract_idstringL’ID de contrat associé au scheduled charge
amendment_idstringL’ID d’amendement associé au scheduled charge
namestringLe nom du scheduled charge
descriptionstringLa description du scheduled charge
product_idstringL’ID de produit associé au scheduled charge
credit_type_idstringL’ID du credit type ou de la devise
credit_type_namestringLe nom du credit type ou de la devise
schedulejsonSchedule
metadatajsonMetadata
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_scheduled_charges.Schedule

interface Schedule {
  schedule_items: Array<{
    id: string;
    /** ISO-8601 formatted timestamp */
    date: string;
    /** Float */
    amount: number;
  }>;
  recurring_schedule: {
    /** ISO-8601 formatted timestamp */
    start_date: string;
    /** ISO-8601 formatted timestamp */
    end_date: string;
    /** Float */
    amount: number;
    amount_distribution: "divided" | "divided_rounded" | "each";
    frequency: "annual" | "monthly" | "quarterly" | "semi_annual";
    /** Float */
    quantity?: number;
    /** Float */
    unit_price?: number;
  } | null;
}

contract_hierarchy_configurations

ColonneTypeDescription
idstringIdentique à contract_id
contract_idstringL’ID de contrat associé à la configuration de hiérarchie
parent_contract_idstringL’ID du contrat parent dans la hiérarchie. Renseigné uniquement pour les contrats enfants.
parent_customer_idstringL’ID du client parent dans la hiérarchie. Renseigné uniquement pour les contrats enfants.
child_infojsonTableau encodé en JSON des informations sur les contrats enfants (chacun contenant contract_id et customer_id). Renseigné uniquement pour les contrats parents.
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne
metadatajsonMetadata
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
payerstringLe payeur associé au contrat. Renseigné uniquement pour les contrats enfants.
usage_statement_behaviorstringLa configuration de comportement du relevé d’utilisation. Renseigné uniquement pour les contrats enfants.
invoice_consolidation_typestringLe type de consolidation des factures configuré. Renseigné uniquement pour les contrats parents.

Modifications de contrats

Inclut toutes les modifications des contrats. La table contracts_overrides contient tous les overrides au-dessus d’un contrat existant. Les tables contracts_transitions et contracts_edits contiennent des informations sur les contrats se terminant, se renouvelant ou changeant.

contracts_overrides

ColonneTypeDescription
idstringL’ID de l’override
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
contract_idstringL’ID de contrat de l’override
amendment_idstringL’ID d’amendement de l’override
product_idstringL’ID de produit de l’override
entitledbooleanIndique si l’override est entitled ou non
rate_typestringSoit multiplier, overwrite_flat ou overwrite_percentage. NULL si cela ne remplace pas le tarif
multiplierfloatLe multiplicateur de l’override
priorityfloatDéfini uniquement pour les contrats avec une priorisation EXPLICIT de multiplier override
new_ratejsonRate
credit_type_idstringDéfini uniquement pour les types de tarifs « overwrite_flat », « overwrite_tiered », « overwrite_subscription » ou « overwrite_custom »
credit_type_namestringDéfini uniquement pour les types de tarifs « overwrite_flat », « overwrite_tiered », « overwrite_subscription » ou « overwrite_custom »
applicable_product_tagsjsonListe de chaînes encodée en JSON
override_specifiersjsonOverrideSpecifier[]
targetstringSoit COMMIT_RATE soit LIST_RATE. Indique à quel tarif l’override s’applique
is_commit_specificbooleanIndique si l’override est spécifique à un commit
metadatajsonMetadata
tiered_overridejsonTarifs et paliers pour les tiered overrides
starting_attimestampLe timestamp (UTC) du début de l’override (inclus)
ending_beforetimestampLe timestamp (UTC) de la fin de l’override (exclus)
created_attimestmapLe timestamp (UTC) de la création de l’override
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_overrides.OverrideSpecifier

type OverrideSpecifier = {
  commit_ids?: string[];
  product_id?: string;
  product_tags?: string[];
  pricing_group_values?: Array<{
    name: string;
    value: string;
  }>;
  presentation_group_values?: Array<{
    name: string;
    value: string;
  }>;
  // If set, the override will only apply to usage that burns down commits / credits that were created by the specified recurring config
  recurring_commit_ids?: string[];
  any_commit_or_credit_ids?: string[];
};

contracts_overrides.Rate

type Rate =
  | {
      type: "flat";
      unit_price: number;
    }
  | {
      type: "percentage";
      fraction: number;
      use_list_prices: boolean;
    }
  | {
      type: "subscription";
      unit_price: number;
      quantity: number;
    };

contracts_transitions

ColonneTypeDescription
idstringL’ID de l’événement de transition
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
typestringSoit « renewal » soit « supersede »
contract_idstringL’ID du contrat actuel
from_contract_idstringL’ID de contrat qui s’applique avant la transition
to_contract_idstringL’ID de contrat qui s’applique après la transition
datetimestampLe timestamp (UTC) de la transition
metadatajsonMetadata
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

contracts_edits

ColonneTypeDescription
idstringL’ID de l’édition de contrat
contract_idstringL’ID du contrat de l’édition
timestamptimestampLe timestamp (UTC) de l’édition
editsjsonDétails des éditions effectuées
metadatajsonMetadata
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
created_bystringL’entité par laquelle l’édition de contrat a été créée
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée
snapshot_idstringL’ID de snapshot pour la ligne

contracts_amendments

ColonneTypeDescription
idstringL’ID de l’amendement de contrat
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne
contract_idstringL’ID de contrat de l’amendement
effective_attimestampLe timestamp (UTC) à partir duquel l’amendement de contrat est effectif
metadatajsonMetadata
created_attimestampLe timestamp (UTC) de la création de l’amendement de contrat
created_bystringL’entité par laquelle l’amendement de contrat a été créé
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée

Tarification du contrat

Inclut toutes les informations sur la tarification d’un contrat.

contracts_rate_cards

ColonneTypeDescription
idstringL’ID Metronome de la rate card du contrat
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID du snapshot pendant lequel cette ligne a été transférée
credit_type_conversionsjsonLes conversions de credit type associées à la ligne
metadatajsonMetadata
aliasesjsonListe des alias pour la rate card
fiat_credit_type_idstringL’ID du fiat credit type associé à la rate card
fiat_credit_type_namestringLe nom du fiat credit type associé à la rate card
descriptionstringLa description de la rate card
namestringLe nom de la rate card
created_bystringLe créateur de la rate card
created_attimestampLe timestamp (UTC) de la création de cette ligne
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne
archived_attimestampLe timestamp (UTC) de l’archivage de cette ligne, le cas échéant

contracts_rate_card_entries

ColonneTypeDescription
idstringL’ID Metronome de l’entrée de rate card du contrat
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
rate_card_idstringL’ID Metronome de la rate card associé à cette entrée
product_idstringL’ID de produit associé à cette entrée
versionintegerLa version de cette entrée de rate card
entitledbooleanIndique si l’entrée est entitled ou non
ratestringLe tarif qui s’applique à l’entrée
commit_ratestringLe commit rate qui s’applique à l’entrée (le cas échéant)
product_orderintegerL’ordre du produit associé à l’entrée
pricing_group_valuesjsonLes pricing group values qui s’appliquent à l’entrée
snapshot_idstringL’ID du snapshot pendant lequel cette ligne a été transférée
metadatajsonMetadata
credit_type_idstringL’ID du credit type associé à la rate card
credit_type_namestringLe nom du credit type associé à la rate card
billing_frequencystringLa fréquence de facturation associée à l’entrée. Pour les abonnements uniquement.
starting_attimestampLe timestamp (UTC) auquel l’entrée de rate card commence (inclus)
ending_beforetimestampLe timestamp (UTC) auquel l’entrée de rate card se termine (exclus)
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

contracts_product_list_item_versions

ColonneTypeDescription
idstringL’ID Metronome de la version du product list item
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID du snapshot pendant lequel cette ligne a été transférée
product_list_item_idstringL’ID du product list item associé à la ligne
typestringLe type de la version du product list item
versionintegerLa version du product list item
namestringLe nom de la version du product list item
is_refundablebooleanIndique si la version du product list item est remboursable
billable_metric_idstringL’ID de billable metric associé à la version du product list item
composite_product_idsjsonLa liste des IDs de produits composites associés à la ligne
composite_scopestringLe scope du produit composite, CONTRACT ou CUSTOMER
tagsjsonLa liste des tags associés à la ligne
composite_tagsjsonLa liste des tags composites associés à la ligne
include_composite_spendbooleanIndique si le produit composite est autorisé à inclure des dépenses provenant d’autres produits composites
quantity_conversionjsonLa conversion de quantité pour la ligne
quantity_roundingjsonL’arrondi de quantité pour la ligne
pricing_group_keyjsonLa clé de pricing group pour la ligne
presentation_group_keyjsonLa clé de presentation group pour la ligne
metadatajsonMetadata
starting_attimestampLe timestamp (UTC) à partir duquel la version est active (inclus)
created_attimestampLe timestamp (UTC) de la création de cette ligne
created_bystringL’entité par laquelle cette ligne a été créée
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de cette ligne

Packages

Inclut les informations liées aux packages.

packages

ColonneTypeDescription
idstringID du package
namestringNom du package
rate_card_idstringL’ID de la rate card utilisée sur le package
duration_unitstringL’unité de durée du package. Les valeurs disponibles sont DAYS, WEEKS, MONTHS, YEARS
duration_valueintegerLa valeur de durée du package. duration_unit + duration_value représentent la durée du package
multiplier_override_prioritizationstringLa priorisation pour un multiplier override. Il existe deux options :
  • Multiplicateur le plus bas (par défaut) : le multiplicateur le plus bas, c’est-à-dire la plus grande remise, est utilisé.
  • Explicite : l’override avec la priorité la plus basse sera priorisé.
net_payment_terms_daysintegerLe délai dont dispose un client pour payer un contrat. Par exemple, « net 30 »
usage_statement_schedule_frequencystringLa fréquence de génération du relevé d’utilisation. Par exemple, « monthly » ou « quarterly ».
scheduled_charges_on_usage_invoicesstringLes valeurs valides sont ALL si les factures programmées seront combinées avec les factures d’utilisation à la même date, sinon null.
billing_providerstringLe billing provider utilisé sur un contrat créé à partir du package.
delivery_methodstringLa méthode de livraison utilisée sur un contrat créé à partir du package.
aliasesjsonListe des alias planifiés pour le package
created_attimestampLe timestamp (UTC) de la création du package
created_bystringL’entité par laquelle le package a été créé
archived_attimestampLe timestamp (UTC) de l’archivage du package
updated_attimestampLe timestamp (UTC) auquel cette ligne a été exportée
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
snapshot_idstringL’ID de snapshot pour la ligne de contrat
metadataMetadataObjet encodé en JSON

Paiements

Bêta privéeLa facturation Metronome est actuellement en bêta privée. Contactez votre représentant Metronome pour un accès anticipé.
Informations de paiement lors de la facturation avec Metronome.

payment

ColonneTypeDescription
idstringL’ID du paiement
invoice_idstringL’ID de facture associé au paiement
customer_idstringL’ID client associé au paiement
contract_idstringL’ID de contrat associé au paiement
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
amountdecimalLe montant total du paiement
amount_paiddecimalLe montant qui a été payé ; égal à amount si le statut est PAID, sinon 0
credit_type_idstringL’ID du credit type (monnaie fiat) pour le paiement
credit_type_namestringLe nom du credit type associé au paiement
statusstringLe statut du paiement
error_messagestringMessage d’erreur du fournisseur de paiement, le cas échéant
payment_gatewayjsonPaymentGateway — Détails de la passerelle de paiement (par exemple, informations sur le payment intent et la payment method Stripe)
created_attimestampLe timestamp (UTC) de la création du paiement
updated_attimestampLe timestamp (UTC) de la dernière mise à jour du paiement

payment.PaymentGateway

type PaymentGateway = {
  type: "stripe";
  stripe: {
    payment_intent_id: string;
    payment_method_id: string;
    error: string | null;
  };
} | null;

Alertes

Inclut les alertes et l’historique des alertes client déclenchées.

alert

ColonneTypeDescription
idstringL’ID de l’alerte
namestringLe nom de l’alerte
alert_typestringLe type d’alerte
thresholddecimalLe seuil de déclenchement de l’alerte
webhooks_enabledbooleanIndique si l’alerte est configurée pour les webhooks
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
created_attimestampLe timestamp (UTC) de la création de l’alerte
disabled_attimestampLe timestamp (UTC) de la désactivation de l’alerte
updated_attimestampLe timestamp (UTC) de la dernière mise à jour de l’alerte
archived_attimestampLe timestamp (UTC) de l’archivage de l’alerte
group_valuesjsonLes filtres de group value associés à l’alerte. Présent uniquement pour les alertes spend_threshold_reached.
seat_filterjsonLe filtre de seat associé à l’alerte. Présent uniquement pour les alertes low_remaining_seat_balance_reached.

customer_alert_history

ColonneTypeDescription
idstringL’ID Metronome de l’historique d’alerte client
environment_typestringL’environnement Metronome, SANDBOX ou PRODUCTION
customer_idstringLe nom du client associé à l’historique d’alerte
alert_idstringL’ID d’alerte associé à la ligne
alert_statusstringLe statut d’alerte associé à la ligne
additional_datajsonDonnées supplémentaires sur l’alerte
created_attimestampTimestamp (UTC) auquel l’alerte a été évaluée et que le statut a changé

Metadata

De nombreuses tables de l’export de données incluent une colonne metadata. Les clients qui utilisent Metronome disposent de divers systèmes externes et ont besoin de stocker différentes métadonnées. Ces métadonnées sont spécifiques au client et sont stockées sous forme d’objet JSON dans la colonne metadata de la table.