v5

OpenAPI 3.1.0Proprietary2026-08-011476181.4 MB
Stablecoins

Create a stablecoin burn operation

Create a provider-backed burn/redemption operation for a registered stablecoin. Burn sources and fiat destinations are normal Grid account objects; provider-specific Brale address ids are resolved and stored internally. External Spark wallet sources return funding instructions and remain pending until the provider reports funds received.

post/stablecoins/{stablecoinId}/burns

Headers

Idempotency-Keystring required

Required idempotency key for retrying this burn request safely.

Request body

amountstring required

Amount to burn in the stablecoin's smallest unit. The amount must convert exactly to a whole fiat cent for the token decimals.

descriptionstring

Optional platform-provided operation description.

Example request

{
  "amount": "1000000",
  "source": {
    "type": "EXTERNAL_ACCOUNT",
    "externalAccountId": "ExternalAccount:019542f5-b3e7-1d02-0000-000000000203"
  },
  "destination": {
    "externalAccountId": "ExternalAccount:019542f5-b3e7-1d02-0000-000000000205"
  },
  "description": "Redeem ACME"
}

Response

Burn operation created

idstring required

System-generated stablecoin issuer operation identifier.

stablecoinIdstring required

Stablecoin this operation belongs to.

operationType'MINT' | 'BURN' required

Stablecoin issuer operation type.

status'CREATED' | 'PENDING_FUNDING' | 'PENDING_PROVIDER' | 'PROCESSING' | 'COMPLETED' | 'FAILED' | 'EXPIRED' required

Stablecoin issuer operation lifecycle status.

amountstring required

Operation amount in the stablecoin's smallest unit.

provider'BRALE' required

Stablecoin provider backing the linked account, stablecoin, or operation.

providerEnvironment'SANDBOX' | 'PRODUCTION' required

Provider environment derived from the authenticated Grid platform mode.

stablecoinProviderAccountIdstring required

Stablecoin provider account link used for the operation.

expiresAtstring date-time

Expiry for operations awaiting external funding.

providerStatusstring

Sanitized provider status when available.

failureReasonstring

Stable internal failure code for terminal failed operations.

descriptionstring

Platform-provided operation description.

createdAtstring date-time required

Creation timestamp.

updatedAtstring date-time required

Last update timestamp.

Example response

{
  "id": "StablecoinOperation:019542f5-b3e7-1d02-0000-000000000301",
  "stablecoinId": "Stablecoin:019542f5-b3e7-1d02-0000-000000000002",
  "amount": "1000000",
  "stablecoinProviderAccountId": "StablecoinProviderAccount:019542f5-b3e7-1d02-0000-000000000001",
  "source": {
    "type": "ACH_DEBIT",
    "externalAccountId": "ExternalAccount:019542f5-b3e7-1d02-0000-000000000101",
    "accountId": "InternalAccount:019542f5-b3e7-1d02-0000-000000000102",
    "sourceTokenIdentifier": "USDC",
    "cryptoNetwork": "SOLANA"
  },
  "fundingInstructions": {
    "rail": "SPARK",
    "network": "SPARK",
    "address": "spark1...",
    "valueType": "ACME"
  },
  "destination": {
    "accountId": "ExternalAccount:019542f5-b3e7-1d02-0000-000000000205"
  },
  "estimatedDelivery": {
    "rail": "ACH_CREDIT",
    "amount": "100",
    "currency": "USD",
    "timing": "1-3 business days"
  },
  "expiresAt": "2026-05-27T16:40:00Z",
  "providerStatus": "pending",
  "failureReason": "PROVIDER_TRANSFER_FAILED",
  "description": "Initial program funding mint",
  "createdAt": "2026-05-20T16:40:00Z",
  "updatedAt": "2026-05-20T17:10:00Z"
}