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

# Create Dawakhana Standalone Return

> 
### Overview

This API records a **standalone return** to the in-house pharmacy for an IPD admission of your workspace — medicines taken back that are not tied to a dispatched order. For a return against a dispatched order, use [Return Dawakhana Order](/api-reference/doc-tool/ipd-api/dawakhana/return-dawakhana-order) instead.

Each line's `qty × rate` is **deducted from the admission's bill**. The return is saved as a return order (`kind: return`, with no `parentOrderId`) and is listed in List Orders and List Dawakhana Orders. The patient details are taken from the admission's existing orders.

At least one line is required. The user making the request is recorded as the creator.



## OpenAPI

````yaml post /ipd/v1/service/dawakhana/orders/returns
openapi: 3.0.0
info:
  title: Ekacare API & Webhook Documentation
  contact: {}
  version: '1.0'
servers:
  - description: Production
    url: https://api.eka.care
  - description: Stage/Sandbox
    url: https://api.dev.eka.care
security: []
paths:
  /ipd/v1/service/dawakhana/orders/returns:
    post:
      tags:
        - IPD API
      summary: Create Dawakhana Standalone Return
      description: >-

        ### Overview


        This API records a **standalone return** to the in-house pharmacy for an
        IPD admission of your workspace — medicines taken back that are not tied
        to a dispatched order. For a return against a dispatched order, use
        [Return Dawakhana
        Order](/api-reference/doc-tool/ipd-api/dawakhana/return-dawakhana-order)
        instead.


        Each line's `qty × rate` is **deducted from the admission's bill**. The
        return is saved as a return order (`kind: return`, with no
        `parentOrderId`) and is listed in List Orders and List Dawakhana Orders.
        The patient details are taken from the admission's existing orders.


        At least one line is required. The user making the request is recorded
        as the creator.
      operationId: CreateIpdDawakhanaReturn
      parameters:
        - name: auth
          in: header
          required: true
          schema:
            type: string
          example: >-
            eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJiX2lkIjoiMTIzNDU2IiwiY2xpZW50X2lkIjoiNzg5MCIsImV4dHJhX2ZpZWxkIjoiZXh0cmFfZmllbGRfZGF0YSJ9.q9KzBI6f4l3OyM_EkB5Quq0l9EEMFh5JS-fx3F_PHUM
      requestBody:
        description: The return to record.
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
                - admissionId
                - lines
              properties:
                admissionId:
                  type: string
                  description: Id of the IPD admission the return is for.
                ipdId:
                  type: string
                  description: Patient IPD case number.
                reason:
                  type: string
                  description: Reason for the return.
                lines:
                  type: array
                  description: Medicines being returned.
                  items:
                    type: object
                    additionalProperties: false
                    required:
                      - name
                      - qty
                      - rate
                    properties:
                      medicineId:
                        type: string
                        description: Id of the medicine.
                      name:
                        type: string
                        description: Name of the medicine.
                      genericName:
                        type: string
                        description: Generic (molecule) name of the medicine.
                      qty:
                        type: number
                        description: Quantity being returned.
                      rate:
                        type: number
                        description: Price per unit to deduct from the bill.
            example:
              admissionId: a1b2c3d4-5678-90ab-cdef-1234567890ab
              ipdId: IPD-2026-0042
              reason: Unused medicines
              lines:
                - medicineId: med-paracetamol-500
                  name: Paracetamol 500mg Tablet
                  genericName: Paracetamol
                  qty: 4
                  rate: 4.5
      responses:
        '200':
          description: OK — the created return order, in the Get Order detail shape.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    $ref: '#/components/schemas/IpdOrderDetail'
              example:
                success: true
                data:
                  id: 66f1ce18e4b0a1b2c3d4f00c
                  admissionId: a1b2c3d4-5678-90ab-cdef-1234567890ab
                  kind: return
                  orderNumber: DW-K3M8P2QX
                  ipdId: IPD-2026-0042
                  status: RETURNED
                  createdBy: '161467756044204'
                  createdByName: Meena Iyer
                  isCollected: false
                  provider: dawakhana
                  patientName: Ravi Kumar
                  returnReason: Unused medicines
                  returnedTotal: 18
                  createdAt: '2026-10-07T15:00:00.000Z'
                  updatedAt: '2026-10-07T15:00:00.000Z'
                  lineItems:
                    - name: Paracetamol 500mg Tablet
                      genericName: Paracetamol
                      medicineId: med-paracetamol-500
                      orderedQty: 4
                      fulfilledQty: 4
                      rate: 4.5
                      amount: 18
        '400':
          description: >-
            Bad Request. Returns `{ success: false, error }` when the return
            could not be recorded (for example `lines` is empty), or `{ message
            }` when the request body failed schema validation (for example a
            required field is missing or an unknown field was sent; the
            `message` is currently empty).
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/IpdServiceFailure'
                  - $ref: '#/components/schemas/IpdServiceError'
              example:
                success: false
                error: At least one return line is required
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IpdServiceError'
      deprecated: false
components:
  schemas:
    IpdOrderDetail:
      title: IpdOrderDetail
      allOf:
        - $ref: '#/components/schemas/IpdOrder'
        - type: object
          properties:
            lineItems:
              type: array
              description: The ordered (or, for a return order, returned) medicines.
              items:
                $ref: '#/components/schemas/IpdOrderLineItem'
            pharmacyName:
              type: string
              description: Name of the fulfilling pharmacy.
            returns:
              type: array
              description: For an order, the return orders placed against it.
              items:
                $ref: '#/components/schemas/IpdOrder'
    IpdServiceFailure:
      title: IpdServiceFailure
      type: object
      properties:
        success:
          type: boolean
          description: Always `false`.
        error:
          type: string
          description: Human-readable error message.
    IpdServiceError:
      title: IpdServiceError
      type: object
      properties:
        message:
          type: string
          description: Human-readable error message.
    IpdOrder:
      title: IpdOrder
      type: object
      properties:
        id:
          type: string
          description: Order id.
        admissionId:
          type: string
          description: Id of the IPD admission the order is for.
        kind:
          type: string
          enum:
            - order
            - return
          description: '`order`, or `return` for a return order placed against an order.'
        parentOrderId:
          type: string
          description: For a return order, the id of the order it was placed against.
        externalReturnId:
          type: string
          description: For an eVital return order, eVital's return id.
        orderNumber:
          type: string
          description: >-
            Display order number (Dawakhana's own number, or eVital's order
            number).
        ipdId:
          type: string
          description: Patient IPD case number.
        status:
          type: string
          enum:
            - CREATED
            - DISPATCHED
            - CANCELLED
            - RETURNED
            - PARTIALLY_RETURNED
          description: Order status.
        createdBy:
          type: string
          description: Id of the user who placed the order.
        createdByName:
          type: string
          description: Name of the user who placed the order.
        rxId:
          type: string
          description: Id of the prescription the order is based on.
        isCollected:
          type: boolean
          description: '`true` when the patient has collected the medicines.'
        collectedBy:
          type: string
          description: Id of the user who marked the order collected.
        collectedByName:
          type: string
          description: Name of the user who marked the order collected.
        collectedAt:
          type: string
          description: Date-time the order was marked collected, as an ISO-8601 string.
        provider:
          type: string
          enum:
            - evital
            - dawakhana
          description: Pharmacy provider fulfilling the order.
        pharmacyId:
          type: string
          description: Id of the fulfilling pharmacy.
        patientName:
          type: string
          description: Name of the patient.
        mobile:
          type: string
          description: Mobile number of the patient.
        patientId:
          type: string
          description: Id of the patient.
        doctorName:
          type: string
          description: Name of the prescribing doctor.
        deliveryType:
          type: string
          enum:
            - pickup
            - delivery
          description: How the medicines reach the patient.
        rxPdfUrl:
          type: string
          description: URL of the prescription PDF.
        notes:
          type: string
          description: Order-level remarks.
        billedTotal:
          type: number
          description: Amount billed for the order, set when it is dispatched.
        fulfilmentType:
          type: string
          enum:
            - FULL
            - PARTIAL
          description: Whether the dispatched order was fulfilled fully or partially.
        dispatchNote:
          type: string
          description: Note added when the order was dispatched.
        dispatchedBy:
          type: string
          description: Id of the user who dispatched the order.
        dispatchedByName:
          type: string
          description: Name of the user who dispatched the order.
        dispatchedAt:
          type: string
          description: Date-time the order was dispatched, as an ISO-8601 string.
        cancelledBy:
          type: string
          description: Id of the user who cancelled the order.
        cancelledByName:
          type: string
          description: Name of the user who cancelled the order.
        cancelledAt:
          type: string
          description: Date-time the order was cancelled, as an ISO-8601 string.
        cancelReason:
          type: string
          description: Reason the order was cancelled.
        returnedBy:
          type: string
          description: Id of the user who returned the order.
        returnedByName:
          type: string
          description: Name of the user who returned the order.
        returnedAt:
          type: string
          description: Date-time the order was returned, as an ISO-8601 string.
        returnReason:
          type: string
          description: Reason the order was returned.
        returnedTotal:
          type: number
          description: Total amount returned against the order.
        createdAt:
          type: string
          description: Created date-time as an ISO-8601 string.
        updatedAt:
          type: string
          description: Last-updated date-time as an ISO-8601 string.
    IpdOrderLineItem:
      title: IpdOrderLineItem
      type: object
      properties:
        name:
          type: string
          description: Name of the medicine.
        genericName:
          type: string
          description: Generic (molecule) name of the medicine.
        medicineId:
          type: string
          description: Id of the medicine.
        image:
          type: string
          description: Medicine image URL, when the provider has one.
        orderedQty:
          type: number
          description: Quantity ordered.
        fulfilledQty:
          type: number
          description: Quantity actually fulfilled.
        returnedQty:
          type: number
          description: Quantity returned against this line, when tracked.
        rate:
          type: number
          description: Price per unit.
        mrp:
          type: number
          description: Maximum retail price per unit, when known.
        amount:
          type: number
          description: Line total (rate × fulfilled quantity).
        directions:
          type: string
          description: Dosage directions.
        status:
          type: string
          description: >-
            Line status from the provider, when tracked (for example FULFILLED,
            PARTIAL or UNAVAILABLE).

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.