Transactions
Sphere's transaction system provides a seamless way to move funds on SphereNet through a single API interface. All transactions on SphereNet are routed through Sphere as the network's steward, requiring Sphere's signature for validation.
How It Works
Users have full control over their funds. When moving funds that are already on the network, a signature is required to authorize the transaction. Our SDK:
- Generates the API request
- Creates and signs the transaction data when required
- Creates a transaction with your details
- Signs it with your key
- Formats everything into a single API call
Making Requests
All transactions use the same API endpoint:
- Provide your transaction details to the SDK
- The SDK generates an API request
- Send the request
Both source and destination can be:
- Fiat accounts (bank accounts, debit cards)
- Digital wallets (on supported blockchains)
- SphereNet native accounts
Request States
API requests progress through several states:
awaitingFunds
- Waiting for external funds to arrive (for deposits from bank/crypto)awaiting_cosign
- Waiting for user cloud share signature (for network movements)funds_received
- External funds received, processing has begunprocessing
- Request is being processed on the networkconfirmed
- Request completed successfullyfailed
- Request failed due to validation or other errorsreturned
- Funds were returned to sender due to processing issuescanceled
- Request was canceled (only possible in awaitingFunds state)
A request will progress through states based on its type:
- External deposits:
awaitingFunds
→funds_received
→processing
→confirmed
- Network movements:
awaiting_cosign
→processing
→confirmed
Once Sphere approves a request, they will either:
- Submit the multi-signed transaction to the network, or
- Create their own transaction to fund the account
External Deposits
For certain requests, additional steps may be needed to pull funds from the source account. In these cases, the API will return sourceDepositInstructions
containing:
- Deposit addresses
- Wire transfer details
- Other rail-specific instructions
Once the deposit is initiated according to these instructions, the request will proceed automatically through the remaining states.