---
title: "Create deposit"
method: POST
path: "/fund/deposit"
tags: ["Fund"]
---

# Create deposit

`POST /fund/deposit`

This endpoint is used to create a new Fiat deposit and enable instant buying power.

## Headers

- `X-SCX-SIGNED` string, required
- `X-SCX-TIMESTAMP` string, required

## Request body

- PostFundDepositRequest
  - `participant_code` string, required — The participant code tied to the deposit
  - `external_account_id` string, required — The external account id tied to the deposit
  - `asset` 'USD', required — The asset code for the deposit, e.g. USD
  - `amount` string, required — The amount of the deposit
  - `description` string, required — Description of the deposit
  - `network` 'ach', required — The network for the deposit, e.g. `ach`.
  - `instant` boolean, required — Whether the deposit should be processed instantly

## Response `201`

Successfully created the fiat deposit. Returns the submitted transaction details including its current status.

- PostFundDepositResponse
  - `request_id` string, uuid — The request id associated with this deposit submission. Echoes the X-Request-Id header when supplied by the client.
  - `transaction_id` string, uuid — zerohash-generated unique identifier for the deposit.
  - `external_account_id` string — The external (bank) account identifier debited for this deposit.
  - `trade_id` string — Associated trade identifier. Empty string when no conversion trade was created (e.g. USD deposits).
  - `description` string — Description of the deposit as supplied on the request.
  - `amount` string — The amount of the deposit.
  - `status` 'posted' | 'cancelled' | 'failed' | 'returned' | 'submitted' | 'pending' | 'settled' | 'rejected' | 'returned_settled' | 'retried' | 'unspecified' — Current status of the deposit.
  - `transfer_type` 'debit' | 'credit' — Fiat transfer direction for this transaction.
  - `network` 'ach' — The network used to process the deposit.
  - `participant_code` string — The participant code credited by this deposit.
  - `account_label` string — The account label credited by this deposit. Always 'general' for fund deposits.
  - `currency` 'USD' — The fiat currency of the deposit.
  - `created_at` string, date-time — ISO-8601 timestamp indicating when the deposit was created.
  - `ach_agreement_acceptance` object — Recorded ACH agreement acceptance for this deposit. Present only when an ACH agreement acceptance was recorded with the submission.
    - `timestamp` number — Unix timestamp in milliseconds indicating when the ACH agreement was accepted.
    - `version` string — Version of the ACH agreement that was accepted.

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/zerohash/apis/zerohash-api.md) · [All operations](https://skmtc.net/zerohash/apis/zerohash-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zerohash/zerohash-api/revisions/8b647d934363/schema)
