> ## Documentation Index
> Fetch the complete documentation index at: https://docs.juicyway.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Additional Operations

> This endpoint retrieves a list of wallets. You can filter results by customer, currency, or wallet status.

## Endpoint

```json theme={null}
GET /wallets/all
```

## Description

Use this endpoint to fetch all wallets associated with your account. Filters can be applied to narrow results based on customer or wallet attributes.

## Query Parameters (Filters)

| Parameter     | Type          | Description                                              |
| :------------ | :------------ | :------------------------------------------------------- |
| `customer_id` | string (UUID) | Filter wallets by customer                               |
| `currency`    | string        | Filter wallets by currency (e.g. `NGN`, `USD`)           |
| `status`      | string        | Filter wallets by status (`active`, `frozen`, `deleted`) |

## Example cURL Request

```bash theme={null}
curl -X GET "https://api.spendjuice.com/wallets/all?currency=NGN&status=active" \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json"
```

***

## Response

### Success Response (200 OK)

```json theme={null}
{
  "data": [
    {
      "id": "wallet_id",
      "customer_id": "customer_id",
      "currency": "NGN",
      "status": "active",
      "balance": {
        "amount": 1500,
        "currency": "NGN"
      }
    }
  ]
}
```

***

# List Wallet Transactions

This endpoint retrieves a list of wallet transactions. You can filter transactions by wallet or transaction type.

***

## Endpoint

```json theme={null}
GET /wallets/transactions
```

## Description

Use this endpoint to list all transactions across wallets or to retrieve transactions for a specific wallet.

## Query Parameters (Filters)

| Parameter   | Type          | Description                                    |
| :---------- | :------------ | :--------------------------------------------- |
| `wallet_id` | string (UUID) | Filter transactions by wallet                  |
| `type`      | string        | Filter by transaction type (`debit`, `credit`) |

***

## Example cURL Request

```
curl -X GET "https://api.spendjuice.com/wallets/transactions?wallet_id=wallet_id&type=debit" \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json"
```

## Response

### Success Response (200 OK)

```json theme={null}
{
  "data": [
    {
      "id": "transaction_id",
      "wallet_id": "wallet_id",
      "type": "debit",
      "amount": 500,
      "description": "Customer payout",
      "created_at": "2025-07-24T10:15:30Z"
    }
  ]
}
```

***

# Retrieve a Transaction

This endpoint retrieves the details of a single wallet transaction by its ID.

## Endpoint

```json theme={null}
GET /wallets/transactions/{id}
```

## Description

Use this endpoint to fetch full details of a specific transaction, including amount, type, and timestamps.

## Path Parameters

| Parameter | Type          | Required | Description                   |
| :-------- | :------------ | :------- | :---------------------------- |
| `id`      | string (UUID) | Yes      | Unique transaction identifier |

## Example cURL Request

```bash theme={null}
curl -X GET "https://api.spendjuice.com/wallets/transactions/{id}" \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json"
```

## Response

### Success Response (200 OK)

```json theme={null}
{
  "data": {
    "id": "transaction_id",
    "wallet_id": "wallet_id",
    "type": "credit",
    "amount": 1000,
    "description": "Wallet top-up",
    "created_at": "2025-07-24T09:45:00Z"
  }
}
```

***

## Common Errors

| Status Code | Description                |
| :---------- | :------------------------- |
| `401`       | Unauthorized               |
| `404`       | Resource not found         |
| `400`       | Invalid request parameters |

***

## Notes & Best Practices

* Use filters to reduce payload size and improve performance.
* Always verify wallet status before initiating related actions.
* Paginate responses if supported to handle large result sets.
* Use transaction IDs for reconciliation and audit purposes.
