Swipelux
Business Customers

Business Customers

Onboard business entities with KYB compliance for B2B crypto payments

Enable investment firms, corporations, and other business entities to use SEPA → stablecoin flows with full KYB (Know Your Business) compliance.

Overview

Business customers allow you to onboard corporate entities rather than individuals. This is essential for:

  • Investment firms processing €2–5M+ monthly volumes
  • Corporate treasury operations
  • Cross-border B2B payments
  • EU VASP compliance (KYB, sanctions/KYT, Travel Rule)

Business customers undergo KYB verification, which includes entity identity checks, UBO (Ultimate Beneficial Owner) verification, and source of funds documentation.

Quick Start

1. Create Business

Create a business with minimal required data:

POST /v1/businesses

POST https://wallet.swipelux.com/v1/businesses
Content-Type: application/json
X-API-Key: your_api_key
 
{
  "legalName": "Acme Investment GmbH",
  "website": "https://acme-invest.example.com"
}

Response:

{
  "id": "biz_cK69MttD5nAUAbud1B",
  "legalName": "Acme Investment GmbH",
  "website": "https://acme-invest.example.com",
  "status": "not_started"
}

2. Complete KYB Information

Update the business KYB sections (each section has its own dedicated endpoint):

3. Add Shareholders & UBOs

Add Ultimate Beneficial Owners (individuals with >25% ownership or control):

View full shareholder documentation →

Quick example:

POST /v1/businesses/:id/shareholders

POST https://wallet.swipelux.com/v1/businesses/biz_cK69MttD5nAUAbud1B/shareholders
Content-Type: application/json
X-API-Key: your_api_key
 
{
  "residentCountry": "DE",
  "givenName": "John",
  "lastName": "Doe",
  "sharePercentage": 51,
  "joiningDate": "2020-01-15",
  "businessEmail": "john.doe@acme-invest.example.com",
  "position": "CEO",
  "uboOwnership": true,
  "uboIsSigner": true,
  "uboHasControl": true
}

4. Create Wallet for Business

POST /v1/businesses/:id/wallets

POST https://wallet.swipelux.com/v1/businesses/biz_cK69MttD5nAUAbud1B/wallets
Content-Type: application/json
X-API-Key: your_api_key
 
{
  "chains": ["polygon"]
}

Response:

{
  "wallets": [
    {
      "id": "wlt_abc123def456",
      "chain": "polygon",
      "address": "0x1234567890123456789012345678901234567890"
    }
  ]
}

5. Create Transfer with Business ID

Use the business ID in transfers:

POST /v1/transfers

POST https://wallet.swipelux.com/v1/transfers
Content-Type: application/json
X-API-Key: your_api_key
 
{
  "from": {
    "identifier": "biz_cK69MttD5nAUAbud1B",
    "amount": "1000.00",
    "rail": "polygon",
    "currency": "USDC"
  },
  "to": {
    "identifier": "0x9876543210987654321098765432109876543210"
  }
}

API Endpoints

Business Management

EndpointMethodDescription
/v1/businessesPOSTCreate a new business entity
/v1/businessesGETList all businesses (paginated)
/v1/businesses/:idGETGet business details
/v1/businesses/:idDELETESoft delete business

KYB Data Sections

EndpointMethodDescription
/v1/businesses/:id/identityPATCHUpdate entity identity information
/v1/businesses/:id/detailsPATCHUpdate business details
/v1/businesses/:id/addressPATCHUpdate business address
/v1/businesses/:id/source-of-fundsPATCHUpdate source of funds
/v1/businesses/:id/activityPATCHUpdate activity information

Shareholders & UBOs

EndpointMethodDescription
/v1/businesses/:id/shareholdersPOSTAdd shareholder/UBO
/v1/businesses/:id/shareholders/:shareholderIdPATCHUpdate shareholder
/v1/businesses/:id/shareholders/:shareholderIdDELETERemove shareholder

Wallets

EndpointMethodDescription
/v1/businesses/:id/walletsPOSTCreate wallet for business
/v1/businesses/:id/walletsGETList business wallets

KYB Verification Status

Business KYB status progresses through these states:

  • not_started - Business created but no KYB data submitted
  • incomplete - Partial KYB data submitted
  • under_review - Complete KYB data under compliance review
  • approved - KYB approved, business can transact
  • rejected - KYB rejected, business cannot transact

Required KYB Information

Complete KYB verification requires the following sections. Click each section for detailed requirements and API documentation:

Identity Information

Jurisdiction, entity type, registration number, incorporation date, tax ID

Business Details

Business description, industry type, contact information

Registered Address

Official business address with street, city, state, postal code

Source of Funds

AML compliance: source of funds, purpose, expected volumes, flow description

Activity Information

Risk assessment: sanctioned countries involvement, high-risk activities

Shareholders & UBOs

Ultimate Beneficial Owners with >25% ownership or control

Webhook Events

Subscribe to business lifecycle events:

  • business.created - New business entity created
  • business.updated - Business information updated
  • business.deleted - Business soft deleted
  • business.kyb_status_changed - KYB verification status changed

Business vs Individual Customers

FeatureIndividual CustomersBusiness Customers
VerificationKYC (Know Your Customer)KYB (Know Your Business)
ID Prefixcus_biz_
Required DataName, email, birthdateLegal name, registration #, jurisdiction
Additional DataResidential addressUBOs, shareholders, entity details
Use CaseRetail, end-usersB2B, corporate treasury, investment firms

Compliance Features

Business customers support full EU VASP compliance:

  • KYB Verification - Entity identity and documentation
  • UBO Tracking - Ultimate Beneficial Owner verification
  • Source of Funds - AML compliance documentation
  • Sanctions Screening - High-risk country checks
  • Activity Monitoring - High-risk activity tracking
  • Travel Rule Ready - Entity information for cross-border transfers

Example: Investment Firm Flow

// 1. Create business entity
const business = await fetch('https://wallet.swipelux.com/v1/businesses', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': process.env.API_KEY
  },
  body: JSON.stringify({
    legalName: 'European Investment Partners GmbH',
    website: 'https://eip-fund.eu'
  })
});
 
const { id: businessId } = await business.json();
 
// 2. Complete KYB
await fetch(`https://wallet.swipelux.com/v1/businesses/${businessId}/identity`, {
  method: 'PATCH',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': process.env.API_KEY
  },
  body: JSON.stringify({
    jurisdiction: 'DE',
    entityType: 'gmbh',
    registrationNumber: 'HRB 98765',
    incorporationDate: '2018-03-15',
    taxNumber: 'DE987654321'
  })
});
 
// 3. Add managing directors as UBOs
await fetch(`https://wallet.swipelux.com/v1/businesses/${businessId}/shareholders`, {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': process.env.API_KEY
  },
  body: JSON.stringify({
    residentCountry: 'DE',
    givenName: 'Anna',
    lastName: 'Schmidt',
    sharePercentage: 50,
    joiningDate: '2018-03-15',
    businessEmail: 'anna.schmidt@eip-fund.eu',
    position: 'Managing Director',
    uboOwnership: true,
    uboIsSigner: true,
    uboHasControl: true
  })
});
 
// 4. Create wallet and start processing SEPA → USDC transfers
await fetch(`https://wallet.swipelux.com/v1/businesses/${businessId}/wallets`, {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': process.env.API_KEY
  },
  body: JSON.stringify({
    chains: ['polygon']
  })
});

Next Steps