Application boundary
@trustlink/tsn-sdk. It does not import
TCAP or TIN program clients directly, derive settlement PDAs, or assemble raw
settlement instructions. Those responsibilities remain behind the SDK and
service boundaries.
Creation sequence
The program-defined creation flow is:- Connect the owner wallet and enter a display name.
- Let the SDK build the encrypted route payload and owner authorization.
- Submit the creation operation through the TSN service boundary.
- Let the Solana program assign the TIN during finalization.
- Show the assigned TIN only after the finalized on-chain record is read.
SDK submission flow
Use the program-assigned builder. It generates the nonce, expiry, TCap commitments, and owner intent hash locally, but it deliberately refuses to inventencryptedMasterSeed. That field must come from the SDK owner-
encryption flow before the wallet signs the final intent.
CreateTin instruction, and Solana assigns the 10-digit TIN. The current
Developer Console stops before submission when ownerEncryptedMasterSeed is
not available; this is intentional fail-closed behavior, not a missing TIN
input. The application reads and displays the assigned value only after
finalization. No application code predicts a sequence value or asks the user
to type a TIN.
Resolve a TIN and prepare a payment
Resolve a TIN with the SDK after the owner authorizes local disclosure, then use the returned route commitment to prepare a payment authorization.Build a wallet-to-wallet transfer
Use the SDK to construct the unsigned transaction. The connected wallet signs it; no private key is passed to the SDK or Node.createPaymentAuthorization and
buildPaymentAuthorizationIntentRequest from the SDK instead. The SDK is the
application interface; the TSN services coordinate settlement underneath it.
For internal deployment, registry initialization, RPC configuration, and
evidence procedures, use the team runbooks. Those operator instructions are
intentionally not part of public developer documentation.