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 | 指示该卡是否会在下次使用后被锁定。 |
后续步骤
锁定虚拟卡
在不关闭卡片的情况下,暂时阻止其所有消费。
解锁虚拟卡
重新启用已锁定的卡片,使授权再次成功。