Skip to main content
POST
/
api
/
v3
/
admin
/
customers
/
{customer_id}
/
store_credits
Spree Admin SDK
import { createAdminClient } from '@spree/admin-sdk'

const client = createAdminClient({
  baseUrl: 'https://your-store.com',
  secretKey: 'sk_xxx',
})

const credit = await client.customers.storeCredits.create('cus_UkLWZg9DAJ', {
  amount: 25.00,
  currency: 'USD',
  category_id: 'cat_UkLWZg9DAJ',
  memo: 'Goodwill credit',
})
{
  "id": "credit_gbHJdmfrXB",
  "amount": "25.0",
  "amount_used": "0.0",
  "amount_remaining": "25.0",
  "display_amount": "$25.00",
  "display_amount_used": "$0.00",
  "display_amount_remaining": "$25.00",
  "currency": "USD",
  "memo": "Goodwill",
  "metadata": {},
  "created_at": "2026-05-17T22:57:35.514Z",
  "updated_at": "2026-05-17T22:57:35.514Z",
  "customer_id": "cus_UkLWZg9DAJ",
  "created_by_id": "admin_gbHJdmfrXB",
  "category_id": "sccat_UkLWZg9DAJ",
  "category_name": "Exchange"
}

Documentation Index

Fetch the complete documentation index at: https://spreecommerce.org/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

x-spree-api-key
string
header
required

Secret API key for admin access

Authorization
string
header
required

JWT token for admin user authentication

Headers

x-spree-api-key
string
required
Authorization
string
required

Path Parameters

customer_id
string
required

Body

application/json
amount
number
required
Example:

50

currency
string
required
Example:

"USD"

category_id
string
required

StoreCreditCategory ID

memo
string

Response

201 - application/json

store credit created