transfers

Create a transfer between the client's own accounts

Changed on

Price a move between two accounts the client owns, reserve it idempotently and return the approval to sign. authorization says what that approval covers: a debit of the client's wallet that funds the move, or an intent its smart wallet signs so the backend can settle it.

post/swaps

Request

Headers

X-Hevn-Accountstring nullable

The client account to act for, as a cl_… id. Omit it to act as yourself.

Example:cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41
Idempotency-Keystring nullable

Your own key for this write, ^[A-Za-z0-9._:-]{1,128}$. A retry with the same key replays the first answer; the same key with a different request is refused.

Example:po-inv-2026-114

Request body

sourceAccount'USDC' | 'EURC' | 'RD' | 'USDC_ARB' | 'FDIC_USD' | 'FDIC_EUR' | 'KYC_CARDS' required
destinationAccount'USDC' | 'EURC' | 'RD' | 'USDC_ARB' | 'FDIC_USD' | 'FDIC_EUR' | 'KYC_CARDS' required
amountstring nullable

Exact amount to debit from the source account.

amountTostring nullable

Exact amount the destination account should receive.

publicKeystring required

Base64 DER SubjectPublicKeyInfo for the registered P-256 developer key.

Response

Successful Response

idstring required

Stable public identifier for this swap.

status'awaitingSignature' | 'submitted' | 'settled' | 'failed' required
idempotencyKeystring required

Caller-supplied key that makes an identical retry return this result.

sourceAccount'USDC' | 'EURC' | 'RD' | 'USDC_ARB' | 'FDIC_USD' | 'FDIC_EUR' | 'KYC_CARDS' required
destinationAccount'USDC' | 'EURC' | 'RD' | 'USDC_ARB' | 'FDIC_USD' | 'FDIC_EUR' | 'KYC_CARDS' required
authorization'debit' | 'intent' | 'client' required

Example response

{
  "id": "swp_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41",
  "quote": {
    "fromAmount": "500.00",
    "toAmount": "500.00",
    "rate": "500.00",
    "feeAmount": "500.00",
    "minimumToAmount": "500.00"
  },
  "debit": {
    "amount": "500.00"
  }
}

Changes

    • warning

      added the new FDIC_EUR enum value to the response property for the response status

    • warning

      added the new FDIC_EUR enum value to the response property for the response status

    • warning

      added the new verification_not_applicable enum value to the / response property for the response status

    • info

      added the new FDIC_EUR enum value to the request property

    • info

      added the new FDIC_EUR enum value to the request property

    • info

      removed the phone_required enum value from the / response property for the response status

    • info

      removed the rail_requirements_unmet enum value from the / response property for the response status

    • warning

      deleted the header request parameter x-api-key

    • warning

      added the new KYC_CARDS enum value to the response property for the response status

    • warning

      added the new KYC_CARDS enum value to the response property for the response status

    • warning

      added the new RD enum value to the response property for the response status

    • warning

      added the new RD enum value to the response property for the response status

    • warning

      added the new USDC_ARB enum value to the response property for the response status

    • warning

      added the new USDC_ARB enum value to the response property for the response status

    • warning

      added the new client enum value to the response property for the response status

    • warning

      added the new client_already_linked enum value to the / response property for the response status

    • warning

      added the new kyb_documents_processing enum value to the / response property for the response status

    • warning

      added the new link_code_expired enum value to the / response property for the response status

    • warning

      added the new link_code_invalid enum value to the / response property for the response status

    • warning

      added the new payout_not_awaiting_signature enum value to the / response property for the response status

    • warning

      added the new redirect_uri_not_allowed enum value to the / response property for the response status

    • warning

      added the new sandbox_amount_limit_exceeded enum value to the / response property for the response status

    • warning

      added the new sandbox_faucet_balance_too_high enum value to the / response property for the response status

    • info

      added the new KYC_CARDS enum value to the request property

    • info

      added the new KYC_CARDS enum value to the request property

    • info

      added the new RD enum value to the request property

    • info

      added the new RD enum value to the request property

    • info

      added the new USDC_ARB enum value to the request property

    • info

      added the new USDC_ARB enum value to the request property

    • info

      removed the client_policy_not_enabled enum value from the / response property for the response status

    • info

      removed the client_request_conflict enum value from the / response property for the response status

    • info

      removed the email_in_use enum value from the / response property for the response status

    • info

      removed the integrator_inactive enum value from the / response property for the response status

    • info

      removed the name_in_use enum value from the / response property for the response status