
Trust that travels.
Reputation on IOTA.
A multi-tenant reputation protocol and SDK for IOTA Rebased. Open, scoped, and gas-sponsored ready.
Built for the future
A reputation system that scales with your needs, provides transparency, and empowers developers
Multi-tenant by design
Per-app namespaces and capability-based access control ensure complete isolation and security between different applications and use cases.
- Isolated namespaces
- Capability-based access
- Flexible permissions
On-chain & auditable
All reputation events and aggregates are stored on-chain, providing complete transparency and immutable audit trails for all reputation data.
- Immutable records
- Public verification
- Complete transparency
Developer-first SDK
TypeScript SDK with simple PTBs, comprehensive documentation, and developer-friendly APIs that make integration seamless and intuitive.
- TypeScript support
- Simple PTB helpers
- Rich documentation
How it works
Simple, powerful workflow that gets you up and running in minutes
Register App
Create your application namespace with a single transaction
Mint Client Cap
Generate capability objects for secure access control
Open/Accept Deal
Establish reputation relationships between parties
Rate & Update
Submit ratings, updates, and manage reputation data
Integration Example
import { RepstationClient } from '@iota/repstation-sdk';
const client = new RepstationClient({
network: 'testnet',
appId: 'your-app-id'
});
// Register your application
await client.registerApp({
name: 'MyApp',
description: 'A decentralized marketplace'
});
// Open a reputation deal
const deal = await client.openDeal({
counterparty: '0x...',
terms: { category: 'seller', maxRating: 5 }
});
// Submit a rating
await client.rate({
dealId: deal.id,
rating: 5,
comment: 'Excellent service!'
});
Provider onboarding in 60 seconds
Get your service integrated with minimal setup. Perfect for marketplaces, platforms, and service providers.
Installation
npm install @iota/repstation-sdk
Ship faster with our TypeScript SDK
Everything you need to integrate reputation into your dApp. From simple ratings to complex multi-party reputation systems.
Lightning Fast
Optimized for speed with built-in caching and batching
Easy Integration
Drop-in components and hooks for popular frameworks
Real-world use cases
From DeFi to marketplaces, see how reputation systems transform user trust and platform security
DeFi Lending
Peer-to-peer lending platforms
Enable uncollateralized lending by building borrower reputation over time. Track payment history, loan defaults, and creditworthiness on-chain.
E-commerce
Marketplace trust systems
Build buyer and seller reputation across multiple marketplaces. Create portable trust scores that follow users everywhere.
Ride Sharing
Driver and passenger ratings for safer rides
Property Rental
Host and guest reputation for short-term rentals
Freelancing
Skill verification and work quality ratings
Why choose IOTA Repstation
Built for scale, security, and simplicity. Our reputation protocol delivers enterprise-grade features with developer-first experience.
Instant Setup
Deploy reputation systems in minutes, not months. One SDK, multiple platforms, zero blockchain complexity.
Battle-Tested Security
Built on IOTA's proven infrastructure with Move language smart contracts and formal verification.
Infinite Scale
Handle millions of reputation events with IOTA's feeless transactions and horizontal scaling capabilities.
Developer Experience
Built by developers, for developers
Technical specifications
Built on IOTA Rebased with Move smart contracts for maximum security and performance
Architecture
Reputation Use Cases
Security
Smart Contract Interface
module repstation::core {
use sui::object::{Self, UID};
use sui::transfer;
use sui::tx_context::TxContext;
struct App has key, store {
id: UID,
name: String,
owner: address,
settings: AppSettings,
}
struct ReputationDeal has key, store {
id: UID,
app_id: ID,
participants: vector<address>,
terms: DealTerms,
status: u8,
}
public entry fun register_app(
name: String,
ctx: &mut TxContext
) {
let app = App {
id: object::new(ctx),
name,
owner: tx_context::sender(ctx),
settings: default_settings(),
};
transfer::share_object(app);
}
}
Ready to build the future of reputation?
Be among the first developers to build with IOTA Repstation. Get started in minutes with our comprehensive SDK and documentation.