# Gift Cards

> Issue gift cards and store credit, let customers spend them at checkout, the register, or on invoices, and track every balance movement.

Gift cards and store credit are prepaid balances that customers spend like cash. Use them for gifts, goodwill gestures, rewards, and refunds.

There are two kinds:

- **Gift card**: anyone with the code can spend it. Linking it to a customer is optional.
- **Store credit**: belongs to one contact. Each contact has a single store-credit balance, and issuing more tops it up.

Open **Commerce → Gift Cards**. Gift cards are part of [Client Loyalty](https://workstation.repzo.com/docs/operations/client-loyalty), and you need the `gift_cards.view` permission.

Selling a gift card for money isn't supported yet. Cards issued here are free value, such as gifts, goodwill, and rewards.

## Issue a gift card or store credit

1. Click **Issue gift card**.
2. Choose the **Type**: Gift card or Store credit.
3. Enter the **Amount** and **Currency**.
4. Choose the **Customer**. It is optional for gift cards and required for store credit.
5. For a gift card, optionally enter your own **Code** (at least 8 letters or numbers). Leave it empty to generate one.
6. Optionally set **Expires on**. Leave it empty if it never expires.
7. For a gift card, optionally add the **Recipient name**, **Recipient email**, and a **Message**.
8. Choose the **Reason** (Gift or goodwill, or Reward), add an internal note, and click **Issue** (or **Add store credit**).

No payment is taken. You can also add store credit from a contact's **Loyalty** tab.

Store credit is also created when:

- a credit note is refunded with the **Store credit** payment method;
- a [loyalty program](https://workstation.repzo.com/docs/operations/client-loyalty) pays cashback, which lands in the customer's store credit.

## Spend a gift card or store credit

Customers can spend a balance in three places:

| Where | How |
|---|---|
| [Appointment Checkout](https://workstation.repzo.com/docs/engagement/appointment-checkout) and the [Point of Sale](https://workstation.repzo.com/docs/pos) | In the **Gift card or store credit** panel, enter the code and click **Check**, then **Apply**. **Use store credit** appears when the sale's customer has credit. |
| [Invoices](https://workstation.repzo.com/docs/commerce/invoices#record-a-payment) | In **Record payment**, choose **Gift card** and enter the **Gift card code**, or choose **Store credit** when the invoice has a customer. |

The amount applied is capped at what is still due. Spending a gift card always needs its code, and the card must be in the same currency as the sale. Store credit can only be used by its own customer.

Returns and voids at the point of sale put the money back onto the original card. On payment records, the method shows as **Gift card •••• 1234** or **Store credit**.

## The gift cards list

The list shows the **Code**, **Type**, **Customer**, **Balance** (remaining of issued), **Status**, **Expires**, and **Issued** date. Filter by type and status, and search by code, customer, or recipient.

| Status | Meaning |
|---|---|
| **Active** | Has a balance and can be spent |
| **Used up** | The balance has been spent |
| **Expired** | Passed its expiry date. Any remaining balance is removed by a daily job. |
| **Cancelled** | Cancelled by staff. It can't be used again. |

Only people with `gift_cards.manage` see full codes. Everyone else sees the last four characters (for example **•••• 6789**) and can only search by those, or by the exact code.

## Gift card details

Click a card to open its details: the code (with **Copy code** for managers), balance, customer, recipient, expiry, source, and message.

The **History** list shows every movement: Issued, Spent, Returned, Adjusted, Expired, and Cancelled, each with the date, the related invoice, and the balance after.

With `gift_cards.manage`, you can also:

- **Adjust balance**: add value with a positive amount or remove it with a negative one. A reason is required.
- **Cancel card**: removes the remaining balance. The card can't be used again.

## Accounting

When [Accounting](https://workstation.repzo.com/docs/commerce/accounting) is enabled, unspent balances are a liability, not income:

- Issuing or adding value posts to **Gift Card and Store Credit Promotions** (expense) and **Gift Cards and Store Credit** (liability).
- Spending a balance relieves the liability instead of landing in cash.
- Value removed by expiry, cancellation, or a negative adjustment posts to **Gift Card Breakage** (income).

You can choose a different liability account in [Posting defaults](https://workstation.repzo.com/docs/commerce/accounting/chart-of-accounts#account-mappings).

## Permissions

| Permission | Allows |
|---|---|
| `gift_cards.view` | See gift cards and look up a card's balance |
| `gift_cards.manage` | Issue, adjust, and cancel cards, and see full codes |

Cashiers and staff who take payments (`pos.sell`, `invoices.create`, `invoices.update`, or `appointments.update`) can also look up a card or a customer's store credit when taking a payment.

## Related pages

- [Client Loyalty](https://workstation.repzo.com/docs/operations/client-loyalty)
- [Invoices](https://workstation.repzo.com/docs/commerce/invoices)
- [Payments](https://workstation.repzo.com/docs/commerce/payments)
- [Appointment Checkout](https://workstation.repzo.com/docs/engagement/appointment-checkout)
- [Point of Sale](https://workstation.repzo.com/docs/pos)
