Logo GenukaGenuka Pay
Guides

Account Activation and KYC

Understand how KYC submission, review, and limits affect your account activation and production readiness.

Introduction

KYC is not just a compliance formality in Genuka Pay. It directly affects account readiness, transaction limits, and whether your business can move safely into live traffic.

Document Submission

Upload required business and identity documents according to entity type and review rules.

Review Workflow

Track draft, submitted, approved, rejected, or needs-info states across the submission lifecycle.

Operational Limits

Monitor current transaction limits and monthly usage before enabling live traffic.

Required Headers

Authenticated KYC Request
X-Public-Key: YOUR_PUBLIC_KEY
X-Timestamp: UNIX_TIMESTAMP
X-Signature: HMAC_SHA256_SIGNATURE

Main KYC Endpoints

  • GET /api/v1/kyc/submission
  • POST /api/v1/kyc/submission
  • POST /api/v1/kyc/submission/documents
  • PUT /api/v1/kyc/submission/documents
  • DELETE /api/v1/kyc/submission/documents
  • POST /api/v1/kyc/submission/submit
  • POST /api/v1/kyc/submission/unlock
  • GET /api/v1/kyc/submission/requirements
  • POST /api/v1/kyc/submission/completeness
  • GET /api/v1/kyc/limits

Submission Statuses

Current submission states typically include:

  • draft
  • submitted
  • under_review
  • approved
  • rejected
  • needs_info

Typical Document Types

Business-oriented documents:

  • BUSINESS_REGISTRATION
  • TAX_ID
  • COMPANY_STATUTES
  • BOARD_MINUTES
  • NON_BANKRUPTCY_CERTIFICATE
  • UTILITY_BILL
  • RENT_RECEIPT

Identity-oriented documents:

  • ID_CARD
  • PASSPORT
  • NATIONAL_ID
  • PHOTO_ID

Retrieve Required Documents

Fetch Document Requirements
curl -X GET "{{BASE_URL}}/api/v1/kyc/submission/requirements?entity_type=COMPANY" \
  -H "X-Public-Key: YOUR_PUBLIC_KEY" \
  -H "X-Timestamp: UNIX_TIMESTAMP" \
  -H "X-Signature: HMAC_SHA256_SIGNATURE"

Check Submission Completeness

Check KYC Completeness
curl -X POST "{{BASE_URL}}/api/v1/kyc/submission/completeness" \
  -H "X-Public-Key: YOUR_PUBLIC_KEY" \
  -H "X-Timestamp: UNIX_TIMESTAMP" \
  -H "X-Signature: HMAC_SHA256_SIGNATURE" \
  -H "Content-Type: application/json" \
  -d '{
    "entity_type": "COMPANY"
  }'

The completeness response typically includes:

  • score
  • is_complete
  • is_minimum_complete
  • mandatory completion percentage
  • optional completion percentage

Check Current Limits

Fetch Current KYC Limits
curl -X GET "{{BASE_URL}}/api/v1/kyc/limits" \
  -H "X-Public-Key: YOUR_PUBLIC_KEY" \
  -H "X-Timestamp: UNIX_TIMESTAMP" \
  -H "X-Signature: HMAC_SHA256_SIGNATURE"

You can expect fields such as:

  • currency
  • enabled
  • max_monthly
  • max_per_transaction
  • used_monthly
  • remaining_monthly
  • transaction_count
  • reset_at
  • usage_percentage
  1. complete your company profile
  2. create or retrieve the current KYC submission
  3. upload required documents
  4. review completeness before submitting
  5. submit for review
  6. monitor approval or needs-info feedback
  7. re-check current limits before live rollout

Editing After Submission

If changes are required after submission, the platform supports an unlock flow:

Unlock KYC Submission
curl -X POST "{{BASE_URL}}/api/v1/kyc/submission/unlock" \
  -H "X-Public-Key: YOUR_PUBLIC_KEY" \
  -H "X-Timestamp: UNIX_TIMESTAMP" \
  -H "X-Signature: HMAC_SHA256_SIGNATURE"

Go-live rule

Do not treat KYC approval as background paperwork. It is an operational dependency for limits, activation, and risk-managed launch readiness.

How is this guide?