Interroger des données Issuing
Utilisez Sigma ou Data Pipeline pour récupérer des informations sur Issuing.
Les objets Issuing représentés dans Sigma ou Data Pipeline sont les objets Authorization, Transaction, Card et Cardholder. Les tables spécifiques aux objets Issuing se trouvent dans la section Issuing du schéma.
Les données Issuing de vos comptes connectés sont stockées dans les tables dont le nom commence par connected_
(par exemple, connected_
). Pour en savoir plus sur l’utilisation de Connect avec Sigma ou Data Pipeline, consultez la section Connect de la documentation.
Autorisations
Un objet Authorization est créé chaque fois qu’une carte émise est utilisée pour effectuer un achat. Chaque ligne de la table issuing_
stocke des données à propos de cet objet. Ces mêmes informations peuvent être récupérées via l’API et sont disponibles dans le Dashboard Stripe. Veuillez noter que le champ request history est actuellement indisponible. Chaque autorisation créée sur votre compte est disponible sur Sigma ou Data Pipeline.
La colonne card_
de la table stocke l’ID de la carte bancaire utilisée pour effectuer l’achat. Pour en savoir plus sur la carte bancaire ayant initié l’autorisation, vous pouvez joindre cette colonne à la table issuing_
.
Pour accéder aux transactions associées à une autorisation spécifique, vous pouvez joindre la colonne authorization_
à la table issuing_
.
La requête suivante calcule le nombre d’autorisations par état d’approbation.
select date_trunc('month', created) as month, count(case when approved then 1 end) as num_approved_authorizations, count(*) as total_num_authorizations from issuing_authorizations where date_trunc('month', created) between date_trunc('month', date_add('month', -13, date(data_load_time))) and date_trunc('month', date_add('month', -1, date(data_load_time))) group by 1 order by 1 desc, 2 limit 2
mois | approuvée | num_authorizations |
---|---|---|
false | 506 | |
true | 10 045 |
Transactions
Un objet Transaction Issuing représente un usage donné d’une carte émise entraînant une entrée ou une sortie de fonds sur votre compte Stripe (par exemple, un achat ou un remboursement). Les informations relatives à ces objets sont stockées dans la table issuing_
. Vous pouvez récupérer ces mêmes informations via l’API et elles sont également disponibles dans le Dashboard Stripe.
Pour obtenir des détails supplémentaires sur la transaction (frais, etc.), vous pouvez accéder à l’opération sur solde associée. Pour ce faire, joignez la colonne balance_
à la colonne id
de la table balance_
. Les opérations sur solde ne sont pas des objets spécifiques à Issuing. Pour en savoir plus sur la gestion des opérations sur solde dans Sigma ou Data Pipeline, consultez la section consacrée aux transactions de la documentation.
La colonne authorization_
vous permet d’accéder à l’objet Authorization associé à la transaction en joignant la colonne id
de la table issuing_
. Cela peut fournir des détails supplémentaires sur la façon dont la transaction a été autorisée. La colonne authorization_
d’une transaction de délivrance peut être vide en cas de saisie forcée et dans certains cas de remboursement.
Vous pouvez également accéder à la carte bancaire et au titulaire de la carte impliqués dans la transaction via les colonnes card_
et cardholder_
. Les informations de la carte bancaire sont stockées dans la table issuing_
et celles du titulaire de la carte dans la table issuing_
. Les objets Card et Cardholder peuvent fournir des informations supplémentaires à propos de l’initiateur de la transaction.
La requête suivante renvoie des informations sur les trois dernières surcaptures. Elle joint la table issuing_
pour déterminer si la transaction est une surcapture en comparant les montants des deux objets.
select date_format(it.created, '%Y-%m-%d') as day, it.id, ia.amount as authorized_amount, -1 * it.amount as captured_amount from issuing_transactions it join issuing_authorizations ia on it.authorization_id=ia.id where it.type='capture' and -1 * it.amount > ia.amount --- This checks if this transaction was overcaptured order by day desc limit 3
jour | id | authorized_amount | captured_amount |
---|---|---|---|
ipi_q2fGwc8Ho3BBD3k | 150 | 151 | |
ipi_Xbxwi7cuJB3SUKW | 0 | 1 000 | |
ipi_Tu2tAICZZSjmMvC | 1450 | 1050 |
En utilisant Sigma ou Data Pipeline avec Issuing, vous avez la possibilité d’agréger les données. L’exemple suivant joint la table balance_
et agrège chacun des types de frais pour les transactions Issuing par mois.
select date_trunc('month', it.created) as month, fd.type as fee_type, sum(fd.amount) as net_fees, sum(it.amount) as net_amount from issuing_transactions it inner join balance_transactions bt on bt.id=it.balance_transaction_id inner join balance_transaction_fee_details fd on fd.balance_transaction_id=bt.id group by 1,2 order by month desc, fee_type
mois | fee_type | net_fees | net_amount |
---|---|---|---|
stripe-fee | 590 | 10 000 | |
stripe-fee | 59 | 1 000 | |
stripe-fee | 590 | 10 000 |
Cartes bancaires
La table issuing_
contient les données d’un objet Card donné. Ces mêmes informations sont disponibles via l’API et dans le Dashboard Stripe. Le champ spending controls est actuellement indisponible.
Chaque carte émise possède un objet Cardholder associé, auquel il est possible d’accéder en joignant la table issuing_
sur la colonne cardholder_
.
Titulaires de cartes
Les données de l’objet Cardholder sont stockées dans la table issuing_
. Ces mêmes informations peuvent être récupérées via l’API ou le Dashboard Stripe. Le champ spending controls est actuellement indisponible.
Cette table peut être jointe à d’autres tables pour fournir des informations sur l’entité qui a initié la transaction ou qui est titulaire de la carte émise.
Dans l’exemple suivant, des informations sont récupérées sur les trois derniers titulaires de cartes créés.
select date_format(created, '%Y-%m-%d') as day, id, email, type from issuing_cardholders where status='active' limit 3
jour | id | type | |
---|---|---|---|
ich_qf4fL0ARpAEChNa | j.duchamp@exemple.fr | individual | |
ich_wI80Yzq1BjTp85x | entité@exemple.fr | business_entity | |
ich_suU6FfYn9CB4FeG | j.dubois@exemple.fr | individual |
Métadonnées
Les métadonnées de chaque objet Issuing sont stockées dans une table distincte. Le nom de ces tables est formé du nom de la table de l’objet, auquel est ajouté le suffixe _
(par exemple issuing_
). La table de métadonnées possède une clé étrangère pointant vers l’objet correspondant dans la table principale, que vous pouvez utiliser pour joindre les deux tables. Par exemple, pour chaque ligne de la table issuing_
, la colonne issuing_
référencera le champ id
d’une ligne de la table issuing_
.
L’exemple suivant crée un dictionnaire à partir de la table des métadonnées de la table issuing_
. Celui-ci est ensuite utilisé pour accéder à la valeur de la clé de métadonnées 'my_
pour différentes transactions.
with transactions_metadata_dictionary as ( select issuing_transaction_id, map_agg(key, value) metadata_dictionary from issuing_transactions_metadata group by 1 ) select date_format(it.created, '%Y-%m-%d') as day, it.id, it.amount, metadata_dictionary['my_label'] as my_label_value from issuing_transactions it left join transactions_metadata_dictionary on it.id = transactions_metadata_dictionary.issuing_transaction_id where element_at(metadata_dictionary, 'my_label') is not null order by day desc limit 3
jour | id | montant | my_label_value |
---|---|---|---|
ipi_PIBaBdA4z8bKKJx | 2 000 | true | |
ipi_ESIJXtFIMu7Bxhb | 100 | true | |
ipi_2hej1SSwTBtbW88 | 10 000 | false |