@bebapps/rapyd-sdk
Version:
An un-official [Rapyd](https://rapyd.net) SDK for Node.js.
44 lines (40 loc) • 2.05 kB
text/typescript
import { RapydClient } from '../../../core/RapydClient';
import { CheckoutPage } from '../types/CheckoutPage';
import { CheckoutError } from '../enums/CheckoutError';
import { CreateCheckoutPageRequest } from '../requests/CreateCheckoutPageRequest';
import { RetrieveCheckoutPageRequest } from '../requests/RetrieveCheckoutPageRequest';
export async function createCheckoutPage<R = CheckoutPage>(client: RapydClient, request: CreateCheckoutPageRequest): Promise<R> {
const response = await client.post('/v1/checkout', {
amount: request.amount,
cancel_checkout_url: request.cancel_checkout_url,
cart_items: request.cart_items,
complete_checkout_url: request.complete_checkout_url,
complete_payment_url: request.complete_payment_url,
country: request.country,
currency: request.currency,
custom_elements: request.custom_elements,
customer: request.customer,
description: request.description,
error_payment_url: request.error_payment_url,
ewallet: request.ewallet,
expiration: request.expiration,
fixed_side: request.fixed_side,
language: request.language,
merchant_currency_only: request.merchant_currency_only,
merchant_reference_id: request.merchant_reference_id,
metadata: request.metadata,
page_expiration: request.page_expiration,
payment_expiration: request.payment_expiration,
payment_fees: request.payment_fees,
payment_method_type: request.payment_method_type,
payment_method_type_categories: request.payment_method_type_categories,
payment_method_types_exclude: request.payment_method_types_exclude,
payment_method_types_include: request.payment_method_types_include,
requested_currency: request.requested_currency,
});
return await response.data<R, CheckoutError>();
}
export async function retrieveCheckoutPage<R = CheckoutPage>(client: RapydClient, request: RetrieveCheckoutPageRequest): Promise<R> {
const response = await client.get('/v1/checkout/{}', request.checkout);
return await response.data<R, CheckoutError>();
}