---
title: "Overview"
icon: "file-lines"
description: "Authentication, base URLs, and endpoint flows by integration type"
---

> For the complete documentation index, see [llms.txt](/llms.txt).

The iwoca Lending API lets you refer customers for business finance, track their application, and surface offers.
The endpoints you call depend on your integration type.

<CardGroup cols={3}>
  <ApiRefCard title="Customers" icon="user" to="customer/overview">
    Create and manage customers
  </ApiRefCard>
  <ApiRefCard title="Applications" icon="rectangle-list" to="application/overview">
    Submit loan applications
  </ApiRefCard>
  <ApiRefCard title="Offers" icon="hand-holding-dollar" to="offers/overview">
    Retrieve and select offers
  </ApiRefCard>
  <ApiRefCard title="Documents" icon="folder-open" to="documents/overview">
    Upload supporting documents
  </ApiRefCard>
  <ApiRefCard title="Prequalification" icon="filter" to="prequalification/overview">
    Personalised loan amounts before applying
  </ApiRefCard>
  <ApiRefCard title="Webhooks" icon="bell" to="webhooks/overview">
    Real-time status notifications
  </ApiRefCard>
</CardGroup>

## Endpoint flow by integration type

<Tabs>
  <Tab title="API Lite">
    Create a customer and hand off to iwoca.

    <Steps>
      <Step title="POST /customers/">
        Create the customer with company and director details.
      </Step>
      <Step title="POST /customers/{customer_id}/applications/">
        Submit a loan application with the requested amount.
      </Step>
      <Step title="GET /customers/{customer_id}/login_link/">
        Redirect the customer to iwoca to complete the process.
      </Step>
    </Steps>
  </Tab>
  <Tab title="API Plus">
    Surface offers and handle selection in your UI before handing off.

    <Steps>
      <Step title="POST /customers/">
        Create the customer with full details for automated decisions.
      </Step>
      <Step title="POST /customers/{customer_id}/applications/">
        Submit a loan application with the requested amount.
      </Step>
      <Step title="GET /applications/{application_id}/offers/">
        Retrieve offers (may take up to 30s on first call).
      </Step>
      <Step title="GET /customers/{customer_id}/login_link/">
        Customer selects an offer – get a login link, passing their chosen offer as `offer_id`, and redirect them to iwoca.
      </Step>
    </Steps>
  </Tab>
</Tabs>

## Additional endpoints

Beyond the core flow, you can use additional endpoints for document uploads, repayment schedules, funding account details, prequalification, eligibility checks, and more.
Browse the sidebar to explore all endpoints.

---

## Authentication

<CardGroup cols={1}>
  <ApiRefCard title="Check authentication" icon="code" to="authentication-check/get-authentication-check">
    `GET` /authentication_check/
  </ApiRefCard>
</CardGroup>


```bash
curl -X GET https://stage.iwoca-dev.de/api/lending/v2.2/authentication_check/ \
  -H "Authorization: Bearer {your_api_token}" \
  -H "Accept: application/json"
```



```json
{
  "data": {
    "api_version": "2.2.0"
  }
}
```


<Steps>
  <Step title="Get your API token">
    Retrieve your token from the [Partner Developer Portal](https://stage.iwoca-dev.de/login/).
    You'll have separate tokens for sandbox and production.
  </Step>
  <Step title="Set required headers">
    Every request needs `Authorization` and `Accept`.
    POST/PATCH requests also need `Content-Type`.
  </Step>
  <Step title="Verify your connection">
    Call `GET /authentication_check/` to confirm everything is working before building your integration.
  </Step>
</Steps>

## Reference

<AccordionGroup>
  <Accordion title="Base URLs">
    | Environment | URL |
    |---|---|
    | Sandbox | `https://stage.iwoca-dev.de/api/lending/v2.2` |
    | Production | `https://www.iwoca.de/api/lending/v2.2` |
  </Accordion>
  <Accordion title="Required headers">
    | Header | Value | When |
    |---|---|---|
    | `Authorization` | `Bearer {token}` | Every request |
    | `Accept` | `application/json` | Every request |
    | `Content-Type` | `application/json` | POST/PATCH requests |
  </Accordion>
</AccordionGroup>
