import type * as Square from "../index"; /** * Represents an action performed on a [gift card](entity:GiftCard) that affects its state or balance. * A gift card activity contains information about a specific activity type. For example, a `REDEEM` activity * includes a `redeem_activity_details` field that contains information about the redemption. */ export interface GiftCardActivity { /** The Square-assigned ID of the gift card activity. */ id?: string; /** * The type of gift card activity. * See [Type](#type-type) for possible values */ type: Square.GiftCardActivityType; /** The ID of the [business location](entity:Location) where the activity occurred. */ locationId: string; /** The timestamp when the gift card activity was created, in RFC 3339 format. */ createdAt?: string; /** * The gift card ID. When creating a gift card activity, `gift_card_id` is not required if * `gift_card_gan` is specified. */ giftCardId?: string | null; /** * The gift card account number (GAN). When creating a gift card activity, `gift_card_gan` * is not required if `gift_card_id` is specified. */ giftCardGan?: string | null; /** The final balance on the gift card after the action is completed. */ giftCardBalanceMoney?: Square.Money; /** Additional details about a `LOAD` activity, which is used to reload money onto a gift card. */ loadActivityDetails?: Square.GiftCardActivityLoad; /** * Additional details about an `ACTIVATE` activity, which is used to activate a gift card with * an initial balance. */ activateActivityDetails?: Square.GiftCardActivityActivate; /** * Additional details about a `REDEEM` activity, which is used to redeem a gift card for a purchase. * * For applications that process payments using the Square Payments API, Square creates a `REDEEM` activity that * updates the gift card balance after the corresponding [CreatePayment](api-endpoint:Payments-CreatePayment) * request is completed. Applications that use a custom payment processing system must call * [CreateGiftCardActivity](api-endpoint:GiftCardActivities-CreateGiftCardActivity) to create the `REDEEM` activity. */ redeemActivityDetails?: Square.GiftCardActivityRedeem; /** Additional details about a `CLEAR_BALANCE` activity, which is used to set the balance of a gift card to zero. */ clearBalanceActivityDetails?: Square.GiftCardActivityClearBalance; /** Additional details about a `DEACTIVATE` activity, which is used to deactivate a gift card. */ deactivateActivityDetails?: Square.GiftCardActivityDeactivate; /** * Additional details about an `ADJUST_INCREMENT` activity, which is used to add money to a gift card * outside of a typical `ACTIVATE`, `LOAD`, or `REFUND` activity flow. */ adjustIncrementActivityDetails?: Square.GiftCardActivityAdjustIncrement; /** * Additional details about an `ADJUST_DECREMENT` activity, which is used to deduct money from a gift * card outside of a typical `REDEEM` activity flow. */ adjustDecrementActivityDetails?: Square.GiftCardActivityAdjustDecrement; /** * Additional details about a `REFUND` activity, which is used to add money to a gift card when * refunding a payment. * * For applications that refund payments to a gift card using the Square Refunds API, Square automatically * creates a `REFUND` activity that updates the gift card balance after a [RefundPayment](api-endpoint:Refunds-RefundPayment) * request is completed. Applications that use a custom processing system must call * [CreateGiftCardActivity](api-endpoint:GiftCardActivities-CreateGiftCardActivity) to create the `REFUND` activity. */ refundActivityDetails?: Square.GiftCardActivityRefund; /** * Additional details about an `UNLINKED_ACTIVITY_REFUND` activity. This activity is used to add money * to a gift card when refunding a payment that was processed using a custom payment processing system * and not linked to the gift card. */ unlinkedActivityRefundActivityDetails?: Square.GiftCardActivityUnlinkedActivityRefund; /** * Additional details about an `IMPORT` activity, which Square uses to import a third-party * gift card with a balance. */ importActivityDetails?: Square.GiftCardActivityImport; /** Additional details about a `BLOCK` activity, which Square uses to temporarily block a gift card. */ blockActivityDetails?: Square.GiftCardActivityBlock; /** Additional details about an `UNBLOCK` activity, which Square uses to unblock a gift card. */ unblockActivityDetails?: Square.GiftCardActivityUnblock; /** * Additional details about an `IMPORT_REVERSAL` activity, which Square uses to reverse the * import of a third-party gift card. */ importReversalActivityDetails?: Square.GiftCardActivityImportReversal; /** * Additional details about a `TRANSFER_BALANCE_TO` activity, which Square uses to add money to * a gift card as the result of a transfer from another gift card. */ transferBalanceToActivityDetails?: Square.GiftCardActivityTransferBalanceTo; /** * Additional details about a `TRANSFER_BALANCE_FROM` activity, which Square uses to deduct money from * a gift as the result of a transfer to another gift card. */ transferBalanceFromActivityDetails?: Square.GiftCardActivityTransferBalanceFrom; }