---
title: "Check customer credentials and return an API token"
method: POST
path: "/customer/check"
tags: ["Customer"]
---

# Check customer credentials and return an API token

`POST /customer/check`

## Request

- Base URL: `https://demo.onlinebillingform.com/api/v2`
- URL: `https://demo.onlinebillingform.com/api/v2/customer/check`
- Auth: none required
- TypeScript: <https://skmtc.dev/billingserv/apis/billingserv-api-v2/docs/customer/check/post.ts> (a function with typed inputs; its response is checked against the schema)

Use this BillingServ API endpoint to check customer credentials and return an API token. Review the response for the operation result or validation errors.

## Request body

- object
  - `username` string, email, required
  - `password` string, password, required

## Response `200`

OK

- ApiResponse
  - `success` boolean

## Other responses

- `401`: Missing or invalid API key
- `403`: The credentials belong to a non-customer account or the customer's email is not verified
- `422`: Validation error
- `429`: Rate limit exceeded

## Changes

- **2026-08-22** `6b9208b64456`: 6 info
  - added the non-success response with the status `403`
  - added the non-success response with the status `429`
  - added the optional property `code` to the response with the `401` status
  - added the optional property `code` to the response with the `422` status
  - …2 more

[Operation history](https://skmtc.dev/billingserv/apis/billingserv-api-v2/changes/customer/check/post.md)

---

[API](https://skmtc.dev/billingserv/apis/billingserv-api-v2.md) - [All operations](https://skmtc.dev/billingserv/apis/billingserv-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/billingserv/apis/billingserv-api-v2/revisions/232ab5ca8413?raw)
