Montants, transactions et ajustements des obligationsVersion bêta privée
Consultez les détails d'une FundingObligation et apportez-y des réajustements.
Récupérer des FundingObligations
Au fil du temps, un compte connecté aura plusieurs instances de FundingObligation
payées (ou past_
), mais jamais plus d’une FundingObligation
en attente. Pour récupérer la FundingObligation
de la période en cours, exécutez la commande suivante :
Exemple de réponse à une obligation de financement
[ { "id": "ifo_123", "livemode": true, "created": 1654628149, "amount_total": 10000, "amount_outstanding": 10000, "amount_paid": 0, "currency": "usd", "status": "unpaid", "due_at": 1654714851, "owed_to": "acct_123", "credit_period_starts_at": 1654625149, "credit_period_ends_at":1654713851, "paid_at": nil, "finalized_at": 1654713860, }, ]
Pour récupérer des FundingObligations
à un état particulier, transmettez la valeur d’état voulue lorsque vous demandez une liste de FundingObligations
. Cet appel à l’API permet de récupérer les FundingObligations
à l’état (status
) past_
:
Ajustements du grand livre aux obligations des comptes
Grâce à l’API Credit Ledger, vous pouvez enregistrer et conserver des informations sur les transactions sans carte qui ont lieu dans le cadre normal de vos activités. En utilisant les API Credit Ledger, il est possible de :
- Comptabiliser les transactions sans carte pour réajuster le crédit disponible et les obligations de financement
- Récupérer le montant du crédit disponible d’un compte
- Compiler des réajustements et des dépenses par carte sur un seul relevé
Réajustements de crédit | Réajustements de débit |
---|---|
Les réajustements de crédit réduisent le montant qui vous est dû par un compte connecté. Ils augmentent le crédit disponible du compte connecté. Voici quelques exemples :
| Les réajustements de débit augmentent le montant qui vous est dû par un compte connecté. Ils réduisent le crédit disponible du compte connecté. Voici quelques exemples :
|
Pour illustrer le processus d’application d’ajustements au grand livre de crédit d’un compte connecté, imaginons que Barbell (l’un des comptes connectés de Gymbox) dispose d’un plafond de crédit de 1 000 USD, et que l’un de ses responsables a dépensé 10 USD avec la carte à débit différé de Barbell pour s’acheter deux barres protéinées pour le déjeuner. Cependant, la politique de dépenses de Barbell interdit ce type de dépense personnelle, et le titulaire de carte doit rembourser Barbell de sa poche via une déduction sur salaire.
Le tableau ci-dessous décrit la séquence des événements sur Stripe en utilisant l’API Credit Ledger. Tous les changements de montants et de valeur reflétés dans ce tableau sont des transferts comptables uniquement. Aucun fonds réel n’est déplacé au cours de ce processus.
ACTION | SOLDE ISSUING DE BARBELL (COMPTE CONNECTÉ) | FUNDINGOBLIGATION DE BARBELL À GYMBOX | CRÉDIT DISPONIBLE DE BARBELL | SOLDE ISSUING DE GYMBOX (PLATEFORME) |
---|---|---|---|---|
Au début, Barbell a un solde de 0 USD et une dépense antérieure de 100 USD. Gymbox disposait d’un solde de 10 000 USD qui a été réduit de 100 USD pour une transaction précédemment capturée. | 0 USD | 100 USD | 900 USD | 9 900 USD |
Le titulaire de la carte effectue une autre transaction de 10 USD, qui est autorisée car le solde Issuing de Gymbox est suffisamment élevé pour couvrir le montant des dépenses. À la suite de cette autorisation, une retenue de 10 USD est prélevée sur le solde Issuing de Gymbox. | -10 USD | 100 USD | 900 USD | 9 890 USD |
Pendant la validation de l’autorisation (généralement le jour suivant), Stripe : 1. Valide l’autorisation, 2. Réduit le solde de Gymbox de 10 et augmente celui de Barbell de 10, et 3. Augmente la FundingObligation de Barbell de 10 USD | 0 USD | 110 USD | 890 USD | 9 890 USD |
Barbell reçoit le paiement de son responsable d’équipe et transfère 10 USD à Gymbox. Gymbox applique un réajustement de crédit correspondant de 10 USD. | 0 USD | 100 USD | 900 USD | 9 890 USD |
À la fin de la durée du crédit, Gymbox décide d’accorder à son client de longue date, Barbell, un crédit de 50 USD sur le relevé de compte pour sa fidélité. Gymbox signale un réajustement de crédit de 50 USD pour Barbell. | 0 USD | 50 USD | 950 USD | 9 890 USD |
Immédiatement après avoir envoyé le réajustement de crédit, Gymbox se rend compte qu’il a accordé un crédit trop important. Pour corriger le relevé du crédit, Gymbox signale un réajustement de débit de 20 USD aux obligations de Barbell. | 0 USD | 70 USD | 970 USD | 9 890 USD |
Comptabiliser les activités transactionnelles sans carte
Stripe crée automatiquement un grand livre des crédits pour tous les utilisateurs connectés à la carte à débit différé. Au fil du temps, un compte connecté aura accumulé des dépenses par le biais de transactions, et ses FundingObligations
et son crédit disponible se réajusteront en fonction de cette activité de dépenses par carte. Pour appliquer un réajustement et créer une entrée correspondante dans le grand livre des crédits (par exemple, pour un crédit de récompense de fidélité de 50 USD), exécutez cette commande :
Exemple de réponse
{ "id": "cla_1IC5a2ILABoM8KJZ2EgdP4Tb", "object_type": "issuing_credit_ledger_adjustment", "reason": "platform_issued_credit_memo", "reason_description": "Customer loyalty reward credited to account", "amount": 5000, "currency": "usd", "funding_obligation": "fo_12345", "livemode": false }
Vous pouvez ensuite afficher à votre client une liste des réajustements de débit et de crédit effectués sur son compte au cours de la période de crédit actuelle. Pour ce faire, appelez l’endpoint credit_
avec les paramètres stripe_
et funding_
renseignés.
Exemple de réponse
{ "object": "list", "url": "/v1/issuing/credit_ledger_adjustments", "has_more": false, "data": [ { "id": "icla_1IC5a2ILABoM8KJZ2EgdP4Tb", "object_type": "issuing_credit_ledger_adjustment", "created": 1605236462, "amount": 50000, "currency": "usd", "reason": "platform_issued_credit_memo", "funding_obligation": "fo_12345", "livemode": false }, // ... more objects ] }
Pour vérifier que le amount_
de la FundingObligation
correspondante a été réduit du montant du réajustement de crédit, récupérez une FundingObligation ou écoutez le webhook issuing_
.
Obtenir une activité de dépense pour une FundingObligation
Pour compiler une vue de l’activité de dépense au niveau des autorisations de transactions par carte, des transactions soldées, des remboursements et des réajustements de transactions sans carte dans un relevé unique, appelez l’endpoint credit_
. Spécifiez un ID d’obligation dans le paramètre de requête funding_obligation.
Exemple de réponse
{ "object": "list", "url": "/v1/issuing/credit_ledger_entries", "has_more": false, "data": [ { "id": "cle_1IC6b2ILABoM8KZz3EgtT9ka", "object": "credit_ledger_entry", "created": 1615292400, "amount": -80000, "currency": "usd", "funding_obligation": "fo_12345", "livemode": true, "source": { "issuing_transaction": "ipi_1Fq2s1ILABoM8KZjPhQNaz2s", "type": "issuing_transaction" } }, { "id": "cle_1IC6b2ILABoM8KZz3EgwX7yp", "object": "credit_ledger_entry", "created": 1615206000, "amount": 20000, "currency": "usd", "funding_obligation": "fo_23456", "livemode": true, "source": { "issuing_credit_ledger_adjustment": "icla_1Fq8f2ILABoM8KZwSpPJz20F", "type": "issuing_credit_ledger_adjustment" } }, // ... more objects if available ] }
Les transactions par carte seront marquées avec le type issuing_
tandis que les réajustements seront marqués avec le type issuing_
.
Par ailleurs, si vous n’effectuez pas de réajustements dans le registre des crédits, vous pouvez récupérer la liste des transactions associées à la FundingObligation
d’un compte connecté en transmettant le paramètre funding_obligation_for_account dans la requête à l’API List all transactions
:
Exemple de réponse
{ "object": "list", "url": "/v1/issuing/transactions", "has_more": false, "data": [ { "id": "ipi_123", "object": "issuing.transaction", // various other fields "funding_obligation_for_platform": "ifo_123", "funding_obligation_for_account": "ifo_456", // various other fields }, { "id": "ipi_123", "object": "issuing.transaction", // various other fields "funding_obligation_for_platform": "ifo_789", "funding_obligation_for_account": "ifo_456", // various other fields }, {...} ] }
Récapitulatif des webhooks
Pour rappel, vous pouvez surveiller ces trois webhooks :
issuing_
: se déclenche chaque fois qu’unefunding_ obligation. created FundingObligation
est créée, ce qui se produit au début de chaque nouvelle période de crédit pour le compte connecté.issuing_
: se déclenche à chaque fois qu’unefunding_ obligation. updated FundingObligation
est mise à jour, ce qui se produit lorsque la FundingObligation change d’état ou de champs de montant, ou a été mise à jour pour refléter un remboursement.issuing_
: se déclenche chaque fois qu’un nouveau réajustement d’unecredit_ ledger_ adjustment. created FundingObligation
est effectué.