Transfer Gift Card Balance
Transfers the balance from an existing gift card to a newly generated gift card. During the transfer, the source card is validated using the card number and passcode, and the specified amount is moved to the new card. Optionally, the source card can be deactivated after the transfer by enabling the isDeleteSourceCard flag. The API returns the newly created card details, transaction status, and transfer information upon successful completion.
- Type: stringx
-application Source requiredA custom HTTP header that accepts a free-form string value. It is used to identify the application making the API request. For example, if Punchh invokes the API, the value could be "punchh".
- Type: stringX
- Location Id requiredThe unique location identifier for the store or business location processing the transaction.
- Type: stringContent
- Type requiredThe media type of the request body. Must be set to
application/json. - Type: stringAuthorizationrequired
Bearer token for API authorization. Send in the format:
Bearer ACCESS_TOKEN_GOES_HERE.
Request details to transfer the balance from an existing gift card to a newly generated gift card.
- Type: stringfrom
Card Number max length:30Pattern: ^\d+$requiredThe card number from which the balance will be transferred.
- Type: stringreference
Number min length:1max length:40Pattern: ^[0-9]+$requiredA unique reference number for the transaction.
- Type: string Format: date-timetransaction
Date Time U T C requiredThe transaction date and time in UTC format.
- Type: stringuser
Id requiredThe unique identifier of the user requesting the balance transfer.
- Type: number Format: doubleamount
Amount to be transferred from one card to another. Pattern:
^\d+(\.\d{0,2})?$(up to 2 decimal places). - Type: string · enumchannelvalues
- None
- P
O S - Kiosk
- Type: string | nullfrom
Gift Card Num Pass Code The passcode associated with the source gift card, used to validate the card during the transfer.
- Type: booleanis
Delete Source Card When enabled, the source card is deactivated after a successful balance transfer. Ignored when the source is not a saved card for the user.
- Type: string · enumpayment
Source values- Scan
To Pay - Online
- None
- Type: string | null Format: date-timetransaction
Date Time Local The transaction date and time in local format.
- application/json
- application/json
- application/json
- application/json
- application/json
- application/json
- application/json
curl https://SERVER_NAME_GOES_HERE.partech.com/giftcard/v1/balanceTransfer \
--request POST \
--header 'x-applicationSource: ' \
--header 'X-LocationId: ' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer ACCESS_TOKEN_GOES_HERE' \
--data '{
"userId": "USER_ID_GOES_HERE",
"fromCardNumber": "FROM_GIFT_CARD_NUMBER_GOES_HERE",
"fromGiftCardNumPassCode": "FROM_GIFT_CARD_PASSCODE_GOES_HERE",
"referenceNumber": "258",
"amount": 1000,
"transactionDateTimeUTC": "2026-03-06T11:28:29.7471985Z",
"transactionDateTimeLocal": "2026-03-06T11:28:29.747",
"isDeleteSourceCard": false,
"paymentSource": "ScanToPay",
"channel": null
}'
{
"parPayTransactionId": "TRANSACTION_ID_GOES_HERE",
"newCardNumber": "6035718880040240052",
"newCardPasscode": "NEW_CARD_PASSCODE_GOES_HERE",
"amount": 1000,
"status": "Success",
"statusMessage": "APPROVAL",
"transactionDateTimeUTC": "2026-03-06T11:28:29.7472946Z"
}