Skip to main content

Pending Approval

Pending Approval adds a manual approval step for new users who register via Google sign-in. Useful for membership sites, B2B platforms, and any site requiring vetting before granting access.

PRO Feature

Pending Approval is a PRO feature. Upgrade to PRO to unlock this functionality.

How It Works​

User registers via Google
↓
Account created with "pending" status
↓
User sees "Awaiting approval" message
↓
Admin receives notification
↓
Admin reviews and approves/rejects
↓
User notified of decision

Configuration​

Enable Pending Approval​

  1. Go to Settings > OneTap Login
  2. Click Users tab
  3. Enable Require approval for new users
  4. Configure notification settings
  5. Save Changes

Pending Approval Settings

Settings Options​

SettingDescription
Enable approvalToggle feature on/off
Notify adminEmail admin when user registers
Pending messageMessage shown to pending users
Approval emailEmail sent when approved
Rejection emailEmail sent when rejected

User Experience​

Registration Flow​

  1. User clicks Google sign-in
  2. Google authentication completes
  3. Account created but restricted
  4. User sees pending message:
Your account is awaiting approval.
You'll receive an email when approved.

Pending State​

While pending, user:

  • Cannot access My Account features
  • Cannot place orders
  • Cannot access member content
  • CAN log out and log back in

After Approval​

Once approved:

  • Full account access
  • Normal functionality
  • Receives approval email

After Rejection​

If rejected:

  • Account deleted or marked inactive
  • Receives rejection email
  • Cannot log in with that Google account

Admin Workflow​

Notification Email​

Admins receive email with:

  • User name and email
  • Registration timestamp
  • Quick approve/reject links

Approval Queue​

View pending users:

  1. Go to Users > All Users
  2. Filter by "Pending" status
  3. Or use OneTap Pending Queue

Pending Approval Users List

Individual Actions​

For each pending user:

  • Approve: Grant access
  • Reject: Deny access
  • View: See user details

Bulk Actions​

Handle multiple users at once:

Pending Approval Bulk Actions

  1. Select multiple users
  2. Choose "Approve" or "Reject" from dropdown
  3. Click "Apply"

Customizing Messages​

Pending Message​

Shown to users awaiting approval:

Default:
"Your account is pending approval. You'll be notified by email once approved."

Custom:
"Thanks for registering! Our team will review your application within 24 hours."

Approval Email​

Subject:

Your {site_name} account has been approved!

Body:

Hi {first_name},

Great news! Your account at {site_name} has been approved.

You can now sign in and access all features:
{login_url}

Welcome aboard!

Rejection Email​

Subject:

Update on your {site_name} account request

Body:

Hi {first_name},

We've reviewed your account request for {site_name}.

Unfortunately, we're unable to approve your account at this time.

If you have questions, please contact us at {admin_email}.

Use Cases​

Membership Site​

Enable pending approval: Yes
Notification: Immediate email
Approval: Manual by admin
Rejection: Rare, with reason

B2B Platform​

Enable pending approval: Yes
Combined with: Domain restrictions
Fast-track: Auto-approve known domains
Manual: Review unknown domains

Educational Platform​

Enable pending approval: Yes
Verification: Check .edu email
Approval: After verification
Timing: Within 24 hours

Exclusive Community​

Enable pending approval: Yes
Review: Application details
Approval: Curator decision
Communication: Personalized emails

Combining with Other Features​

With Domain Restrictions​

1. Domain restrictions first (whitelist)
2. If allowed, create pending account
3. Admin approves from allowed domain

With Role Mapping​

1. User registers
2. Role determined by domain
3. Account pending until approved
4. Approved user gets mapped role

With Welcome Email​

1. User approved
2. Approval email sent
3. Welcome email sent (if configured)

Auto-Approval Rules​

Consider auto-approving certain users:

By Domain​

add_filter('onetap_require_approval', function($require, $email) {
// Auto-approve company employees
if (str_ends_with($email, '@company.com')) {
return false;
}
return $require;
}, 10, 2);

By Existing Orders​

add_filter('onetap_require_approval', function($require, $email) {
// Auto-approve if has previous orders as guest
global $wpdb;
$orders = $wpdb->get_var($wpdb->prepare(
"SELECT COUNT(*) FROM {$wpdb->posts} p
JOIN {$wpdb->postmeta} pm ON p.ID = pm.post_id
WHERE p.post_type = 'shop_order'
AND pm.meta_key = '_billing_email'
AND pm.meta_value = %s",
$email
));
return $orders == 0; // Only require approval if no orders
}, 10, 2);

Hooks for Developers​

Before Creating Pending User​

add_filter('onetap_pending_user_data', function($user_data, $google_data) {
// Add pending reason or metadata
$user_data['meta_input']['_pending_reason'] = 'Awaiting verification';
return $user_data;
}, 10, 2);

After Approval​

add_action('onetap_user_approved', function($user_id, $approved_by) {
// Log approval
// Trigger workflow
// Sync to CRM
}, 10, 2);

After Rejection​

add_action('onetap_user_rejected', function($user_id, $rejected_by, $reason) {
// Log rejection
// Analytics
}, 10, 3);

Troubleshooting​

User Not Seeing Pending Message​

Causes:

  1. Approval not enabled
  2. User already approved
  3. Cache showing old state

Solutions:

  1. Verify setting enabled
  2. Check user status
  3. Clear cache

Admin Not Receiving Notifications​

Causes:

  1. Notification disabled
  2. Email configuration issue
  3. Spam filter

Solutions:

  1. Enable notifications
  2. Test WordPress email
  3. Check spam folder

Can't Find Pending Users​

Causes:

  1. Wrong filter applied
  2. Users already processed
  3. Different user role view

Solutions:

  1. Clear all filters
  2. Check recent activity
  3. View "All" users

Approval Not Working​

Causes:

  1. Permission issue
  2. Plugin conflict
  3. Database error

Solutions:

  1. Verify admin permissions
  2. Test with other plugins disabled
  3. Check error logs

Security Considerations​

Why Use Pending Approval?​

  • Prevent spam registrations
  • Vet users before access
  • Comply with membership requirements
  • Control community quality

Rejection Handling​

Rejected users:

  • Can't re-register with same Google
  • Account data can be deleted
  • May try different Google account

Rate Limiting​

Combine with rate limiting to prevent:

  • Registration spam
  • Approval queue flooding

Best Practices​

Response Time​

  • Set expectations in pending message
  • Approve within reasonable time (24-48h)
  • Don't leave users waiting

Communication​

  • Clear pending message
  • Informative approval email
  • Polite rejection email

Process​

  • Regular queue review
  • Bulk actions for efficiency
  • Document approval criteria

Next Steps​