Applies a gift card to the cart. Gift cards are treated as a payment method, not a discount —
the cart total remains unchanged while amount_due is reduced.
For promotion discount codes, use the POST /carts/{cart_id}/discount_codes endpoint instead.
import { createClient } from '@spree/sdk'
const client = createClient({
baseUrl: 'https://your-store.com',
publishableKey: '<api-key>',
})
const cart = await client.carts.giftCards.apply('cart_abc123', 'GC-ABCD-1234', {
bearerToken: '<token>',
}){
"id": "cart_UkLWZg9DAJ",
"number": "R545542575",
"token": "DW2dg4pAkWTJJcqTC2ud2swBBbTtYo7RRfU",
"email": "arvilla_eichmann@brekke.biz",
"customer_note": null,
"currency": "USD",
"locale": "en",
"total_quantity": 1,
"item_total": "10.0",
"display_item_total": "$10.00",
"adjustment_total": "0.0",
"display_adjustment_total": "$0.00",
"discount_total": "0.0",
"display_discount_total": "$0.00",
"tax_total": "0.0",
"display_tax_total": "$0.00",
"included_tax_total": "0.0",
"display_included_tax_total": "$0.00",
"additional_tax_total": "0.0",
"display_additional_tax_total": "$0.00",
"total": "110.0",
"display_total": "$110.00",
"gift_card_total": "50.0",
"display_gift_card_total": "$50.00",
"amount_due": "110.0",
"display_amount_due": "$110.00",
"delivery_total": "100.0",
"display_delivery_total": "$100.00",
"warnings": [],
"created_at": "2026-03-28T11:44:33.720Z",
"updated_at": "2026-03-28T11:44:33.850Z",
"store_credit_total": "50.0",
"display_store_credit_total": "-$50.00",
"covered_by_store_credit": false,
"current_step": "address",
"completed_steps": [],
"requirements": [],
"shipping_eq_billing_address": false,
"discounts": [],
"items": [
{
"id": "li_UkLWZg9DAJ",
"variant_id": "variant_UkLWZg9DAJ",
"quantity": 1,
"currency": "USD",
"name": "Product 365753",
"slug": "product-365753",
"options_text": "",
"price": "10.0",
"display_price": "$10.00",
"total": "10.0",
"display_total": "$10.00",
"adjustment_total": "0.0",
"display_adjustment_total": "$0.00",
"additional_tax_total": "0.0",
"display_additional_tax_total": "$0.00",
"included_tax_total": "0.0",
"display_included_tax_total": "$0.00",
"discount_total": "0.0",
"display_discount_total": "$0.00",
"pre_tax_amount": "10.0",
"display_pre_tax_amount": "$10.00",
"discounted_amount": "10.0",
"display_discounted_amount": "$10.00",
"display_compare_at_amount": "$0.00",
"compare_at_amount": null,
"thumbnail_url": null,
"option_values": [],
"digital_links": []
}
],
"fulfillments": [
{
"id": "ful_UkLWZg9DAJ",
"number": "H60316070046",
"tracking": "U10000",
"tracking_url": null,
"cost": "100.0",
"display_cost": "$100.00",
"status": "pending",
"fulfillment_type": "shipping",
"fulfilled_at": null,
"items": [
{
"item_id": "li_UkLWZg9DAJ",
"variant_id": "variant_UkLWZg9DAJ",
"quantity": 1
}
],
"delivery_method": {
"id": "dm_UkLWZg9DAJ",
"name": "UPS Ground",
"code": "UPS_GROUND"
},
"stock_location": {
"id": "sloc_UkLWZg9DAJ",
"state_abbr": "STATE_ABBR_143",
"name": "Digna Turcotte",
"address1": "1600 Pennsylvania Ave NW",
"city": "Washington",
"zipcode": "20500",
"country_iso": "US",
"country_name": "United States of America",
"state_text": "STATE_ABBR_143"
},
"delivery_rates": [
{
"id": "dr_UkLWZg9DAJ",
"delivery_method_id": "dm_UkLWZg9DAJ",
"name": "UPS Ground",
"selected": true,
"cost": "100.0",
"display_cost": "$100.00",
"delivery_method": {
"id": "dm_UkLWZg9DAJ",
"name": "UPS Ground",
"code": "UPS_GROUND"
}
}
]
}
],
"payments": [
{
"id": "py_UkLWZg9DAJ",
"payment_method_id": "pm_UkLWZg9DAJ",
"response_code": "1-SC-20260328114433841691",
"number": "PGO2TT4V",
"amount": "50.0",
"display_amount": "$50.00",
"status": "checkout",
"source_type": "store_credit",
"source_id": "credit_UkLWZg9DAJ",
"source": {
"id": "credit_UkLWZg9DAJ",
"amount": "50.0",
"amount_used": "0.0",
"amount_remaining": "50.0",
"display_amount": "$50.00",
"display_amount_used": "$0.00",
"display_amount_remaining": "$50.00",
"currency": "USD"
},
"payment_method": {
"id": "pm_UkLWZg9DAJ",
"name": "Store Credit",
"description": null,
"type": "Spree::PaymentMethod::StoreCredit",
"session_required": false
}
}
],
"billing_address": {
"id": "addr_EfhxLZ9ck8",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "138 Lovely Street",
"address2": "Northwest",
"postal_code": "35005",
"city": "Herndon",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "STATE_ABBR_145",
"state_abbr": "STATE_ABBR_145",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": false,
"state_name": "STATE_NAME_145"
},
"shipping_address": {
"id": "addr_VqXmZF31wY",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "139 Lovely Street",
"address2": "Northwest",
"postal_code": "35005",
"city": "Herndon",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "STATE_ABBR_146",
"state_abbr": "STATE_ABBR_146",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": false,
"state_name": "STATE_NAME_146"
},
"payment_methods": [
{
"id": "pm_UkLWZg9DAJ",
"name": "Store Credit",
"description": null,
"type": "Spree::PaymentMethod::StoreCredit",
"session_required": false
}
],
"gift_card": {
"id": "gc_UkLWZg9DAJ",
"code": "GIFTCODE1",
"status": "active",
"currency": "USD",
"amount": "50.0",
"amount_used": "50.0",
"amount_authorized": "0.0",
"amount_remaining": "0.0",
"display_amount": "$50.00",
"display_amount_used": "$50.00",
"display_amount_remaining": "$0.00",
"expires_at": null,
"redeemed_at": null,
"expired": false,
"active": true,
"created_at": "2026-03-28T11:44:33.792Z",
"updated_at": "2026-03-28T11:44:33.837Z"
}
}Publishable API key for store access
JWT token for authenticated customers
Bearer token for authenticated customers
Order token for guest access
Unique key for request idempotency.
Cart prefixed ID (e.g., cart_abc123)
Gift card code to apply
"GC-ABCD-1234"
gift card applied
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
import { createClient } from '@spree/sdk'
const client = createClient({
baseUrl: 'https://your-store.com',
publishableKey: '<api-key>',
})
const cart = await client.carts.giftCards.apply('cart_abc123', 'GC-ABCD-1234', {
bearerToken: '<token>',
}){
"id": "cart_UkLWZg9DAJ",
"number": "R545542575",
"token": "DW2dg4pAkWTJJcqTC2ud2swBBbTtYo7RRfU",
"email": "arvilla_eichmann@brekke.biz",
"customer_note": null,
"currency": "USD",
"locale": "en",
"total_quantity": 1,
"item_total": "10.0",
"display_item_total": "$10.00",
"adjustment_total": "0.0",
"display_adjustment_total": "$0.00",
"discount_total": "0.0",
"display_discount_total": "$0.00",
"tax_total": "0.0",
"display_tax_total": "$0.00",
"included_tax_total": "0.0",
"display_included_tax_total": "$0.00",
"additional_tax_total": "0.0",
"display_additional_tax_total": "$0.00",
"total": "110.0",
"display_total": "$110.00",
"gift_card_total": "50.0",
"display_gift_card_total": "$50.00",
"amount_due": "110.0",
"display_amount_due": "$110.00",
"delivery_total": "100.0",
"display_delivery_total": "$100.00",
"warnings": [],
"created_at": "2026-03-28T11:44:33.720Z",
"updated_at": "2026-03-28T11:44:33.850Z",
"store_credit_total": "50.0",
"display_store_credit_total": "-$50.00",
"covered_by_store_credit": false,
"current_step": "address",
"completed_steps": [],
"requirements": [],
"shipping_eq_billing_address": false,
"discounts": [],
"items": [
{
"id": "li_UkLWZg9DAJ",
"variant_id": "variant_UkLWZg9DAJ",
"quantity": 1,
"currency": "USD",
"name": "Product 365753",
"slug": "product-365753",
"options_text": "",
"price": "10.0",
"display_price": "$10.00",
"total": "10.0",
"display_total": "$10.00",
"adjustment_total": "0.0",
"display_adjustment_total": "$0.00",
"additional_tax_total": "0.0",
"display_additional_tax_total": "$0.00",
"included_tax_total": "0.0",
"display_included_tax_total": "$0.00",
"discount_total": "0.0",
"display_discount_total": "$0.00",
"pre_tax_amount": "10.0",
"display_pre_tax_amount": "$10.00",
"discounted_amount": "10.0",
"display_discounted_amount": "$10.00",
"display_compare_at_amount": "$0.00",
"compare_at_amount": null,
"thumbnail_url": null,
"option_values": [],
"digital_links": []
}
],
"fulfillments": [
{
"id": "ful_UkLWZg9DAJ",
"number": "H60316070046",
"tracking": "U10000",
"tracking_url": null,
"cost": "100.0",
"display_cost": "$100.00",
"status": "pending",
"fulfillment_type": "shipping",
"fulfilled_at": null,
"items": [
{
"item_id": "li_UkLWZg9DAJ",
"variant_id": "variant_UkLWZg9DAJ",
"quantity": 1
}
],
"delivery_method": {
"id": "dm_UkLWZg9DAJ",
"name": "UPS Ground",
"code": "UPS_GROUND"
},
"stock_location": {
"id": "sloc_UkLWZg9DAJ",
"state_abbr": "STATE_ABBR_143",
"name": "Digna Turcotte",
"address1": "1600 Pennsylvania Ave NW",
"city": "Washington",
"zipcode": "20500",
"country_iso": "US",
"country_name": "United States of America",
"state_text": "STATE_ABBR_143"
},
"delivery_rates": [
{
"id": "dr_UkLWZg9DAJ",
"delivery_method_id": "dm_UkLWZg9DAJ",
"name": "UPS Ground",
"selected": true,
"cost": "100.0",
"display_cost": "$100.00",
"delivery_method": {
"id": "dm_UkLWZg9DAJ",
"name": "UPS Ground",
"code": "UPS_GROUND"
}
}
]
}
],
"payments": [
{
"id": "py_UkLWZg9DAJ",
"payment_method_id": "pm_UkLWZg9DAJ",
"response_code": "1-SC-20260328114433841691",
"number": "PGO2TT4V",
"amount": "50.0",
"display_amount": "$50.00",
"status": "checkout",
"source_type": "store_credit",
"source_id": "credit_UkLWZg9DAJ",
"source": {
"id": "credit_UkLWZg9DAJ",
"amount": "50.0",
"amount_used": "0.0",
"amount_remaining": "50.0",
"display_amount": "$50.00",
"display_amount_used": "$0.00",
"display_amount_remaining": "$50.00",
"currency": "USD"
},
"payment_method": {
"id": "pm_UkLWZg9DAJ",
"name": "Store Credit",
"description": null,
"type": "Spree::PaymentMethod::StoreCredit",
"session_required": false
}
}
],
"billing_address": {
"id": "addr_EfhxLZ9ck8",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "138 Lovely Street",
"address2": "Northwest",
"postal_code": "35005",
"city": "Herndon",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "STATE_ABBR_145",
"state_abbr": "STATE_ABBR_145",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": false,
"state_name": "STATE_NAME_145"
},
"shipping_address": {
"id": "addr_VqXmZF31wY",
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"address1": "139 Lovely Street",
"address2": "Northwest",
"postal_code": "35005",
"city": "Herndon",
"phone": "555-555-0199",
"company": "Company",
"country_name": "United States of America",
"country_iso": "US",
"state_text": "STATE_ABBR_146",
"state_abbr": "STATE_ABBR_146",
"quick_checkout": false,
"is_default_billing": false,
"is_default_shipping": false,
"state_name": "STATE_NAME_146"
},
"payment_methods": [
{
"id": "pm_UkLWZg9DAJ",
"name": "Store Credit",
"description": null,
"type": "Spree::PaymentMethod::StoreCredit",
"session_required": false
}
],
"gift_card": {
"id": "gc_UkLWZg9DAJ",
"code": "GIFTCODE1",
"status": "active",
"currency": "USD",
"amount": "50.0",
"amount_used": "50.0",
"amount_authorized": "0.0",
"amount_remaining": "0.0",
"display_amount": "$50.00",
"display_amount_used": "$50.00",
"display_amount_remaining": "$0.00",
"expires_at": null,
"redeemed_at": null,
"expired": false,
"active": true,
"created_at": "2026-03-28T11:44:33.792Z",
"updated_at": "2026-03-28T11:44:33.837Z"
}
}