Gift Cards
Creating and managing gift cards via the API.
Overview
The Molzait API allows you to:
- Create gift cards with initial balance
- Top up existing gift cards
- Redeem gift cards for reservations
- Check gift card balance
Create Gift Card
Request
POST /external/gift-cards
Parameters
amount(required): Initial balance in cents (e.g., 10000 for €100)templateId(required): Gift card template IDexpiresOnDay(required): Expiration date (YYYY-MM-DD)email(optional): Customer email addresslocale(optional): Customer locale (enorde)id(optional): Custom gift card codepaymentReference(optional): Payment reference
Example
curl -X POST \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 10000,
"templateId": "template-123",
"expiresOnDay": "2050-12-31",
"email": "recipient@example.com",
"locale": "en"
}' \
https://api.molzait.com/external/gift-cards
Response
{
"id": "ABC123XYZ",
"amount": 10000,
"remainingAmount": 10000,
"templateId": "template-123",
"image": {
"path": "gift-cards/template.jpg",
"url": "https://storage.googleapis.com/..."
},
"email": "recipient@example.com",
"expiresOnDay": "2050-12-31",
"locale": "en",
"creationTimestamp": "2025-12-03T10:30:00Z"
}
Gift Card Templates
Templates define the types and configurations of gift cards available at your restaurant. Each template specifies:
- Visual design (image, colors)
- Value amounts or experience types
- Expiration period
- Description in multiple languages
Template Types
Currently, only value templates are supported:
- Value Templates (
type: "value"): Gift cards with a monetary value that can be used for any reservation or purchase. These are flexible and can be applied to any experience at the restaurant.
Future support may include experience-specific templates (e.g., "Chef's Tasting Menu", "Wine Pairing Dinner") that are tied to specific dining experiences.
List Available Templates
Get all gift card templates configured for your restaurant:
Request
GET /external/gift-cards/templates
Example
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.molzait.com/external/gift-cards/templates
Response
[
{
"id": "template-123",
"type": "value",
"archived": false,
"expiresAfterDays": 365,
"experienceDescription": {
"de": "Gutschein für Restaurant",
"en": "Restaurant Gift Card"
},
"variations": [
{ "amount": 5000 },
{ "amount": 10000 }
]
}
]
Template Fields
id: Unique template identifier (required when creating gift cards)type: Template type ("value"only for now)archived: Whether template is still activeexpiresAfterDays: Days until gift card expires after creationexperienceDescription: Multi-language descriptionvariations: Suggested amounts for frontend display (in cents) - API can accept any amount
Note: The variations field is purely for frontend convenience (e.g., showing preset buttons). When creating gift cards via the API, you can specify any amount regardless of the variations listed.
Create Gift Card Transaction
Top up or redeem a gift card using transactions:
Request
POST /external/gift-cards/{giftCardId}/transactions
Example - Top Up
curl -X POST \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"status": "successful",
"amount": 5000,
"reference": "payment-ref-123"
}' \
https://api.molzait.com/external/gift-cards/ABC123XYZ/transactions
Example - Redeem
curl -X POST \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"status": "successful",
"amount": -2000,
"reference": "reservation-456"
}' \
https://api.molzait.com/external/gift-cards/ABC123XYZ/transactions
Check Gift Card Balance
Request
GET /external/gift-cards/{giftCardId}
Example
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.molzait.com/external/gift-cards/gc_abc123
Response
{
"id": "ABC123XYZ",
"amount": 10000,
"remainingAmount": 10000,
"templateId": "template-123",
"expiresOnDay": "2050-12-31"
}
Update Gift Card Transaction
Update transaction status (e.g., from pending to successful):
Request
PATCH /external/gift-cards/{giftCardId}/transactions/{transactionId}
Example
curl -X PATCH \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"status": "successful",
"reference": "updated-ref"
}' \
https://api.molzait.com/external/gift-cards/ABC123XYZ/transactions/txn-123
Refund Gift Card Transaction
Refund a transaction to restore the gift card balance:
Request
POST /external/gift-cards/{giftCardId}/transactions/{transactionId}/refund