API-driven boarding quickstart
This guide covers setting up a custom app for processing boarding applications using example code, including modifying the form layout, applying a custom theme, and changing individual form fields. The result is a custom app that caters to private corporations with a fulfillment window of 30 days or less on all transactions and a minimum average transaction amount of $100 USD.
Hosting your own boarding solution means that you’re responsible for maintaining it. Talk to your Payabli solutions engineer about whether API-driven boarding is a good option for your organization.
Visit the repository’s README for information about specific files, functions, component props, and other technical details.
Dependencies
Before you begin, make sure you have the following installed on your machine:
Set up the app
Run these commands in your terminal to configure the boarding example app on your local machine:
Fill in your environment variables
Open the .env file in your code editor. Set PAYABLI_API_TOKEN to your Payabli API token and BETTER_AUTH_SECRET to any text string with a length of 32 characters:
The BETTER_AUTH_SECRET is a string used to encrypt sensitive information.
You can generate a 32-character string using the secret key generator in the better-auth documentation.
The BETTER_AUTH_URL is the base URL of your app.
Authentication
The example boarding app uses a JavaScript library called better-auth for user authentication. Authentication is important because it prevents access to secure information by unauthorized users.
Customize the boarding form
The boarding form is built with React components that you can customize to fit your business needs. Follow the walkthrough below to learn how to move form fields, change section details, add validation rules, and more:
Customize the app theme
The example app is built with shadcn/ui and Tailwind CSS.
You can customize the app’s appearance by modifying the CSS file located at styles/globals.css.
The :root selector contains CSS variables that apply to light mode, and the .dark selector contains CSS variables for dark mode.
Additional customization
To learn more about the available props for the form components and additional customization options, see the following resources:
- Form fields: See the example app’s README for available props
- Icons: Browse available icons at lucide.dev
Related resources
See these related resources to help you get the most out of Payabli.
Next steps
- Manage notifications - Set up notifications to stay informed about boarding application status changes
References
- Boarding API example - Full API-driven boarding application example on GitHub
- Boarding statuses reference - Learn about statuses and substatuses during the merchant boarding process
- Paypoint statuses - Learn about the different statuses of paypoints


