1
Create and fund accounts
Generate a sender and a recipient keypair and fund both with Friendbot.
2
Build the payment
Load the sender’s sequence number with
getAccount and build a transfer
call on the native XLM asset contract.3
Prepare
prepareTransaction calls simulateTransaction and adds the resource fee,
footprint and authorization.4
Sign and send
Sign locally, then call
sendTransaction. A PENDING status means the node
accepted it.5
Poll for the result
Call
getTransaction every 2 seconds until the status is SUCCESS or
FAILED.Run it
SetLUMEUS_API_KEY to your Testnet lum_test_ key, then install the SDK and
run the script. Each run sends 2 Friendbot requests and about 7 RPC calls,
which count toward the daily Testnet cap of 10,000 requests and cost no
credits.
getTransaction then returns the full outcome. Trimmed:
Operation.payment, skip prepareTransaction:
build, sign and send. Simulation applies only to Soroban (smart contract)
operations.
Read the status
If the send times out
IfsendTransaction reached the node but its answer was lost, Lumeus returns
503 with error.data submission_outcome_unknown and the hash in
error.transaction_hash:
- Poll
getTransactionwith that hash (or the hash you computed before sending) until it is found or the transaction’s time bound has passed. - If you resend, send the same signed envelope. The node answers
DUPLICATE, so it cannot apply twice. - Do not build a new transaction with a new sequence number until the first one has expired.
Idempotency-Key, see
idempotency and recovery.
Next
- Stellar SDKs: auth and error handling per SDK.
- Methods: limits for
simulateTransactionandsendTransaction. - RPC errors: every error code.