---
title: "Create a gift card"
method: POST
path: "/giftcards"
tags: ["Gift Card"]
---

# Create a gift card

`POST /giftcards`

Creates a gift card for a specific user.

>⚠️ The `redemptionCode` field is auto-generated during gift card creation and cannot be set to an arbitrary value.

## Permissions

Any user or [API key](https://developers.vtex.com/docs/guides/authentication-overview#api-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:

| **Product** | **Category** | **Resource** |
| --------------- | ----------------- | ----------------- |
| GiftCard | GiftCard | **Gift card full access** |

There are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).

>❗ To prevent integrations from having excessive permissions, consider the [best practices for managing API keys](https://help.vtex.com/en/tutorial/best-practices-api-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.

## Headers

- `Content-Type` string, required
- `Accept` string, required

## Response `200`

OK

- Response — Gift card information.
  - `id` string, required — Gift card identification.
  - `redemptionToken` string, required — Gift card redemption token.
  - `redemptionCode` string, required — Gift card identification code used at checkout. Minimum of 6 characters.
  - `balance` number, required — Gift card current balance (amount that is still available on the gift card to be used as a payment method for a purchase). For newly created gift cards, the balance will be 0.0.
  - `relationName` string, required — A unique identifier for the relationship between the client and the store. This value must be different for each gift card, and we recommend generating it deterministically or at random, for example, using the `profileId` or a [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
  - `emissionDate` string, required — Gift card creation date. [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (`YYYY-MM-DDThh:mm:ss.fff`).
  - `expiringDate` string, required — Gift card expiration date. [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (`YYYY-MM-DDThh:mm:ss.fff`)
  - `caption` string, required — Field to be filled in if a loyalty program must be created for the Gift Card.
  - `currencyCode` string — Currency code in ISO 4217.
  - `transactions` Transactions, required — Transactions information.
    - `href` string, required — Gift card resource URL. The number described in the URL refers to the gift card identification.

---

[API](https://skmtc.net/vtex/apis/giftcard-api.md) · [All operations](https://skmtc.net/vtex/apis/giftcard-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vtex/giftcard-api/revisions/9df748187523/schema)
