Skip to main content
POST
/
v1
/
partner
/
card
curl -X POST https://services-staging.getplu.com/api/v1/partner/card \
  -H "Authorization: Bearer sk_staging_your_api_key" \
  -H "Content-Type: application/json" \
  -H "idempotency-key: 660e8400-e29b-41d4-a716-446655440001" \
  -d '{
    "serviceId": "acme-user-abc123def456ghi",
    "amount": 50
  }'
{
  "status": "success",
  "message": "Card created successfully",
  "data": {
    "serviceCardId": "acme-card-xyz789jkl012mno",
    "serviceTransactionId": "acme-card-transactions-pqr345",
    "fundingType": "float"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.getplu.com/llms.txt

Use this file to discover all available pages before exploring further.

Creates a virtual card for a KYC-approved user. Cards can be created with two funding types:
  • float (default) — The initial funding amount is deducted from your partner wallet. Fund and withdraw via API.
  • crypto — The card receives a USDC deposit address. Users fund the card by sending USDC on-chain. No initial amount required.
Authorization
string
required
Bearer token. Example: Bearer sk_staging_your_api_key
idempotency-key
string
required
Unique key to prevent duplicate card creation. Use a UUID.
serviceId
string
required
The user’s service ID returned from Create User.
amount
number
Initial funding amount in USD. Must be greater than 0 and at most 10000. Required for float cards, not required for crypto cards.
fundingType
string
default:"float"
Card funding type. Either "float" or "crypto". When set to "crypto", the card receives a USDC deposit address and amount is not required.
curl -X POST https://services-staging.getplu.com/api/v1/partner/card \
  -H "Authorization: Bearer sk_staging_your_api_key" \
  -H "Content-Type: application/json" \
  -H "idempotency-key: 660e8400-e29b-41d4-a716-446655440001" \
  -d '{
    "serviceId": "acme-user-abc123def456ghi",
    "amount": 50
  }'
{
  "status": "success",
  "message": "Card created successfully",
  "data": {
    "serviceCardId": "acme-card-xyz789jkl012mno",
    "serviceTransactionId": "acme-card-transactions-pqr345",
    "fundingType": "float"
  }
}
There is a rate limit of 1 card per user every 5 minutes. If you need to create another card for the same user, wait for the cooldown to expire.
For crypto cards, a card creation fee is still charged from your partner wallet. After creation, the card is funded exclusively via USDC on Base deposits to the returned depositAddress. Only USDC on the Base network is supported — deposits from other tokens or chains will not be credited. The Fund Card and Withdraw endpoints are not available for crypto cards.