Z Zise Developers 简体中文
Card Issuance › Webhook

Card Top-Up Credited

Emitted when the top-up funds actually reach the card, not when the order is accepted.

Event Types

EventWhen Emitted
card.topup.creditedCard top-up funds have actually reached the card

Delivery Contract

Event payloads contain only IDs and status

There are no amounts, asset codes, card number fragments or risk-control reasons. This is a security boundary: the webhook endpoint is your service, whose transport and storage we cannot guarantee. The GET /v1/<resource>/{id} endpoint applies API key, scope and on-behalf-of checks. Fetch details using data.id; do not use webhook payloads as the source of amounts for your ledger.

Event Details

card.topup.credited Card top-up funds have actually reached the card
When Emitted

Two flows emit this event with the same meaning: the money is on the card or in its shared limit pool. · A separate top-up after issuance: 201 from POST /v1/cards/{id}/topups only acknowledges the order. This event confirms receipt. data.id is the top-up order ID. · Initial top-up during issuance: virtual cards are funded when issuance settles; physical cards are funded after activation. Here data.id is first:<申请单 uuid>, without a ctp_ row. Retrieve the card itself through card.application.approved for the same issuance. Only enable spending limits and available credit after this event; enabling them earlier would make a limit available before its funds arrive.

Payload
{
  "event_id": "evt_71fd0c9e46a34b18b52d7f038ea6c145",
  "event_type": "card.topup.credited",
  "created_at": "2026-08-12T17:12:48Z",
  "merchant_id": "acme",
  "livemode": true,
  "data": {
    "object": "card_topup",
    "id": "3a90c7e4-1f68-4b02-95dc-7e41b0a2d963",
    "external_member_id": "u_88123",
    "status": "credited",
    "status_version": 2
  }
}

Signature Verification

The signature verification procedure is the same for all events. See Webhook Overview; use the Signature Debugger to compare signing strings character by character.