-
-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Welcome to the solana-kyc-compliance-sdk wiki!Excellent choice! The Home Page is the first thing developers and potential users will see, and it needs to be engaging and clearly explain the SDK's value proposition.
Here is the structure for the Home Page of your solana-kyc-compliance-sdk wiki, focusing on high-level benefits and quick starts. 🏠 Home: solana-kyc-compliance-sdk 🛡️ Compliant DeFi, Simplified. The solana-kyc-compliance-sdk provides the bridge between traditional KYC/AML systems and the Solana blockchain. Integrate regulatory compliance into your dApp, DeFi protocol, or regulated asset token effortlessly, ensuring only compliant wallets can interact with your program.
Goal: Secure, global access to Solana assets while satisfying regulatory requirements.
⭐ Why Use This SDK?
| Feature | Benefit for Developers |
|---|---|
| Provider Agnostic | Switch between KYC/AML service providers (e.g., Civic, custom systems) without rewriting your core dApp logic. |
| Seamless On-Chain Logic | Easily generate the Instruction data needed to verify a user's compliance status directly on the Solana ledger. |
| Transfer Hook Ready | Designed to work perfectly with SPL Token-2022 Transfer Hooks to enforce compliance on every token movement. |
| Developer First | A modern, type-safe (TypeScript) library that abstracts complex cryptographic attestation and service API calls. |
| 🚀 Quick Start Guide (The 3-Step Integration) |
- Install the SDK Add the library to your client-side or backend application. npm install @GitDigital-Products/solana-kyc-compliance-sdk
yarn add @GitDigital-Products/solana-kyc-compliance-sdk
- Initialize and Verify Status Initialize the SDK with your preferred provider configuration. import { ComplianceSDK } from '@GitDigital-Products/solana-kyc-compliance-sdk'; import { Connection } from '@solana/web3.js';
const connection = new Connection("..."); const sdk = new ComplianceSDK(connection, { providerName: 'Civic', // or 'Solid', or 'Internal' apiKey: 'your-api-key' });
// Check if a user's wallet is compliant const walletAddress = new PublicKey("..."); const status = await sdk.getComplianceStatus(walletAddress);
- Enforce On-Chain Use the SDK to generate the necessary instruction that proves compliance for a transaction. This is typically used by your Token Program Issuer account. // The Keypair that signs the final compliance status update const issuerKeypair = getKeypairFromVault();
// Create the instruction that writes the 'Verified' status to the ledger const complianceInstruction = await sdk.createAttestationInstruction({ userKey: walletAddress, kycLevel: 'AccreditedInvestor', issuerSigner: issuerKeypair });
// Broadcast a transaction containing this instruction // transaction.add(complianceInstruction);
🗺️ Navigation
| Link | Description | Audience |
|---|---|---|
| API Reference | Detailed documentation on every function, type, and module within the SDK. | Developers |
| Integration Guides | Step-by-step tutorials for using the SDK with specific tools (e.g., Anchor, SPL Token-2022). | Developers |
| Provider Integrations | How to configure and add support for new third-party KYC/AML services. | Developers/Maintainers |
| Program Details | The underlying account structures and instruction formats used for on-chain proof. | Maintainers/Auditors |
| Contributing | Information on bug reports, feature requests, and code contributions. | Community |
"actionButtons": { "commands": [ { "name": "$(key) Generate Dev Keypair", "color": "green", "command": "terminal.sendSequence", "args": { "text": "solana-keygen new --outfile ./temp-dev-keypair.json\n" } } ] }