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

# Pre-authorise a card

Holds an amount on a card without capturing it. The response includes `pre_authid`; pass it to [Create a charge](https://developers.paychoice.com.au/api-reference/charges/create-a-charge.md) to capture, or to [Reverse a pre-authorisation](https://developers.paychoice.com.au/api-reference/refunds-and-pre-authorisations/reverse-a-pre-authorisation.md) to release the funds. Card details are not required if `card_token` is supplied.

This response has no `link` field.

```json 200 theme={null}
{
  "pre_auth": {
    "id": "6b1e2c3d-4f5a-4b6c-8d7e-9f0a1b2c3d4e",
    "pre_authid": "24007-P-14CULT45",
    "reference": "BOOKING-7781",
    "amount": 50.0,
    "currency": "AUD",
    "status": "Approved",
    "status_code": "0",
    "error": "Transaction Approved",
    "error_code": "00",
    "created": "2026-11-04T03:10:44.207Z",
    "merchant_guid": "315564b9-b863-4016-8c53-02c9d8cc80b7"
  },
  "object_type": "pre_auth",
  "from_item": 0,
  "to_item": 0,
  "total_count": 0
}
```

**pre\_auth.pre\_authid** `string`

The handle for capture or reverse.

**pre\_auth.status\_code** `string`

`"0"` Approved, `"4"` Blocked, `"5"` Dishonoured, `"6"` Errored, `"9"` Processing.


## OpenAPI

````yaml POST /api/v5/Preauth
openapi: 3.0.1
info:
  title: Paychoice
  version: v5
servers: []
security:
  - basic: []
paths:
  /api/v5/Preauth:
    post:
      tags:
        - Preauth
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExportKeyDto'
          text/json:
            schema:
              $ref: '#/components/schemas/ExportKeyDto'
          application/*+json:
            schema:
              $ref: '#/components/schemas/ExportKeyDto'
      responses:
        '200':
          description: OK
components:
  schemas:
    ExportKeyDto:
      required:
        - amount
        - currency
      type: object
      properties:
        card[name]:
          type: string
          nullable: true
        card[number]:
          type: string
          nullable: true
        card[cvv]:
          type: string
          nullable: true
        card[expiry_month]:
          type: integer
          format: int32
        card[expiry_year]:
          type: integer
          format: int32
        currency:
          minLength: 1
          type: string
        reference:
          type: string
          nullable: true
        amount:
          minimum: 0
          type: number
          format: double
        card_token:
          type: string
          nullable: true
        merchant_guid:
          type: string
          nullable: true
      additionalProperties: false
  securitySchemes:
    basic:
      type: http
      description: Basic Authorization header using the Bearer scheme.
      scheme: basic

````

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