RampAPI
Access viaclient.ramp.
Documentation Index
Fetch the complete documentation index at: /docs/llms.txt
Use this file to discover all available pages before exploring further.
RampAPI — On-ramp, off-ramp, KYB, recipients, and transaction management
client.ramp.
async getKybStatus(): Promise<RampKybStatusResponse>
async startKyb(): Promise<{ kybUrl: string; status: string }>
async checkKybStatus(): Promise<RampKybStatusResponse>
async simulateKybApproval(): Promise<RampKybStatusResponse>
async simulateKybRejection(): Promise<RampKybStatusResponse>
async createOnrampAccount(params: CreateRampOnrampAccountRequest): Promise<RampOnrampAccountResponse>
async getOnrampAccount(): Promise<RampOnrampAccountResponse | null>
async listTransactions(params?: RampExportParams): Promise<RampTransactionListResponse>
async getTransaction(id: number): Promise<RampTransactionResponse>
async getSummary(params?: RampExportParams): Promise<RampSummaryResponse>
async exportTransactions(params?: RampExportParams): Promise<string>
async createOfframpAccount(params: CreateRampOfframpAccountRequest): Promise<RampOfframpAccountResponse>
async listOfframpAccounts(): Promise<RampOfframpAccountResponse[]>
async getOfframpStatus(): Promise<RampOfframpStatusResponse>
async listOfframpTransactions(params?: RampExportParams): Promise<RampTransactionListResponse>
async getOfframpTransaction(id: number): Promise<RampTransactionResponse>
async exportOfframpTransactions(params?: RampExportParams): Promise<string>
async createRecipient(params: CreateRecipientRequest): Promise<RecipientResponse>
async listRecipients(params?: { page?: number; perPage?: number }): Promise<RecipientListResponse>
async getRecipient(id: number): Promise<RecipientResponse>
async archiveRecipient(id: number): Promise<RecipientResponse>
async createRecipientOnrampAccount(
recipientId: number,
params: CreateRecipientOnrampAccountRequest
): Promise<RampOnrampAccountResponse>
async createRecipientOfframpAccount(
recipientId: number,
params: CreateRecipientOfframpAccountRequest
): Promise<RampOfframpAccountResponse>
async listRecipientOfframpAccounts(recipientId: number): Promise<RampOfframpAccountResponse[]>
async simulateRecipientOnrampTransaction(
recipientId: number,
params?: SimulateTransactionRequest
): Promise<SimulationResponse>
async simulateRecipientOfframpTransaction(
recipientId: number,
params?: SimulateOfframpTransactionRequest
): Promise<SimulationResponse>
async simulateOnrampTransaction(params?: SimulateTransactionRequest): Promise<SimulationResponse>
async simulateOfframpTransaction(params?: SimulateOfframpTransactionRequest): Promise<SimulationResponse>
interface RampKybStatusResponse {
kybStatus: string | null;
applicationUrl: string | null;
onrampAccount: RampOnrampAccountResponse | null;
onrampAccounts: RampOnrampAccountResponse[];
}
interface CreateRampOnrampAccountRequest {
orgWalletId?: number;
walletAddress?: string;
blockchain?: string;
destinationAsset: string;
rail?: string;
}
interface RampOnrampAccountResponse {
id: number;
dakotaOnrampId: string;
bankAccountNumber: string;
routingNumber: string;
bankName: string;
capabilities: string[];
status: string;
sourceAsset: string;
destinationAsset: string;
networkId: string;
destinationWallet?: { id: number; name: string; address: string; network: string };
}
interface RampTransactionResponse {
id: number;
dakotaTransactionId: string;
usdAmount: string;
totalFeeAmount?: string;
developerFeeAmount?: string;
deliveredAmount?: string;
status: string;
type?: string;
sourceAsset?: string;
destinationAsset?: string;
networkId?: string;
exchangeRate?: string;
txHash?: string;
paymentRail?: string;
paymentReference?: string;
failureReason?: string;
statusHistory: { status: string; timestamp: string }[];
createdAt: string;
completedAt?: string;
}
interface RampTransactionListResponse {
data: RampTransactionResponse[];
pagination: { page: number; perPage: number; total: number };
}
interface RampExportParams {
status?: string;
dateFrom?: string;
dateTo?: string;
}
interface RampSummaryResponse {
totalVolumeUsd: number;
totalFeesUsd: number;
totalDelivered: number;
activeRampRecipients: number;
transactionCount: number;
periodBreakdown: Array<{ date: string; volumeUsd: number; transactions: number }>;
}
interface CreateRampOfframpAccountRequest {
orgWalletId: number;
sourceAsset?: string;
rail?: string;
bankDetails: {
routingNumber: string;
accountNumber: string;
accountType: string;
accountHolderName: string;
bankName: string;
};
}
interface RampOfframpAccountResponse {
id: number;
dakotaOfframpId: string;
sourceCryptoAddress?: string;
sourceAsset?: string;
destinationAsset?: string;
networkId?: string;
rail?: string;
fiatRoutingNumber?: string;
fiatAccountNumberMasked?: string;
fiatAccountType?: string;
fiatAccountHolderName?: string;
fiatBankName?: string;
status: string;
sourceWallet?: { id: number; name: string; address: string; network: string };
}
interface RampOfframpStatusResponse {
kybStatus: string | null;
offrampAccounts: RampOfframpAccountResponse[];
}
interface CreateRecipientRequest {
name: string;
type?: string;
externalId?: string;
address?: {
street1: string;
street2?: string;
city: string;
region?: string;
postalCode?: string;
country?: string;
};
}
interface RecipientResponse {
id: number;
name: string;
type: string;
externalId?: string;
destinationWalletId?: number;
destinationWallet?: { id: number; name: string; address: string; network: string };
address?: {
street1: string;
street2?: string;
city: string;
region?: string;
postalCode?: string;
country?: string;
};
bankAccount?: RampOnrampAccountResponse;
bankAccounts?: RampOnrampAccountResponse[];
onrampAccountCount?: number;
offrampAccountCount?: number;
totalVolumeUsd?: number;
monthlyVolumeUsd?: number;
transactionCount?: number;
createdAt: string;
archivedAt?: string;
}
interface RecipientListResponse {
data: RecipientResponse[];
pagination: { page: number; perPage: number; total: number };
}
interface CreateRecipientOnrampAccountRequest {
destinationWalletId: number;
sourceAsset?: string;
destinationAsset?: string;
rail?: string;
}
interface CreateRecipientOfframpAccountRequest {
orgWalletId: number;
sourceAsset?: string;
rail?: string;
bankDetails: {
routingNumber: string;
accountNumber: string;
accountType: string;
accountHolderName: string;
bankName: string;
};
}
interface SimulateTransactionRequest {
scenario?: 'success' | 'failed' | 'rejected' | 'reversed';
usdAmount?: number;
onrampAccountId?: number;
}
interface SimulateOfframpTransactionRequest {
scenario?: 'success' | 'failed';
usdAmount?: number;
offrampAccountId?: number;
}
interface SimulationResponse {
success: boolean;
data: { simulation_id: string; state: string };
}