editVirtualCard 變更可讓你更新現有虛擬卡的各種詳細資料,例如消費限額、鎖定日期與暱稱。
先決條件: 具有
EDIT_VIRTUALCARD 權限範圍的使用者存取權杖,以及要更新之卡片的 virtualCardId。參數
input(EditVirtualCardInput!):包含虛擬卡 ID 與要更新欄位的輸入物件。
EditVirtualCardInput 欄位
| 欄位 | 型別 | 說明 | 必填 |
|---|---|---|---|
virtualCardId | UUID! | 要更新的虛擬卡。 | 是 |
spendLimit | Float | 可向此卡片收取的最高金額。 | 否 |
spendLimitDuration | VirtualCardSpendLimitDuration | 卡片限額期間類型。 | 否 |
lockDate | String | 卡片將被鎖定的日期。格式:yyyy-mm-dd | 否 |
lockCardNextUse | Boolean | 於下次使用後鎖定卡片的設定。 | 否 |
cardNickname | String | 卡片暱稱。 | 否 |
primaryFundingSource | VirtualCardFundingSource | 虛擬卡的主要資金來源。 | 否 |
bankAccountId | UUID | 銀行帳戶的唯一識別碼。 | 否 |
userCashBalanceId | UUID | 使用者現金餘額的唯一識別碼。 | 否 |
cURL 範例
curl -X POST \
https://transactional-graph.staging.fluzapp.com/api/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_USER_ACCESS_TOKEN' \
-d '{
"query": "mutation { editVirtualCard( input: { virtualCardId: \"07df5653-43a8-4532-9881-3ab5857bbe11\", spendLimit: 200.00, spendLimitDuration: \"MONTHLY\", cardNickname: \"Edited Card Nickname\", lockCardNextUse: false } ) { virtualCardId cardholderName expiryMonth expiryYear virtualCardLast4 status cardType initialAmount usedAmount createdAt authorizationSetting { virtualCardAsaSettingsId lockDate dailySpendLimit monthlySpendLimit cardNickname lockCardNextUse } } }"
}'
範例回應
{
"data": {
"editVirtualCard": {
"virtualCardId": "07df5653-43a8-4532-9881-3ab5857bbe11",
"userId": "00a2ec0a-255f-4fe7-85ad-2958dc8d3c72",
"cardholderName": "John Doe",
"expiryMonth": "12",
"expiryYear": "27",
"virtualCardLast4": "7890",
"status": "ACTIVE",
"cardType": "MULTI_USE",
"initialAmount": 200,
"usedAmount": 0,
"createdAt": "2023-10-26T10:00:00Z",
"authorizationSetting": {
"virtualCardAsaSettingsId": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
"lockDate": "1875743999999",
"dailySpendLimit": null,
"monthlySpendLimit": "200.00",
"cardNickname": "Edited Card Nickname",
"lockCardNextUse": false
}
}
}
}
回應欄位
| 欄位 | 型別 | 說明 |
|---|---|---|
virtualCardId | UUID | 已編輯之虛擬卡的唯一識別碼。 |
cardholderName | String | 與虛擬卡相關聯的持卡人姓名。 |
expiryMonth | String | 虛擬卡到期月份。 |
expiryYear | String | 虛擬卡到期年份。 |
virtualCardLast4 | String | 虛擬卡號後四碼。 |
status | VirtualCardStatus | 虛擬卡目前狀態。 |
cardType | VirtualCardType | 虛擬卡的類型(例如 MULTI_USE)。 |
initialAmount | Float | 建立卡片時設定的初始金額(消費限額)。 |
usedAmount | Float | 虛擬卡的累計消費金額。 |
createdAt | DateTime | 虛擬卡最初建立的時間戳記。 |
authorizationSetting | VirtualCardAuthorizationSetting | 包含虛擬卡授權設定的物件,會反映任何更新。 |
authorizationSetting.virtualCardAsaSettingsId | UUID | 此特定授權設定的唯一識別碼。 |
authorizationSetting.lockDate | String | 卡片將被鎖定的日期(若已設定)。 |
authorizationSetting.dailySpendLimit | String | 每日消費上限(若適用)。 |
authorizationSetting.monthlySpendLimit | String | 每月消費上限(若適用)。 |
authorizationSetting.cardNickname | String | 卡片更新後的暱稱。 |
authorizationSetting.lockCardNextUse | Boolean | 指示卡片是否會在下次使用後被鎖定。 |
後續步驟
鎖定虛擬卡
在不關閉卡片的情況下,暫時阻擋所有消費。
解除鎖定虛擬卡
重新啟用已鎖定的卡片,讓授權再次成功。