Moving to your own server
For companies that use APOPS Business Suite here and want it on their own hosting and domain. You keep all your data, users and passwords, and no other company's data is involved. It takes about 30 minutes for someone who manages hosting, or we do it for you.
- Agree the buy-outPress Buy out / own server in the app (Companies & data), or Contact APOPS below. We agree the price, payment plan and contract. You sign the agreement online and pay through the Pay now links on your invoices.
- Download your dataWhen the agreed payment is received, Download all data (.sql) opens in Companies & data. Keep the file safe: it contains all your company data.
- Install on your serverFollow the steps below, or let us install it for you.
- Sign in and checkSame emails and passwords as here. Tell us when it works and we close your workspace here.
What you need
- Hosting that runs Node.js 20 or 22 with a MySQL or MariaDB database (for example Hostinger Business or Cloud, cPanel with Node.js, or a VPS).
- Your domain or a subdomain, for example
accounts.yourcompany.co.ke. - A mailbox to send from, for example
accounts@yourcompany.co.ke, and its SMTP details. - The application package, which we send you after the agreement.
Step by step
1. Create an empty database
Create a new MySQL or MariaDB database and a user with full rights on it. Open phpMyAdmin, choose the new, empty database, then Import, choose your .sql file and press Go. Do this before the app starts for the first time.
2. Create the Node.js application
Entry file app.js, Node 20 or 22, no build command, start command node app.js. Upload the package we sent you.
3. Add the settings
In a private file outside the app folder (for example /home/you/suite-secrets.env), or in your hosting's environment variables:
SUITE_MODE=client SITE_URL=https://accounts.yourcompany.co.ke MYSQL_HOST=127.0.0.1 MYSQL_PORT=3306 MYSQL_DATABASE=your_database MYSQL_USER=your_database_user MYSQL_PASSWORD=its_password SMTP_HOST=smtp.yourmailhost.com SMTP_PORT=465 SMTP_USER=accounts@yourcompany.co.ke SMTP_PASS=mailbox_password SUITE_NOTIFY_EMAIL=accounts@yourcompany.co.ke UPLOAD_DIR=/home/you/suite-uploads
On Hostinger, also add APOPS_SECRETS_FILE=/home/you/suite-secrets.env in the Node.js environment variables. Security keys are created automatically on the first start.
4. Start and sign in
Start the app and open your address. It goes straight to the sign-in page: use the same email and password as here. Check your quotes, invoices, receipts, payments, payouts and suppliers. Your logo, KRA PIN, bank and M-Pesa details came with the data.
5. PayLink
The first time, each PayLink user signs in with an email code and sets up their authenticator again (authenticator keys belong to the old server).
Good to know
- Files you uploaded (supplier documents, library files) are not in the
.sqlfile. Ask us and we send them as a zip. - M-Pesa prompts and automatic payouts on your server need your own Safaricom or bank keys. We can connect them as a service.
- Updates: we send a new package. You upload it and restart; your data stays and new fields are added automatically. Ask about a support contract.
Contact APOPS
Ask about the buy-out price, payment plan, contract, or an installation done for you.