POST/v1/application_fees/{id}/refund

Refund an application fee

Refunds an application fee that has previously been collected but not yet fully refunded. You can optionally refund only part of the fee and perform multiple partial refunds until the entire fee is refunded. Once entirely refunded, an application fee cannot be refunded again.

  • IdempotentThe SDK sends Idempotency-Key, so a retried request is only applied once.

1 parameter · 3 body fields
idstringrequired

The unique identifier of the application fee to refund.

Refund parameters. All fields are optional.

amountintegeroptional

A positive integer in cents representing how much of the fee to refund. If omitted, the entire remaining unrefunded amount is refunded.

directivestringoptional

An optional directive to control refund behavior.

expandarray<string>optional

Specifies which fields in the response should be expanded.

2 status codes
200Returns the application fee refund object with the refunded amount, balance transaction, and metadata.
accountstringrequired

ID of the Stripe account this fee was taken from.

amountintegerrequired

Amount earned, in cents (or local equivalent).

amount_refundedintegerrequired

Amount in cents (or local equivalent) refunded (can be less than the amount attribute on the fee if a partial refund was issued)

applicationstringrequired

ID of the Connect application that earned the fee.

balance_transactionstringoptional

Balance transaction that describes the impact of this collected application fee on your account balance (not including refunds).

chargestringrequired

ID of the charge that the application fee was taken from.

createdintegerrequired

Time at which the object was created. Measured in seconds since the Unix epoch.

currencystringrequired

Three-letter ISO currency code, in lowercase. Must be a supported currency.

fee_sourceobjectoptional

Polymorphic source of the application fee. Includes the ID of the object the application fee was created from.

idstringrequired

Unique identifier for the object.

livemodebooleanrequired

If the object exists in live mode, the value is true. If the object exists in test mode, the value is false.

objectstringrequired

String representing the object's type. Objects of the same type share the same value.

Allowed:application_fee
originating_transactionstringoptional

ID of the corresponding charge on the platform account, if this fee was the result of a charge using the destination parameter.

refundedbooleanrequired

Whether the fee has been fully refunded. If the fee is only partially refunded, this attribute will still be false.

refundsobjectrequired

A list of refunds that have been applied to the fee.

defaultError response.
errorobjectrequired

Error handling

id must identify an existing application fee. If amount is provided, it must be a positive integer in cents and cannot exceed the remaining unrefunded balance of the fee. Attempting to refund an already-fully-refunded fee or more than the remaining balance is rejected.