UNPKG

@bebapps/rapyd-sdk

Version:

An un-official [Rapyd](https://rapyd.net) SDK for Node.js.

52 lines (44 loc) 3.18 kB
import { RapydClient } from '../../../core/RapydClient'; import { VirtualAccountNumber } from '../types/VirtualAccountNumber'; import { VirtualAccountNumberError } from '../enums/VirtualAccountNumberError'; import { IssueVirtualAccountNumberToWalletRequest } from '../requests/IssueVirtualAccountNumberToWalletRequest'; import { SimulateABankTransferToAWalletRequest } from '../requests/SimulateABankTransferToAWalletRequest'; import { RetrieveVirtualAccountHistoryRequest } from '../requests/RetrieveVirtualAccountHistoryRequest'; import { RetrieveVirtualAccountTransactionRequest } from '../requests/RetrieveVirtualAccountTransactionRequest'; import { ListRemittersToVirtualAccountNumberRequest } from '../requests/ListRemittersToVirtualAccountNumberRequest'; import { RetrieveRemitterDetailsRequest } from '../requests/RetrieveRemitterDetailsRequest'; export async function issueVirtualAccountNumberToWallet<R = VirtualAccountNumber>(client: RapydClient, request: IssueVirtualAccountNumberToWalletRequest): Promise<R> { const response = await client.post('/v1/issuing/bankaccounts', { country: request.country, currency: request.currency, description: request.description, ewallet: request.ewallet, merchant_reference_id: request.merchant_reference_id, metadata: request.metadata, }); return await response.data<R, VirtualAccountNumberError>(); } export async function simulateABankTransferToAWallet<R = VirtualAccountNumber>(client: RapydClient, request: SimulateABankTransferToAWalletRequest): Promise<R> { const response = await client.post('/v1/issuing/bankaccounts/bankaccounttransfertobankaccount', { amount: request.amount, currency: request.currency, issued_bank_account: request.issued_bank_account, }); return await response.data<R, VirtualAccountNumberError>(); } export async function retrieveVirtualAccountHistory<R = VirtualAccountNumber>(client: RapydClient, request: RetrieveVirtualAccountHistoryRequest): Promise<R> { const response = await client.get('/v1/issuing/bankaccounts/{}', request.issued_bank_account); return await response.data<R, VirtualAccountNumberError>(); } export async function retrieveVirtualAccountTransaction<R = VirtualAccountNumber>(client: RapydClient, request: RetrieveVirtualAccountTransactionRequest): Promise<R> { const response = await client.get('/v1/issuing/bankaccounts/{}/transactions/{}', request.issued_bank_account, request.transaction); return await response.data<R, VirtualAccountNumberError>(); } export async function listRemittersToVirtualAccountNumber<R = VirtualAccountNumber>(client: RapydClient, request: ListRemittersToVirtualAccountNumberRequest): Promise<R> { const response = await client.get('/v1/issuing/bankaccounts/[issued_bank_account]/remitters'); return await response.data<R, VirtualAccountNumberError>(); } export async function retrieveRemitterDetails<R = VirtualAccountNumber>(client: RapydClient, request: RetrieveRemitterDetailsRequest): Promise<R> { const response = await client.get('/v1/issuing/bankaccounts/remitters/[bankaccount]/transactions/[transaction]'); return await response.data<R, VirtualAccountNumberError>(); }