Skip to main content

Troubleshooting

"The provided interactions endpoint URL could not be verified"

→ Make sure you have saved the extension settings with the correct Public Key in Paymenter before entering the URL in the Developer Portal.

"Bot didn't respond in time"

→ Your Paymenter instance must be reachable over HTTPS from the internet. Check that port 443 is open and your SSL certificate is valid.

Slash commands don't appear in Discord

→ If you set a Guild ID, commands appear instantly. Without a Guild ID, global commands can take up to 1 hour to propagate. → Make sure the bot has been invited with the applications.commands scope (see Step 7). → You can manually re-register all commands via SSH from your Paymenter directory:

php artisan tinker --execute="
\$settings = \App\Models\Extension::where('extension', 'Discord')->where('type', 'other')->first()->settings->pluck('value', 'key')->toArray();
\$discord = new \Paymenter\Extensions\Others\Discord\Discord(\$settings);
\$discord->registerDiscordCommands();
echo 'Done';
"

→ Double-check that the redirect URL in OAuth2 → Redirects matches exactly: https://YOUR_DOMAIN/discord/oauth/callback

"Permission denied" error on storage/logs when installing/updating

→ Run this in your Paymenter directory via SSH to fix the file ownership:

chown -R www-data:www-data storage/

Then try installing/updating the extension again.

This happens when Artisan commands were previously run as root. To avoid it in the future, prefix artisan commands with sudo -u www-data.

"Permission denied" when uploading the extension (rename ... Permission denied)

→ The web server has no write access to the extensions/ folder. Fix it with:

chown -R www-data:www-data extensions/

Then upload the extension again.