Account Setup

Creating and configuring your ZenPay account to start accepting cryptocurrency payments.

Last updated: June 18, 2023
Next: First Payment

Creating Your ZenPay Account

Before you can start accepting cryptocurrency payments, you need to create and set up your ZenPay account. This guide will walk you through the process step by step.

1

Sign Up

Visit the ZenPay registration page and create your account by providing your email address and setting a secure password.

2

Verify Your Email

Check your inbox for a verification email from ZenPay and click the link to verify your email address. If you don't see the email, check your spam folder.

3

Complete Your Profile

Fill in your business details, including company name, business type, and contact information. This information helps us tailor your ZenPay experience.

4

Set Up Two-Factor Authentication

Enhance your account security by enabling two-factor authentication (2FA). We recommend using an authenticator app like Google Authenticator or Authy.

Identity Verification (KYC)

To comply with regulations and ensure the security of our platform, we require identity verification for all merchants. This process, known as Know Your Customer (KYC), helps prevent fraud and ensures compliance with legal requirements.

Individual Verification

  • Valid government-issued photo ID (passport, driver's license)
  • Proof of address (utility bill, bank statement)
  • Selfie with your ID document

Business Verification

  • Business registration documents
  • Company address verification
  • Identity verification for authorized representatives

Verification Time

Individual verification typically takes 1-2 business days, while business verification may take 3-5 business days. You'll receive email notifications about the status of your verification process.

Connecting Payment Methods

After your account is verified, you need to set up your preferred payment methods for receiving funds.

Bank Account

Connect your bank account to receive fiat currency payouts. We support bank accounts in 40+ countries.

  1. Navigate to Bank Accounts: Go to Settings → Payment Methods → Bank Accounts.
  2. Add a New Account: Click "Add Bank Account" and follow the prompts to enter your banking details.
  3. Verify Your Account: Complete any verification steps required by your region (may include micro-deposits or online banking verification).
  4. Set as Default (Optional): If you have multiple accounts, you can set one as your default settlement account.

Crypto Wallet

Add your cryptocurrency wallet addresses to receive payments directly in crypto.

  1. Navigate to Crypto Wallets: Go to Settings → Payment Methods → Crypto Wallets.
  2. Add a New Wallet: Click "Add Wallet" and select the cryptocurrency you want to receive.
  3. Enter Wallet Address: Provide your wallet address and a label (e.g., "BTC Settlement Wallet").
  4. Verify Ownership: Complete the verification process by signing a message with your wallet.
  5. Set Preferences: Choose whether to auto-settle to this wallet and set any thresholds.

Setting Up Your API Keys

If you plan to integrate ZenPay with your website or application, you'll need to set up your API keys.

Generating API Keys
// Navigate to Settings → API Keys in your ZenPay dashboard
// Click "Generate New Key" and provide a descriptive name
// Store your API keys securely - they give access to your account!

// Example API key pair:
// Public key: pk_test_ZenPay123456789DEMO
// Secret key: sk_test_ZenPay987654321DEMO

Security Best Practices

  • Never share your secret API key publicly or commit it to version control systems.
  • Use environment variables to store API keys in your code.
  • Rotate your API keys periodically for enhanced security.

Configuring Webhooks

Webhooks allow your application to receive real-time notifications about events like successful payments or refunds.

Setting Up Webhooks

  1. Navigate to Webhooks: Go to Developer → Webhooks.
  2. Add Endpoint: Click "Add Endpoint" to create a new webhook destination.
  3. Configure Events: Select which events you want to be notified about (e.g., payment.completed, payment.failed).
  4. Set Secret: Create a webhook secret to verify the authenticity of the webhook notifications.
Webhook Endpoint Example
// Example webhook endpoint in Node.js with Express

const express = require('express');
const app = express();
const crypto = require('crypto');

// Your webhook secret from ZenPay dashboard
const webhookSecret = 'whsec_1234567890abcdef';

app.post('/webhooks/zenpay', express.raw({type: 'application/json'}), (req, res) => {
  const signature = req.headers['zenpay-signature'];
  
  // Verify webhook signature
  const hmac = crypto.createHmac('sha256', webhookSecret);
  const digest = hmac.update(req.body).digest('hex');
  
  if (signature === digest) {
    const event = JSON.parse(req.body);
    
    // Handle different event types
    switch (event.type) {
      case 'payment.succeeded':
        // Handle successful payment
        console.log('Payment succeeded:', event.data.id);
        break;
      case 'payment.failed':
        // Handle failed payment
        console.log('Payment failed:', event.data.id);
        break;
      // Handle other event types
    }
    
    res.status(200).send('Webhook received');
  } else {
    res.status(403).send('Invalid signature');
  }
});

app.listen(3000, () => console.log('Webhook server running'));

Next steps

Now that your account is set up, you're ready to start accepting your first cryptocurrency payment:

First Payment

Learn how to accept your first cryptocurrency payment

Dashboard Overview

Explore the ZenPay dashboard and its features

Was this helpful?