SCPRefund

Objective-C


@interface SCPRefund : NSObject <SCPJSONDecodable>

Swift

class Refund : NSObject, JSONDecodable

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) NSString *_Nonnull charge;

    Swift

    var charge: 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 }
  • 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;