# Casi d'uso per l'ampliamento delle risposte Espandi le risposte API per restituire i dati di pagamento più comuni. Utilizza il parametro `expand` nella tua richiesta API per recuperare i dettagli che l’API non restituisce nella sua risposta predefinita. I seguenti casi d’uso lo illustrano per le informazioni comunemente richieste. ## Visualizzare le commissioni di Stripe per un determinato pagamento Puoi controllare le commissioni di elaborazione di un pagamento dopo che il pagamento è stato elaborato e Stripe crea la [transazione saldo](https://docs.stripe.com/api/balance_transactions/object.md#balance_transaction_object-fee_details). L’evento [charge.updated](https://docs.stripe.com/api/events/types.md#event_types-charge.updated) fa riferimento alla proprietà `balance_transaction` (ad esempio, `txn_123`), che indica che è pronta per l’uso. Anziché cercare separatamente la transazione del saldo, puoi recuperarla in una singola chiamata utilizzando il parametro `expand`. > Gli *utenti IC+* (A pricing plan where businesses pay the variable network cost for each transaction plus the Stripe fee rather than a flat rate for all transactions. This pricing model provides more visibility into payments costs) non possono recuperare i dati sulla commissione di pagamento dalla transazione del saldo. Utilizza invece il Report sulle commissioni di pagamento. #### curl ```bash curl https://api.stripe.com/v1/payment_intents/pi_1Gpl8kLHughnNhxyIb1RvRTu \ -u <>: \-d "expand[]"="latest_charge.balance_transaction" \ -G ``` Utenti con versione API [2022-08-01](https://docs.stripe.com/upgrades.md#2022-08-01) o precedente: #### curl ```bash curl https://api.stripe.com/v1/payment_intents/pi_1Gpl8kLHughnNhxyIb1RvRTu \ -u <>: \-d "expand[]"="charges.data.balance_transaction" \ -G ``` > Affinché le commissioni di Stripe siano disponibili, un PaymentIntent deve essere [acquisito](https://docs.stripe.com/payments/place-a-hold-on-a-payment-method.md#capture-funds) e il suo [stato](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-status) deve essere `succeeded`. Quando si utilizza `automatic_async` (il metodo `capture_method` predefinito dalla versione `2024-04-10`), le transazioni saldo vengono create dopo il pagamento, ma in modo asincrono in background. Ciò significa che: - Il campo `balance_transaction` dell’oggetto Charge potrebbe essere `null` subito dopo la conferma. - Se espandi `balance_transaction` o `latest_charge.balance_transaction`, potrebbe non essere disponibile nella risposta. - Puoi ascoltare l’evento `charge.updated` per sapere quando la transazione saldo diventa disponibile Questo comportamento asincrono migliora le prestazioni dei pagamenti, ma richiede che l’integrazione sia in grado di gestire la possibilità che la transazione saldo non sia immediatamente disponibile. ## Visualizzare gli addebiti inclusi in un bonifico Ogni *bonifico* (A payout is the transfer of funds to an external account, usually a bank account, in the form of a deposit) automatico è legato a modifiche storiche del saldo del tuo account Stripe. L’API registra queste modifiche sotto forma di [transazioni a saldo](https://docs.stripe.com/api/balance_transactions/object.md), che puoi recuperare utilizzando un [elenco di transazioni a saldo](https://docs.stripe.com/api/balance_transactions/list.md). Da questo elenco, puoi ampliare la proprietà [source](https://docs.stripe.com/api/balance_transactions/object.md#balance_transaction_object-source) per raccogliere informazioni sull’elemento che ha attivato la modifica del saldo dell’account (addebito, rimborso, trasferimento e così via). Ad esempio: #### curl ```bash curl https://api.stripe.com/v1/balance_transactions \ -u <>: \ -d payout=po_1Gl3ZLLHughnNhxyDrOia0vI \ -d type=charge \-d "expand[]"="data.source" \ -G ``` > La cronologia delle transazioni a saldo può essere recuperata solo per i bonifici *automatici*. Se hai attivato i bonifici manuali, devi monitorare personalmente la cronologia delle transazioni. Scopri di più sulla [riconciliazione dei bonifici](https://docs.stripe.com/payouts/reconciliation.md). Se utilizzi *Connect* (Connect is Stripe's solution for multi-party businesses, such as marketplace or software platforms, to route payments between sellers, customers, and other recipients) con addebiti indiretti, puoi recuperare le stesse informazioni per conto dei tuoi account connessi. Una differenza, tuttavia, sta nel fatto che tali addebiti indiretti prevedono sia un trasferimento sia un pagamento collegato (sotto forma di oggetto Charge) per spostare i fondi in un account connesso. Pertanto, quando elenchi le transazioni a saldo incluse nei bonifici dell’account connesso, l’origine di ciascuna di queste transazioni è collegata al pagamento del trasferimento anziché all’addebito di origine. Per recuperare l’addebito di origine, devi ampliare il trasferimento collegato di un pagamento mediante la proprietà [source_transfer](https://docs.stripe.com/api/charges/object.md#charge_object-source_transfer), poi ampliare la proprietà [source_transaction](https://docs.stripe.com/api/transfers/object.md#transfer_object-source_transaction) del trasferimento: #### curl ```bash curl https://api.stripe.com/v1/balance_transactions \ -u <>: \ -d payout=po_1G7bnaD2wdkPsFGzdVOqU44u \ -d type=payment \-d "expand[]"="data.source.source_transfer.source_transaction" \ -H "Stripe-Account: acct_1G7PaoD2wdkPsFGz" \ -G ```