SCPRefund

Objective-C


@interface SCPRefund : NSObject

Swift

class Refund : NSObject

An object representing a Stripe refund.

Some payment methods, like Interac Debit payments, require that in-person payments also be refunded while the cardholder is present. The cardholder must present the Interac card to the card reader; these payments cannot be refunded via the dashboard or the API.

The collectRefundPaymentMethod:completion and confirmRefund SDK methods allow you to build an in-person refund interface into your app.

The refund SDK methods and the SCPRefund class are only available for payment methods that require in-person refunds, such as Interac Debit. For all other refunds, use the Stripe Dashboard or the Stripe API.

  • The unique identifier for the refund.

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSString *_Nonnull stripeId;

    Swift

    var stripeId: String { get }
  • The amount that was refunded.

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSUInteger amount;

    Swift

    var amount: UInt { get }
  • The ID of the charge that was refunded

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *chargeId;

    Swift

    var chargeId: String? { get }
  • When the refund object was created.

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSDate *_Nonnull created;

    Swift

    var created: Date { get }
  • The currency of the amount refunded.

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSString *_Nonnull currency;

    Swift

    var currency: String { get }
  • Metadata associated with the refund.

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSDictionary<NSString *, NSString *> *_Nonnull metadata;

    Swift

    var metadata: [String : String] { get }
  • Reason for the refund, either user-provided (duplicate, fraudulent, or requested_by_customer) or generated by Stripe internally (expired_uncaptured_charge).

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *reason;

    Swift

    var reason: String? { get }
  • The status of the refund.

    Declaration

    Objective-C

    @property (nonatomic, readonly) SCPRefundStatus status;

    Swift

    var status: RefundStatus { get }
  • The payment method details associated with the refund.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) SCPPaymentMethodDetails *paymentMethodDetails;

    Swift

    var paymentMethodDetails: SCPPaymentMethodDetails? { get }
  • If the refund failed, the reason for refund failure if known.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *failureReason;

    Swift

    var failureReason: String? { get }
  • Balance transaction that describes the impact of this refund on your account balance.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *balanceTransaction;

    Swift

    var balanceTransaction: String? { get }
  • An arbitrary string attached to the object. Often useful for displaying to users.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *stripeDescription;

    Swift

    var stripeDescription: String? { get }
  • If the refund failed, this balance transaction describes the adjustment made to your account balance that reverses the initial balance transaction.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *failureBalanceTransaction;

    Swift

    var failureBalanceTransaction: String? { get }
  • ID of the PaymentIntent that was refunded.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *paymentIntentId;

    Swift

    var paymentIntentId: String? { get }
  • This is the transaction number that appears on email receipts sent for this refund.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *receiptNumber;

    Swift

    var receiptNumber: String? { get }
  • The transfer reversal that is associated with the refund. Only present if the charge came from another Stripe account.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *sourceTransferReversal;

    Swift

    var sourceTransferReversal: String? { get }
  • If the accompanying transfer was reversed, the transfer reversal object. Only applicable if the charge was created using the destination parameter.

    Declaration

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *transferReversal;

    Swift

    var transferReversal: String? { get }
  • Unavailable

    You cannot directly instantiate this class.

    Declaration

    Objective-C

    - (nonnull instancetype)init;
  • Unavailable

    You cannot directly instantiate this class.

    Declaration

    Objective-C

    + (nonnull instancetype)new;