# List vendors

Endpoint: GET /vendors
Version: 2.0.0
Security: oauth2ClientCredentials

## Query parameters:

  - `page` (number)
    Page number

  - `limit` (number)
    Items per page (max 1000)

## Header parameters:

  - `org_wallet_ref` (string)
    Organization wallet reference, defaults to "1" if not provided

  - `business_id` (string, required)
    Business identifier for the request

## Response 200 fields (application/json):

  - `docs` (array)
    Vendor documents

  - `docs._id` (string)
    Vendor MongoDB ID

  - `docs.phone` (string)
    Vendor phone number

  - `docs.email` (string)
    Vendor email address

  - `docs.contact_name` (string)
    Contact person name

  - `docs.company_name` (string)
    Company name

  - `docs.address` (string)
    Company address

  - `docs.description` (string)
    Vendor description

  - `docs.status` (string)
    Vendor status
    Enum: "ACTIVE", "INACTIVE", "ARCHIVED"

  - `docs.payment_instructions` (array)
    Payment instructions array

  - `docs.payment_instructions._id` (string)
    Payment instruction MongoDB ID

  - `docs.payment_instructions.channel` (string)
    Payment channel type
    Enum: "mpesa", "mtn", "pochi", "airtel", "xentebanktransfer", "bank", "rtgs", "paybill", "till", "airtime", "internal"

  - `docs.payment_instructions.phone` (string)
    Phone number for mpesa payments

  - `docs.payment_instructions.accno` (string)
    Account number for bank payments

  - `docs.payment_instructions.bank` (string)
    Bank name

  - `docs.payment_instructions.bank_code` (string)
    Bank code

  - `docs.payment_instructions.bankCode` (string)
    Bank code (alternative field)

  - `docs.payment_instructions.till` (string)
    Till number for till payments

  - `docs.payment_instructions.business_no` (string)
    Business number for paybill payments

  - `docs.payment_instructions.is_default` (boolean)
    Whether this is the default payment method

  - `docs.taxID` (string)
    Tax identification number

  - `docs.read_only` (boolean)
    Whether vendor is read-only

  - `docs.externalId` (string)
    External system ID

  - `docs.createdAt` (string)
    Created timestamp

  - `docs.updatedAt` (string)
    Updated timestamp

  - `docs.__v` (number)
    Version key

  - `total` (number)
    Total count

  - `limit` (object)
    Limit per page

  - `page` (object)
    Current page

  - `pages` (number)
    Total pages

