The CardClient provides methods to manage card accounts.
create()
Create a new card account.
await bloque . accounts . card . create (
params ?: CreateCardParams ,
options ?: CreateAccountOptions
): Promise < CardAccount >
Parameters
Card creation parameters Display name for the card
Webhook URL to receive card events
Ledger account ID to associate with the card
Custom metadata to associate with the card
Creation options Wait for account to become active before returning
Timeout in milliseconds (default: 60000)
Returns
Unique resource name for the card account
Last four digits of the card
status
'active' | 'disabled' | 'frozen' | 'deleted' | 'creation_in_progress' | 'creation_failed'
Current status of the card
URL to view card details (PCI-compliant)
Ledger account ID associated with the card
Webhook URL (if configured)
balance
Record<string, TokenBalance>
Token balances (only included in list responses)
Example
// Create without waiting
const card = await bloque . accounts . card . create ({
name: 'My Card' ,
});
// Create and wait for active status
const card = await bloque . accounts . card . create ({
name: 'My Card' ,
}, { waitLedger: true });
list()
List card accounts.
await bloque . accounts . card . list (
params ?: ListCardAccountsParams
): Promise < ListCardAccountsResult >
Parameters
List parameters URN of a specific card account to retrieve
Returns
Array of card accounts with balance information
Example
// List all card accounts
const result = await bloque . accounts . card . list ();
// Get a specific card account
const result = await bloque . accounts . card . list ({
urn: 'did:bloque:account:card:usr-123:crd-456'
});
movements()
List card account movements/transactions.
await bloque . accounts . card . movements (
params : ListMovementsParams
): Promise < ListMovementsPagedResult >
Parameters
Movement list parameters Asset to filter transactions by (defaults to “DUSD/6”)
Maximum number of transactions to return
Filter transactions before this date (ISO 8601)
Filter transactions after this date (ISO 8601)
Filter by transaction reference
Filter by transaction direction (‘in’ for deposits, ‘out’ for withdrawals)
Returns a collapsed view of movements (grouped or summarized)
Filter by pocket (‘main’ for confirmed, ‘pending’ for pending movements)
Pagination token for fetching the next page
Returns
Number of results in this page
Whether more results are available
Pagination token for the next page (if hasMore is true)
Example
// Basic usage
const { data , pageSize , hasMore , next } = await bloque . accounts . card . movements ({
urn: 'did:bloque:account:card:usr-123:crd-456' ,
asset: 'DUSD/6' ,
});
// With pagination and filters
const result = await bloque . accounts . card . movements ({
urn: 'did:bloque:account:card:usr-123:crd-456' ,
asset: 'DUSD/6' ,
limit: 50 ,
direction: 'in' ,
after: '2025-01-01T00:00:00Z' ,
});
balance()
Get card account balance.
await bloque . accounts . card . balance (
params : GetBalanceParams
): Promise < Record < string , TokenBalance >>
Parameters
Returns
Record<string, TokenBalance>
Token balances keyed by asset
Example
const balances = await bloque . accounts . card . balance ({
urn: 'did:bloque:account:card:usr-123:crd-456' ,
});
Update card account metadata.
await bloque . accounts . card . updateMetadata (
params : UpdateCardMetadataParams
): Promise < CardAccount >
Parameters
Metadata update parameters URN of the card account to update
metadata
Record<string, unknown>
required
Metadata to update (name and source are reserved fields and cannot be modified)
Returns
Example
const card = await bloque . accounts . card . updateMetadata ({
urn: 'did:bloque:mediums:card:account:123' ,
metadata: {
updated_by: 'admin' ,
update_reason: 'customer_request'
}
});
updateName()
Update card account name.
await bloque . accounts . card . updateName (
urn : string ,
name : string
): Promise < CardAccount >
Parameters
Returns
Example
const card = await bloque . accounts . card . updateName (
'did:bloque:mediums:card:account:123' ,
'My Business Card'
);
activate()
Activate a card account.
await bloque . accounts . card . activate (
urn : string
): Promise < CardAccount >
Parameters
Returns
Example
const card = await bloque . accounts . card . activate (
'did:bloque:mediums:card:account:123'
);
freeze()
Freeze a card account.
await bloque . accounts . card . freeze (
urn : string
): Promise < CardAccount >
Parameters
Returns
Example
const card = await bloque . accounts . card . freeze (
'did:bloque:mediums:card:account:123'
);
disable()
Disable a card account.
await bloque . accounts . card . disable (
urn : string
): Promise < CardAccount >
Parameters
Returns
Example
const card = await bloque . accounts . card . disable (
'did:bloque:mediums:card:account:123'
);