<!-- ZenPays documentation · https://docs.zenpayz.com/docs/api-reference/customers -->

# Customers

Manage customers, track risk profiles, and view activity. Access via `zenpays.customers`.

## Methods

### create

<Tabs groupId="language">
  <TabItem value="javascript" label="JavaScript" default>

```typescript
const customer = await zenpays.customers.create({
  email: 'john@example.com',
  name: 'John Doe',
  phone: '+911234567890',
  country: 'IN',
})
```

  </TabItem>
  <TabItem value="python" label="Python">

```python
customer = zenpays.customers.create({
    "email": "john@example.com",
    "name": "John Doe",
    "phone": "+911234567890",
    "country": "IN",
})
```

  </TabItem>
</Tabs>

---

### get

```typescript
const customer = await zenpays.customers.get('cust_xxx')
```

---

### update

```typescript
const updated = await zenpays.customers.update('cust_xxx', { name: 'Jane Doe' })
```

---

### list

<Tabs groupId="language">
  <TabItem value="javascript" label="JavaScript" default>

```typescript
const { data } = await zenpays.customers.list({ page: 1, limit: 20 })
```

  </TabItem>
  <TabItem value="python" label="Python">

```python
result = zenpays.customers.list({"page": 1, "limit": 20})
```

  </TabItem>
</Tabs>

---

### search

```typescript
const results = await zenpays.customers.search('john@example.com')
```

---

### getRiskProfile

```typescript
const profile = await zenpays.customers.getRiskProfile('cust_xxx')
```

---

### getActivityHistory

```typescript
const history = await zenpays.customers.getActivityHistory('cust_xxx', {
  type: 'payment',
  from: '2024-01-01',
  to: '2024-12-31',
  limit: 50,
})
```

---

### getTopCustomers

```typescript
const top = await zenpays.customers.getTopCustomers({
  startDate: '2024-01-01',
  endDate: '2024-12-31',
  limit: 10,
})
```

---

### getRecentPayments

```typescript
const payments = await zenpays.customers.getRecentPayments({ limit: 10 })
```

---

### getAnalytics

```typescript
const analytics = await zenpays.customers.getAnalytics({
  startDate: '2024-01-01',
  endDate: '2024-12-31',
})
// Returns: { totalCustomers, newCustomers, activeCustomers, churnRate }
```

---

### block

```typescript
const blocked = await zenpays.customers.block('cust_xxx', 'Suspected fraud')
```

---

### unblock

```typescript
const unblocked = await zenpays.customers.unblock('cust_xxx')
```
