Paymenter
Version 1.1.0 · Paymenter 1.x (Laravel 12, PHP 8.3 or later).
Puts Talkfront live chat on your Paymenter client area, proves who is signed in, and keeps your customers in step with your contacts in Talkfront. An extension, not a theme to edit.
Driven by your queue worker, with an artisan command for every job: sync, test, force and the nightly run.
Opens Settings → Plugins, where the download lives. You will need a Talkfront account and a website already added.
Every Talkfront plugin does the same three things: puts the widget on every client area page, verifies whoever is signed in, and keeps their details in step with your contacts. Here is what the Paymenter one has that the others do not.
Particular to Paymenter
Open tickets beside the chat
The only one that shows what the customer already has open with you. Somebody asking in chat about a ticket they raised this morning is the common case, and an agent who can see it does not ask them to repeat it.
Your own custom properties
Whatever you have added to a customer in Paymenter comes across with them, so the things that matter to your business are in the sidebar rather than in another tab.
An artisan command for everything
talkfront:sync with --test, --force and --nightly. Sending, checking the key and re-sending everybody are all one line in a terminal you already use, and all scriptable.
Installing it
Copy a folder, enable the extension, paste three keys. It creates its own tables, and one artisan command sends the customers you already have.
Start by downloading the zip from Settings → Plugins.
Copy the
extensionsfolder into your Paymenter directory, so that you end up withextensions/Others/Talkfront/Talkfront.php.In Paymenter, go to Extensions, find Talkfront and enable it. The tables it needs are created for you.
Fill in the keys below and save. If your install caches config or views, run
php artisan optimize:clearafter copying the files.Run
php artisan talkfront:synconce, to send the customers you already have.
Add your Paymenter domain to the website’s allowed domains in Talkfront, or the widget is blocked without saying so.
The keys it asks for
The same three for every plugin, from the same two screens. What each one is for.
- Site key
- Talkfront → Settings → Websites → your website
- Identity key
- The same page, under Identity verification
- API keyOptional
- Talkfront → Settings → API keys, with the write permission


How verification works
The plugin signs the Paymenter id with your identity key, on your server, and Talkfront checks the signature. Somebody who edits the page in their browser can change the name they show but can never become somebody else, and unsigned details never attach to a verified person.
It is the same mechanism whichever platform you are on, so if you have read this on another plugin’s page, you have read it.
What gets synced, and when
- A customer is pushed when they sign in, when their details change, and when an invoice or service moves. Each push is queued, so none of it happens while somebody waits for a page.
- A nightly run at 03:00 catches what no event fires for: an invoice falling overdue at midnight, a service the cron suspended. It does 2,000 customers per run by default and carries on from where it stopped.
- The extension keeps a fingerprint of what it last sent for each customer, so a customer who has not actually changed costs one local query and no request at all. That is what makes it affordable to react to as many events as it does.
- This needs Paymenter’s queue worker and scheduler running, which a normal install already has. Without a worker the pushes still happen, inline, on the request that triggered them.
If something isn’t working
- No chat button on the client area
- Check the site key is set and Show the chat widget is on, then check your Paymenter domain is in the website’s allowed domains in Talkfront. If your client area sends a Content Security Policy, the three sources to allow are here.
- Customers show as unverified
- The identity key is missing, wrong, or was regenerated in Talkfront and not pasted back in here.
- Nothing is syncing
- Run
php artisan talkfront:sync --test. A read-only API key is the usual answer. Syncing needs one with write. After that, check a queue worker is running. - Details look wrong or stale
- Run
php artisan talkfront:sync --force. That throws away the fingerprints and re-sends every customer.
Still stuck? Open a chat on this page, or email support@talkfront.app with your Paymenter version and what you are seeing.
Start talking to your visitors today
Create a workspace, paste one line into your site, and answer your first chat in a few minutes.
Free plan, no card needed.