Team and security
Members and roles, two-factor, audit log, custom domains, exports and support.
A merchant account has one owner, the person who created it, and the members that owner invites. This page covers who can do what on the account, how to lock the Dashboard down, and the account level settings that sit around your integration: custom domains, embedding, exports, email notifications and support.
Members and roles
Invite people from Settings → Members. The owner can always do it, other members need the
manage_team_members permission, which only the Administrator role carries. An invitation goes
out by email with the role you picked, and it stays valid for seven days.
How many members you can add depends on your plan. The owner is not counted.
| Plan | Members |
|---|---|
| Pay as you go | 3 |
| Growth | 5 |
| Scale | Unlimited |
| Enterprise | Unlimited |
Each member holds one of seven roles. The owner is above all of them and passes every permission check.
| Role | What it covers |
|---|---|
| Administrator | Everything, including members, settings and live mode. |
| Developer | API keys, webhooks and technical settings. Reads payments, customers and invoices, manages payment links. |
| Finance | Payments, payouts and beneficiaries, invoices, payment links, subscriptions, reports, revenue and tax. |
| Analyst | Reads payments, customers, payouts, invoices, reports, revenue and tax. Changes nothing. |
| Support Specialist | Payments, refunds, disputes and customers. Reads invoices. |
| Viewer | Reads most of the account, settings included. Changes nothing. |
| Sandbox User | Sandbox only: test payments, sandbox API keys and webhook endpoints. Can never switch to live. |
Securing your own sign-in
Every member secures their own access from Settings → Security, in the personal part of the Settings.
- Two-factor authentication. Three second factors are offered: an authenticator app, set up with a QR code and backed by recovery codes, a code sent by email, and a code sent by SMS.
- Passkeys. A passkey signs you in without a password, or serves as your second factor. Register one per device.
- Active sessions. The list shows every device signed in to your account. You can close one of them, or sign out of all the others at once after entering your password.
Securing the whole team
Settings → Team security applies to every member of the account. Changing it takes the owner or
the manage_settings permission.
Require two-factor authentication. Once it is on, a member with no second factor is sent to set one up before reaching anything else. A member who is already signed in without having passed a second factor in that session is signed out and has to sign in again.
An IP allow-list for the Dashboard. Enter IPv4 or IPv6 addresses, or CIDR ranges. A member connecting from anywhere else lands on a blocked page. Signing in and the personal settings stay reachable, so nobody is locked out of fixing their own profile. This list protects the Dashboard only. An API key has its own allow-list, see Environments & API keys.
Audit log
The account's audit log, at /settings/security/audit-log, records what members did: who, which
action, and when. Filter it by action, by member or by date. Verify integrity checks that the
chain of entries has not been altered since they were written.
Settings → Audit log shows your own activity only, over the last twelve months.
Custom domains
From the Scale plan, your payment pages, payment links and invoice pages can be served from
your own domain instead of a wajub.com host. Add it in Settings → Custom domains, then publish
two DNS records at your registrar:
| Type | Name | Value |
|---|---|---|
TXT | _wajub-challenge.pay.example.com | The verification token the Dashboard shows you |
CNAME | pay.example.com | connect.wajub.com |
The TXT record proves the domain is yours, the CNAME routes it to Wajub. Click Verify once
both are published. You then choose what the domain serves: all modules, checkout only, payment
links only, or invoice pages only.
Wajub keeps checking a verified domain every ten minutes. The first failed check emails you. After three in a row, the domain is taken out of the URLs Wajub publishes, which fall back to the Wajub host, and you are notified again. Fix the records, then verify the domain again from the same page.
Embedding the payment page
By default, the hosted payment page can be shown inside an iframe on any site. To restrict it, list
the sites allowed to frame it in Settings → Branding, under Embedding: one https:// origin
per line, up to twenty. As soon as the list holds one origin, every other site is refused. Branding
opens from the Growth plan.
Exports
Most lists in the Dashboard export to a file: payments, refunds, transfers, customers, beneficiaries, invoices, revenue, tax, payment link activity, and the Konsole logs and events. Depending on the list, the file is CSV, Excel, PDF or JSON.
On Pay as you go, you get ten exports per calendar month across all lists. From Growth, exports are unlimited.
Email notifications
Wajub emails the members whose role concerns the event. The owner receives what an Administrator receives.
| Topic | Who receives it |
|---|---|
| Payments, invoices, payouts, balance adjustments, compliance | Administrator, Finance |
| Disputes | Administrator, Support Specialist |
| Sync connections, technical alerts such as a failing webhook endpoint | Administrator, Developer |
| Security | Administrator |
These emails come with every plan.
Support
Open a request from Support in the Dashboard. The conversation stays there, and you can attach files to it. Every plan includes support. What changes with the plan is how fast the first answer comes and how fast the request is resolved.
| Plan | First response | Resolution |
|---|---|---|
| Pay as you go | Within 24 business hours | Within 5 business days |
| Growth, Scale | Within 4 business hours | Within 2 business days |
| Enterprise | Within 1 business hour | Within 1 business day |
Business hours run Monday to Friday, from 8:00 to 18:00, Douala time, outside Cameroonian public holidays.