SDKs
SDKs Overview
Official client libraries for integrating Reevit payments
SDKs
Official client libraries for integrating Reevit payments into your applications.
React SDK
React components and hooks for checkout UI
Vue SDK
Vue 3 components and composables
Svelte SDK
Svelte 5 components and stores
Node.js SDK
TypeScript/JavaScript SDK for server-side
Python SDK
Python SDK with async support
Go SDK
Go client library
PHP SDK
PHP library with Composer
Frontend SDKs (UI Components)
Pre-built checkout widgets with customizable themes for React, Vue, and Svelte.
| Package | NPM | GitHub |
|---|---|---|
| @reevit/react | Reevit-Platform/react-sdk | |
| @reevit/vue | Reevit-Platform/vue-sdk | |
| @reevit/svelte | Reevit-Platform/svelte-sdk | |
| @reevit/core | Reevit-Platform/core |
Features
- ✅ Pre-built checkout UI with modal
- ✅ PSP bridge integrations (Paystack, Stripe, Flutterwave, Monnify, M-Pesa)
- ✅ Theming and dark mode support
- ✅ Mobile-responsive design
- ✅ TypeScript support
Backend SDKs (API Clients)
Server-side libraries for the Reevit REST API with full type safety.
| Language | Package | GitHub |
|---|---|---|
| TypeScript/Node.js | @reevit/node | Reevit-Platform/node |
| Python | reevit | Reevit-Platform/python |
| Go | github.com/Reevit-Platform/go | Reevit-Platform/go |
| PHP | reevit/reevit-php | Reevit-Platform/php |
Features
- ✅ Full API coverage (Payments, Connections, Subscriptions, Webhooks)
- ✅ Type safety (TypeScript types, Python hints, Go structs)
- ✅ Automatic retries with exponential backoff
- ✅ Idempotency key support
- ✅ Webhook signature verification
Supported Payment Providers
All SDKs support the following payment providers:
| Provider | Countries | Payment Methods |
|---|---|---|
| Paystack | NG, GH, ZA, KE | Card, Mobile Money, Bank |
| Flutterwave | NG, GH, KE, ZA+ | Card, Mobile Money, Bank |
| Hubtel | GH | Mobile Money |
| Stripe | Global (50+) | Card, Apple Pay, Google Pay |
| Monnify | NG | Card, Bank Transfer, USSD |
| M-Pesa | KE, TZ | Mobile Money (STK Push) |
Quick Start
Frontend (React)
npm install @reevit/reactimport { ReevitCheckout } from '@reevit/react';
import '@reevit/react/styles.css';
<ReevitCheckout
publicKey="pfk_test_xxx"
amount={5000}
currency="GHS"
reference="ORD-12345"
metadata={{
org_id: "your_org_id",
connection_id: "your_connection_id",
payment_id: "ORD-12345"
}}
onSuccess={(result) => console.log('Paid!', result)}
>
<button>Pay Now</button>
</ReevitCheckout>Backend (Node.js)
npm install @reevit/nodeimport { Reevit } from '@reevit/node';
const client = new Reevit('pfk_live_xxx', 'org_123');
const payment = await client.payments.createIntent({
amount: 5000,
currency: 'GHS',
method: 'momo',
country: 'GH',
reference: 'ORD-12345',
metadata: {
org_id: 'your_org_id',
connection_id: 'your_connection_id',
payment_id: 'ORD-12345'
}
});Configuration Options
| Option | Description | Default |
|---|---|---|
apiKey / publicKey | Your API key | Required |
orgId | Organization ID (backend only) | Required |
baseUrl / apiBaseUrl | API base URL | https://api.reevit.io |
timeout | Request timeout | 30s |