Get started
This documentation will get you through the installation & update process of 66socialproof, as well as some advanced features available configurations.
Most features inside 66socialproof are self-explanatory and have helper texts near them.
The steps are straight forward and does not require any special or out of the ordinary task, minimum overall web related knowledge is required.
Support is exclusively provided through Codecanyon's email form or comments section.
Requirements
Ensure your server meets the specified requirements prior to installation or purchase.
PHP | PHP 8.3 - 8.4 |
Extensions | cURL, OpenSSL, mbstring, MySQLi |
Database | MySQL 5.7.3+ or MariaDB equivalent |
Server | Apache or Nginx |
Installation Services
I also offer quality installation services at a low cost if you do not want to bother with the installation process.
Software installation - $35
- Uploading the product files on your server (requires a fully configured and ready to go server).
- Creating and configuring the database that is going to be used.
- Full installation of the product.
Server configuration & software installation - $69
- Setting up a new server (Ubuntu OS) on one of those platforms: Hetzner, Cloudways, Vultr, DigitalOcean
- Setting up the domain for the server
- Free SSL Certificate Installation (Let's Encrypt)
- Installation of Apache, MySQL with MySQLi, PHP
- Installation and configuration of PHP's necessary modules / extensions
- Full installation of the product
Product Update - $30
- Backup of the files & database (upon request).
- Update of the product to the latest version (no matter which version are you currently on).
- Update of all the plugins you own (if any).
Installation
This installation typically requires approximately 10 minutes for completion when followed accurately.
Watch a video tutorial on how you can install the product a shared web host with cPanel.
Prepare the database
- Create a new Database User for the upcoming new database (optional)
- Create a new Database
- Prepare the Database Host, Name, Username and Password for the upcoming steps.
Upload the product
Upload the content of the product/
folder on your webhost.
The product can be uploaded either on a subdomain, domain or subfolder, depending on your needs.
Start the installation process
- Access the product on your website and access the
domain.com/install
path. - You need to set the permissions (CHMOD) of the files / folders mentioned in the installation process to either 755, 775, or 777 which will depend on your actual server.
- Follow the steps in the installation process.
- If the installation is successful, you will see the admin login credentials.
Cron job setup
The cron job must be set up as it is responsible for handling background tasks.
- Make sure to login and go to the Admin Panel -> Settings -> Cron tab
- Create a new cron job with each cron job commands that you see in there.
- The process varies based on your web host provider; refer to their documentation for Cron job setup instructions.
Email setup
If you want your site to be able to send emails, then you must do this setup.
- Make sure to login and go to the Admin Panel -> Settings -> SMTP (Email) tab
- Fill the fields with your SMTP provider credentials.
- Save & test your SMTP to make sure it works.
Update
This section guides you through updating your current installation to newer releases.
Watch a video tutorial on how you can update the product a shared web host with cPanel.
Backup
Prior to initiating the update process, ensure to create a backup to facilitate restoration in case of any issues.
- Backup your database
- Backup your files
Files update
- Download & unzip the latest version of the product.
- Navigate to the `
product
` folder, copy all files and folders, and upload them to your server where the product is installed. - Do not upload/overwrite the
config.php
file.
Database update
- Go to your website and access the
/update
path, just like the following format:https://domain.com/update
. - Follow all the steps inside of the updating process.
- After you are finished, make sure to delete the
update
folder as you do not need it anymore.
NGINX Setup
Use the following NGINX rewrite rule to ensure proper functionality of the URLs:
if(!-e $request_filename){ rewrite ^\/(.+)$ /index.php?altum=$1 last; }
This command should be added in your domain.conf nginx file in the location / { ... } field.
Captchas
These are the steps to integrate more advanced and powerful captcha codes for your system.
Cloudflare Turnstile
- In your Admin Panel β Settings β Captcha page, set the captcha type to Cloudflare Turnstile.
- Log in to your Cloudflare Dashboard.
- In the sidebar, go to Turnstile and click Add Widget.
- Fill in the form:
- Widget Name β a descriptive name (e.g., "Website Login").
- Domain β your actual website domain (e.g.,
yourdomain.com
). - Widget Mode β choose Managed for the simplest setup.
- Click Create to generate the widget.
- Cloudflare will now provide a Site Key and Secret Key.
- Go back to your Admin Panel and paste these keys into the fields under the Captcha settings.
- Click Save to apply the new settings.
Google reCAPTCHA
- In your Admin Panel β Settings β Captcha page, set the captcha type to Google reCAPTCHA v2 Checkbox.
- Log in to the Google reCAPTCHA Admin Console.
- Register a new site:
- Label β a name for your site.
- Select reCAPTCHA v2.
- Add your website domain.
- Once created, copy the Site Key and Secret Key.
- Paste these keys into the corresponding fields in your Admin Panel.
- Click Save to enable Google reCAPTCHA on your site.
hCaptcha
- In your Admin Panel β Settings β Captcha page, set the captcha type to hCaptcha.
- Go to the hCaptcha Website and log in or create an account.
- Navigate to Sites β Add New Site.
- Fill out the required details:
- Site Name
- Domains β your actual website domain.
- After saving, hCaptcha will generate a Site Key.
- Go to Settings β Account and copy your Secret Key.
- Paste both the Site Key and Secret Key into the corresponding fields in your Admin Panel.
- Click Save to activate hCaptcha on your site.
Payment Processors
Follow these steps to connect your system with available payment gateways. Only available for Extended License holders.
PayPal
- Go to the PayPal Developer Dashboard and log in.
- Go to My Apps & Credentials β REST API Apps and click Create App.
- Enter an app name and other required details, then create it.
- Switch the app to Live Mode using the toggle near the app name.
- Copy the Client ID and Secret.
- In your Admin Panel β Settings β PayPal Tab, paste the Client ID and Secret. Set the Mode to Live and Submit the settings.
- Back in PayPal Dashboard, open the created app and go to the Webhooks section.
- Click Add Webhook and set the URL:
https://yourdomain.com/webhook-paypal
- Select the events:
- Payment sale completed
- Checkout order approved
- Save the webhook.
Stripe
- Log in to the Stripe Dashboard.
- Go to Developers β API Keys.
- Ensure your keys are set to Live Mode to accept real payments.
- Copy the Publishable Key and Secret Key.
- In your Admin Panel β Settings β Stripe Tab, paste the keys and save.
- From the Stripe sidebar, go to Developers β Webhooks and click Add Endpoint.
- Set the Endpoint URL:
https://yourdomain.com/webhook-stripe
- Select events to send:
checkout.session.completed
invoice.paid
invoice.upcoming
- Save the webhook and copy the Signing Secret.
- In your Admin Panel, paste the Signing Secret into the Webhook Secret field under the Stripe tab.
Offline Payments
- Enable offline payments in your Admin Panel β Settings β Offline Payment Tab.
- In the Instructions field, add clear details about how customers should complete offline payments (e.g., bank account details).
- When customers check out, they can select offline payment as a method.
- They will see the instructions and must upload proof of payment.
- As an admin, go to Admin Panel β Payments, review proofs, and approve valid payments.
- Upon approval, the plan is activated for the customer.
- If proof is invalid or fake, delete the payment to reject it.
Coinbase Commerce
- Log in to the Coinbase Dashboard.
- Go to Settings.
- Under API Keys, generate and copy your API Key.
- In your Admin Panel β Settings β Coinbase Tab, paste the API Key.
- Under Webhook Subscriptions, click Add Endpoint and enter:
https://yourdomain.com/webhook-coinbase
- Save the webhook and copy the Shared Secret.
- In your Admin Panel, paste the Shared Secret into the Webhook Secret field under the Coinbase tab.
Crypto.com
- Log in to the Crypto.com Merchant Dashboard.
- Go to Developers β API Keys.
- Copy your Publishable Key and Secret Key.
- In your Admin Panel β Settings β Crypto.com Tab, paste the keys.
- Go to Webhooks in the Crypto.com dashboard and click Add Webhook.
- Set the URL:
https://yourdomain.com/webhook-crypto-com
- Copy the Signature Secret and paste it into the Webhook Secret field in your Admin Panel.
PayU
- Log in to your PayU account.
- Create a new shop and fill in all required details.
- In your Admin Panel β Settings β PayU Tab, paste the provided API keys.
Iyzico
- Log in to the Iyzico Merchant Dashboard.
- Go to Merchant Settings.
- Copy your API Key and Secret Key.
- In your Admin Panel β Settings β Iyzico Tab, paste the keys.
- Scroll to the Merchant Notifications section and add:
https://yourdomain.com/webhook-iyzico
- Save the configuration.
Paystack
- Log in to your Paystack Dashboard.
- Go to Settings β API Keys & Webhooks.
- In your Admin Panel β Settings β Paystack Tab, paste the API keys.
- In Paystack, set your Webhook URL to:
https://yourdomain.com/webhook-paystack
- Save changes.
Razorpay
- Log in to your Razorpay Dashboard.
- Go to Settings β API Keys and generate keys.
- In your Admin Panel β Settings β Razorpay Tab, paste the keys.
- Go to Settings β Webhooks and click Add New Webhook.
- Set the Webhook URL:
https://yourdomain.com/webhook-razorpay
- Create a new Webhook Secret (like a password).
- Enable these events:
subscription.charged
payment_link.paid
- Save the webhook, then paste the secret into the Razorpay tab in your Admin Panel.
Mollie
- Log in to your Mollie Dashboard.
- Go to Developers β API Keys and copy your Live API Key.
- In your Admin Panel β Settings β Mollie Tab, paste the key.
- Activate allowed payment methods in your Mollie account.
Yookassa
- Log in to your Yookassa Dashboard.
- Go to Developers β API Keys and generate keys.
- In your Admin Panel β Settings β Yookassa Tab, paste the keys.
- Go to Integration β HTTP Notifications and add:
https://yourdomain.com/webhook-yookassa
- Ensure receipts/invoices are enabled for compliance.
Paddle
- Log in to the Paddle Vendors Dashboard.
- Go to Developer Tools β Authentication and copy your Vendor ID and API Key.
- In your Admin Panel β Settings β Paddle Tab, paste the Vendor ID and API Key.
- Go to Developer Tools β Public Key and copy it into the Public Key field in your Admin Panel.
Midtrans
- Log in to the Midtrans Dashboard.
- Go to Settings β Access Keys and copy your Server Key.
- In your Admin Panel β Settings β Midtrans Tab, paste the Server Key.
Flutterwave
- Log in to the Flutterwave Dashboard.
- Go to Settings β API Keys and copy your Secret Key.
- In your Admin Panel β Settings β Flutterwave Tab, paste the Secret Key.
- Go to the Flutterwave Webhooks page and add:
https://yourdomain.com/webhook-flutterwave
LemonSqueezy
- Log in to LemonSqueezy.
- Create a product in LemonSqueezy.
- Create variants for:
- One-time Payments (Monthly, Quarterly, Biannual, Annual, Lifetime)
- Recurring Payments (Monthly, Annual)
- Go to Settings β API Keys and generate an API key.
- In your Admin Panel β Settings β LemonSqueezy Tab, paste:
- API Key
- Store ID (found in store settings)
- Each Variant ID for your products
- Go to Settings β Webhooks and create a webhook with URL:
https://yourdomain.com/webhook-lemonsqueezy
- Select events:
order_created
subscription_payment_success
- Copy the Signing Secret and paste it into the LemonSqueezy tab in your Admin Panel.
Klarna
- Log in to the Klarna Portal or Klarna Playground Portal (development).
- Go to Settings β Klarna API Keys page.
- Generate your new Klarna API key & make sure to copy both the Username and Password.
- In your Admin Panel β Settings β Klarna Tab, paste the keys and save.
Taxes & Billing
Our tax system allows you to seamlessly integrate tax charges into user transactions. You can create and tailor taxes according to your requirements and link them with any specific plan.
- Activate the Taxes & Billing system via Admin Panel -> Settings -> Payment tab.
- This feature enables users to input their billing information at checkout and allows you to attach taxes to paid plans.
- Access the system through Admin Panel -> Taxes.
- Create a new tax by selecting the Create Tax button.
- After creating a tax, visit Admin Panel -> Plans, choose a paid plan, and apply the desired tax.
Multicurrency
Our multicurrency feature enables users to select from various currencies you provide.
Configure this option in the Admin Panel -> Settings -> Payment tab
Set distinct prices for each currency of a plan by modifying it through the Admin Panel -> Plans page.
Enable or disable specific currencies for each payment processor by adjusting the settings in the Admin Panel -> Settings page.
For multiple currency usage, obtain an API key from FreeCurrencyAPI.com and integrate it into your Admin Panel -> Settings -> Payment tab.
While the API key is optional, it's recommended for automatically converting transactions into the default currency, ensuring precise and consistent statistics for administrative analysis.
Custom domains
Setting up additional custom domains will give you and your users the ability to use additional domains besides the main one when creating certain resources.
Watch a video tutorial on how you can set up Custom Domains on a shared web host with cPanel.
To add multiple domains, go to the Admin Panel and navigate to the Domains page.
Ensure the new domain or subdomain has an A record pointing to your host's IP, or a CNAME record pointing to your websites installation host (example.com).
The connection of the domain with the host can be different for each hosting platform in particular.
I am on a shared webhost
If your website is hosted on a shared webhost with panels like cPanel, visit the Addon Domain / Domains page in your cPanel and add the extra domain you intend to use.
Ensure that the Root Directory of the new domain is set to the same directory as the already existing Product Installation.
Ensure to issue an SSL certificate for the new domain as well.
I am on a VPS / Dedicated Server
This process might require technical assistance from a server administrator, as it can be completely different based on your current host and setup.
Ensure that the new domain is set up properly and attached to your server.
Ensure to issue an SSL certificate for the new domain as well.
Notification handlers
Twilio notification handler (SMS & Call)
- Go to Twilio Console and make sure to login to your account.
- Get a phone number from Twilio and then scroll down in the Console Dashboard to see the Account info section.
- Go to your product installation -> Admin panel -> Settings -> Notification handlers page.
- Enable the Twilio notification handler while also copying the Account SID, Account token & Phone number from Twilio and pasting it their respective fields.
- To enable different regions for Twilio SMS, go to Twilio Console -> Messaging -> Settings -> Geo Permissions page.
- To enable different regions for Twilio calling, go to Voice Geographic Permissions page.
Whatsapp notification handler (Whatsapp message)
- Go to Facebook Developers page.
- Make sure to login to your Facebook account.
- Click on the My Apps menu dropdown and click on Create app.
- Select the Other use case and continue.
- Select the Business app type and continue.
- Fill the other needed fields and continue (Make sure to attach your Business Account).
- After finishing it up, choose Add Product from the sidebar of your dashboard.
- Make sure you add the WhatsApp product to your app.
- After that, go to WhatsApp -> API Setup page.
- Add your own business From phone number and confirm it.
- Copy your Phone number ID and paste it into the product installation -> Admin panel -> Settings -> Notification handlers page.
- Open the Auth token documentation from Facebook and get your Permanent Access token, so that you can paste it into the same page in your installation as above.
- After that, go to WhatsApp -> Quickstart page -> Message templates page.
- Now you must create a template for each type of notification you will send out, do it as per the data below.
Name | test_notification_handler |
Language | English |
Category | Utility |
Content |
This is a test message. |
Name | notification_data |
Language | English |
Category | Utility |
Content |
We've collected data for your '{{1}}' campaign ({{2}} notification). View all the details at {{3}}π. |
Sample {{1}} | Example name |
Sample {{2}} | Email collector |
Sample {{3}} | https://YOUR_DOMAIN_HERE/notification/1/data |
OpenAI integration
Follow these steps to connect your system to the OpenAI API for AI-powered features such as AI translation.
- Log in to your OpenAI Dashboard using your OpenAI account.
- Navigate to the View API Keys section.
- Click Create new secret key.
- Give the key a descriptive name (e.g., "Production Website") and confirm.
- Copy the generated API key immediately β you wonβt be able to see it again once you leave the page.
- AI translations: In your Admin Panel β Settings β Main Tab β Other settings β OpenAI API key, paste the API key into the provided field & save.
Hosting & Domains
These are my recommendations based on past experiences with hosting or domain platforms.
VPS Hosting
(Intermediate, Advanced)For quick & easy VPS server management without complications:
- βοΈ Cloudways - use affiliated link for $50 credit
If you're comfortable managing your VPS and don't need managed cloud hosting:
- π©πͺ Hetzner - use affiliated link for 20β¬ credit
- πͺ Vultr - use affiliated link for $300 credit
Shared Hosting
(Beginner)For beginners with limited knowledge, a shared web hosting plan is recommended:
- π·οΈ Namecheap - recommended for beginners
- π Siteground - reliable shared hosting option
Domains
NameCheap for domain registration, they offer good prices and a simple interface without headaches. I've used them since I've started AltumCode.
Frequently asked questions
It is recommended to create a new language instead of editing the original one, so that it won't get overwritten when updating to a new version.
You also have the advanced option to directly edit the
app/languages/english#en.php
file for the user app side or the app/languages/admin/english#en.php
file for the admin panel side.
To fix this, you must increase your
max_input_vars
PHP ini variable to the value you see mentioned in the Admin Panel -> Languages -> {language name} -> Translate app page.
If you do not have the option or do not know how to increase this value, contact your webhost provider.
You also have the advanced option to directly duplicate the
app/languages/english#en.php
file for the user app side or the app/languages/admin/english#en.php
file for the admin panel side following the same naming concept for the file: language_name#language_code.php
.
In the vast majority of cases, this is caused by either one of those cases:
Nginx server - You haven't done the Nginx setup properly or at all.Apache server
- You do not have the
.htaccess
file uploaded. - You do not have proper permissions (CHMOD 644) for the
.htaccess
file. - Your web host provider does not have
mod_rewrite
enabled for Apache. - The
.htaccess
file exists, but the content is not the same as the original file from my product.
- If you run a server which supports
.htaccess
, some servers might not accept the first line of the.htaccess
file. Try to delete the first line on the.htaccess
file. - If you get this error when submitting a form, this means that your webhost blocked the request. Try to disable
mod_security
, as it may trigger a false-positive, or contact your webhost provider.
Spam registrations can not ever be fully prevented. No website can do fully get rid of spam. My products offer a lot of spam protection measures, so you would simply have to use them.
- Email confirmation - Set from the Admin panel -> Settings -> Users section.
- Captcha - Set from the Admin panel -> Settings -> Captcha section.
- Country block - Set from the Admin panel -> Settings -> Users section.
- Email domain block - Set from the Admin panel -> Settings -> Users section.
- Auto delete unconfirmed / old users - Set from the Admin panel -> Settings -> Users section.
- Bulk deletion of users - Set from the Admin panel -> Users page. In case you want to delete a lot of users in bulk.
- Email shield plugin - Which uses advanced algorithms and multiple blacklists from the web to prevent spam domains sign ups.
Editing the structure & components of the page is done from the themes/altum/views/index/index.php
file.
Editing the text is done as mentioned above in the π How can I update text on the website? section.
Editing the images is done directly via the Admin panel -> Settings -> Custom images page.
To disable the original landing page in order to redirect to a custom made landing page, you must go in the Admin panel -> Settings page and find the Custom landing page URL field where you can add your new landing page URL.
This can be done in multiple ways, depending on your actual CSS/SCSS knowledge.
- Easiest way: You can edit the theme colors directly Admin panel -> Settings -> Theme page.
- You can write your own custom css, that overwrites the already existing rules, and paste that in the Admin panel -> Settings -> Custom CSS field.
- You can manually replace the colors via the bootstrap CSS files in the
themes/altum/assets/css/
folder. - You can also fully modify the theme, by editing the bootstrap SCSS files in the
themes/altum/assets/css/
folder, recompile them back to CSS, and then overwrite the original CSS bootstrap files (advanced).
Keep in mind: Support for any kind of customizations is not included, so this is fully up to you.
users
table, find your admin account and set the password to $2y$10$uFNO0pQKEHSFcus1zSFlveiPCB3EvG9ZlES7XKgJFTAl5JbRGFCWy
which equals to admin
as the password. Now you need to find the uploads/cache/
from the product installation files and delete the folder you see inside.
In this case, you'd need to access your database manager (such as phpMyAdmin), select the database of the installed product, go to the settings
table, find the captcha
key and modify the value
as following:
Find the "login_is_enabled":true
part of the text and edit that to "login_is_enabled":false
.
Now you need to find the uploads/cache/
from the product installation files and delete the folder you see inside.
config.php
file and make sure all the details inside are still correct.
Social Logins
Follow these updated steps to set up additional login methods via popular social networks. Make sure to use HTTPS for all redirect URIs and verify your domains when required.
Facebook Login
Watch a video tutorial on how you can setup Facebook Login.
https://yourdomain.com/login/facebook
Google Login
Watch a video tutorial on how you can setup Google Login.
openid
,email
,profile
.https://yourdomain.com/login/google
Twitter (X) Login
https://yourdomain.com/login/twitter
https://yourdomain.com/
Discord Login
Watch a video tutorial on how you can setup Discord Login.
https://yourdomain.com/login/discord
LinkedIn Login
https://yourdomain.com/login/linkedin
Microsoft Login
https://yourdomain.com/login/microsoft