Gift cards
Your own programmes, bulk corporate orders, signed-QR redemption. About gift cards Live
- GET
/gift-cardList your gift cards - POST
/gift-cardBuy a gift card - POST
/gift-card/balanceCheck a gift card balance - POST
/gift-card/claimClaim a gift card into your wallet - DELETE
/gift-card/{reference}Cancel a gift card - GET
/gift-card/{reference}Fetch one of your gift cards - POST
/gift-card/{reference}/freezeFreeze a gift card - POST
/gift-card/{reference}/reloadAdd value to a gift card - POST
/gift-card/{reference}/replaceReplace a lost gift card - POST
/gift-card/{reference}/revealReveal a gift card code - POST
/gift-card/{reference}/unfreezeUnfreeze a gift card
GET List your gift cards
GET /gift-card
Cards you bought and cards you hold, in one list. Codes are masked. Issued, sourced and external cards appear together because that is what a holder means by 'my gift cards'.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Query parameters
| Name | Default |
|---|---|
status | Optional |
page | 0 |
size | 20 |
Example
Response: GenericResponseGiftCardPageResponse
curl -X GET "https://api.bridgemoni.com/gift-card?page=value&size=20" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"data": {
"content": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
}
],
"page": 0,
"size": 0,
"totalElements": 0,
"totalPages": 0
},
"description": "Gift cards retrieved successfully"
} Responses
| Status | When |
|---|---|
200 | Gift cards retrieved successfully |
POST Buy a gift card
POST /gift-card
Moves the face value from your wallet into the programme's float in one posting, so a card is never created against a debit that then fails on fees. The code and PIN are not in this response - read them back once through the reveal endpoint, or let delivery send them to the recipient.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Idempotency-Key | Reuse the same value on every retry of this request |
Content-Type | application/json |
Example
Request body: IssueGiftCardRequest · Response: GenericResponseGiftCardResponse
curl -X POST "https://api.bridgemoni.com/gift-card" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 5000.0,
"formFactor": "DIGITAL",
"designReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"recipientName": {
"name": "string"
},
"recipientMsisdn": "string",
"recipientEmailAddress": "string",
"personalMessage": "string",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"pin": "string",
"campaignReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}' {
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 5000.0,
"formFactor": "DIGITAL",
"designReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"recipientName": {
"name": "string"
},
"recipientMsisdn": "string",
"recipientEmailAddress": "string",
"personalMessage": "string",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"pin": "string",
"campaignReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card issued successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card issued successfully |
POST Check a gift card balance
POST /gift-card/balance
Needs the code and PIN, and no account. A wrong code and a wrong PIN answer identically and take the same time, because any difference between them is an oracle that tells an attacker which codes are worth trying again.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Example
Request body: GiftCardBalanceRequest · Response: GenericResponseGiftCardBalanceResponse
curl -X POST "https://api.bridgemoni.com/gift-card/balance" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"code": "GC4K-2M8P-QR7T-VW3X-ZA41",
"pin": "string"
}' {
"code": "GC4K-2M8P-QR7T-VW3X-ZA41",
"pin": "string"
} {
"data": {
"maskedCode": "string",
"brandName": "string",
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"balanceSource": "BRIDGE_LEDGER",
"expiryDateTime": "2026-09-25T10:00:00Z",
"partialRedemptionPermitted": true,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true
},
"description": "Gift card balance retrieved successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card balance retrieved successfully |
POST Claim a gift card into your wallet
POST /gift-card/claim
Binds a bearer card to you. A card already claimed by somebody else is refused and the attempt is recorded - that pattern is what a leaked code looks like.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Example
Request body: ClaimGiftCardRequest · Response: GenericResponseGiftCardResponse
curl -X POST "https://api.bridgemoni.com/gift-card/claim" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"code": "string",
"pin": "string"
}' {
"code": "string",
"pin": "string"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card claimed successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card claimed successfully |
DELETE Cancel a gift card
DELETE /gift-card/{reference}
Terminal. Any unspent value returns to whoever paid for the card, and the row is kept for audit rather than removed.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
Example
Request body: BlockGiftCardRequest · Response: GenericResponseGiftCardResponse
curl -X DELETE "https://api.bridgemoni.com/gift-card/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"reason": "string"
}' {
"reason": "string"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card cancelled successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card cancelled successfully |
GET Fetch one of your gift cards
GET /gift-card/{reference}
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
reference |
Example
Response: GenericResponseGiftCardResponse
curl -X GET "https://api.bridgemoni.com/gift-card/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card retrieved successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card retrieved successfully |
POST Freeze a gift card
POST /gift-card/{reference}/freeze
Stops redemption without releasing the value. Reversible - unfreezing restores the status the card held before, which for a part-spent card is PARTIALLY_REDEEMED rather than ACTIVE.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
Example
Request body: BlockGiftCardRequest · Response: GenericResponseGiftCardResponse
curl -X POST "https://api.bridgemoni.com/gift-card/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/freeze" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"reason": "string"
}' {
"reason": "string"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card frozen successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card frozen successfully |
POST Add value to a gift card
POST /gift-card/{reference}/reload
Only where the programme permits it. Adding value restarts the card's life, because statutory minimums run from the later of issuance and the last load.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Idempotency-Key | Reuse the same value on every retry of this request |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
Example
Request body: ReloadGiftCardRequest · Response: GenericResponseGiftCardResponse
curl -X POST "https://api.bridgemoni.com/gift-card/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reload" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"amount": 0
}' {
"amount": 0
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card reloaded successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card reloaded successfully |
POST Replace a lost gift card
POST /gift-card/{reference}/replace
Issues a new card carrying the remaining balance and kills the old code immediately. No money moves - the value never left the float.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Content-Type | application/json |
Path parameters
| Name |
|---|
reference |
Example
Request body: BlockGiftCardRequest · Response: GenericResponseGiftCardResponse
curl -X POST "https://api.bridgemoni.com/gift-card/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/replace" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"reason": "string"
}' {
"reason": "string"
} {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card replaced successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card replaced successfully |
POST Reveal a gift card code
POST /gift-card/{reference}/reveal
Shown once and never again. The code appears in this response only - never in a log, an event or a webhook. A second call is refused and returns the masked form.
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
reference |
Example
Response: GenericResponseGiftCardRevealResponse
curl -X POST "https://api.bridgemoni.com/gift-card/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reveal" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"code": "string",
"pin": "string",
"redeemInstruction": "string",
"termsUrl": "string",
"revealedDateTime": "2026-09-25T10:00:00Z",
"warning": "string"
},
"description": "Gift card code revealed"
} Responses
| Status | When |
|---|---|
200 | Gift card code revealed |
POST Unfreeze a gift card
POST /gift-card/{reference}/unfreeze
Headers
| Name | Notes |
|---|---|
Authorization | Bearer token |
X-Tenant | Your tenant |
X-Environment | test or live |
Path parameters
| Name |
|---|
reference |
Example
Response: GenericResponseGiftCardResponse
curl -X POST "https://api.bridgemoni.com/gift-card/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/unfreeze" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"programReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"productReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"brandName": "string",
"maskedCode": "****VW3XZ",
"displayPrefix": "string",
"faceValue": 0,
"balance": 0,
"currencyCode": "string",
"status": "INACTIVE",
"sourcing": "ISSUED",
"balanceSource": "BRIDGE_LEDGER",
"formFactor": "DIGITAL",
"purchaserUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"holderUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"activatedDateTime": "2026-09-25T10:00:00Z",
"lastLoadedDateTime": "2026-09-25T10:00:00Z",
"scheduledForDateTime": "2026-09-25T10:00:00Z",
"expiryDateTime": "2026-09-25T10:00:00Z",
"redeemedDateTime": "2026-09-25T10:00:00Z",
"blockedReason": "string",
"offlineCap": 0,
"offlineDrawn": 0,
"lastCheckedBalance": 0,
"lastCheckedDateTime": "2026-09-25T10:00:00Z",
"archivedDateTime": "2026-09-25T10:00:00Z",
"spendableThroughBridge": true,
"partialRedemptionPermitted": true,
"replacedByReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"financialTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"totalCharged": 0,
"createdDateTime": "2026-09-25T10:00:00Z"
},
"description": "Gift card unfrozen successfully"
} Responses
| Status | When |
|---|---|
200 | Gift card unfrozen successfully |
Generated from the OpenAPI document. Branch on the HTTP status: there is no machine-readable error code on the wire. Errors