---
title: "Submit a Chargeback Response"
method: POST
path: "/v1/chargebacks/{chargeback_id}/submit"
tags: ["Chargebacks"]
---

# Submit a Chargeback Response

`POST /v1/chargebacks/{chargeback_id}/submit`

## Request

- Base URL: `https://api-sandbox.astra.finance`
- URL: `https://api-sandbox.astra.finance/v1/chargebacks/{chargeback_id}/submit`
- Auth: HTTP basic

> 📘
>
> You can place your application's `client_id` into the `username` field, and your `client_secret` into the `password` form field of the Authentication section of this documentation 👉.

Submit the approved response to a chargeback to the card network. Returns the chargeback as it reads after submission.

Only chargebacks with a `chargeback_case_id` can be submitted. A chargeback whose response is not approved, has already been submitted, or is past its `deadline_date` returns `409`; retrieve the chargeback to see its current state.

## Path parameters

- `chargeback_id` string, required

## Response `200`

Successful response

- Chargeback
  - `chargeback_case_id` string, nullable, required: The unique ID of the chargeback. Use it to retrieve or submit the chargeback. `null` only for legacy chargebacks recorded before chargeback cases were introduced, which are looked up by `source_chargeback_id` instead.
  - `source_chargeback_id` string: The card processor's ID for the chargeback, as sent in chargeback webhooks. Returned on chargebacks listed by `GET /v1/chargebacks/user` and on legacy chargebacks.
  - `client_id` string: Your application's `client_id`. Returned by `GET /v1/chargebacks/{chargeback_id}` and `POST /v1/chargebacks/{chargeback_id}/submit`, except for legacy chargebacks.
  - `user_id` string: The ID of the User the chargeback was filed against. Returned by `GET /v1/chargebacks/{chargeback_id}` and `POST /v1/chargebacks/{chargeback_id}/submit`, except for legacy chargebacks.
  - `disputed_transaction_id` string, nullable, required: The ID of the disputed Transfer. `null` until the Transfer has been matched to the chargeback.
  - `user_first_name` string, nullable: The cardholder's first name. `null` until evidence for the chargeback has been assembled. Returned by `GET /v1/chargebacks/{chargeback_id}` and `POST /v1/chargebacks/{chargeback_id}/submit`, except for legacy chargebacks.
  - `user_last_name` string, nullable: The cardholder's last name. `null` until evidence for the chargeback has been assembled. Returned by `GET /v1/chargebacks/{chargeback_id}` and `POST /v1/chargebacks/{chargeback_id}/submit`, except for legacy chargebacks.
  - `filed_date` string, date, nullable, required: The date the chargeback was filed (YYYY-MM-DD)
  - `deadline_date` string, date, nullable: The date by which a response must be submitted to the card network (YYYY-MM-DD). `null` until a response has been prepared. Returned by `GET /v1/chargebacks/{chargeback_id}` and `POST /v1/chargebacks/{chargeback_id}/submit`, except for legacy chargebacks.
  - `amount` number, float, nullable, required: The disputed amount in dollars (e.g. `25.00` is $25.00)
  - `currency` string, required: The ISO 4217 currency code of `amount`
  - `status` 'not_disputed' | 'open' | 'won' | 'lost', required: The dispute status of the chargeback, the same statuses chargeback webhooks report: * `not_disputed` - The chargeback has not yet been disputed by Astra. * `open` - The chargeback is currently being disputed by Astra. A response has been sent to the card network and its outcome is pending. * `won` - The chargeback dispute has been won by Astra. * `lost` - The chargeback dispute has been lost by Astra.
  - `reason_code` string, nullable, required: The card network's reason code for the chargeback
  - `reason_description` string, nullable: A description of the reason code. Returned by `GET /v1/chargebacks/{chargeback_id}` and `POST /v1/chargebacks/{chargeback_id}/submit`, except for legacy chargebacks.
  - `card_brand` string, nullable: The brand of the card the disputed Transfer was made with. Returned on chargebacks listed by `GET /v1/chargebacks/user` and on legacy chargebacks.
  - `card_last4` string, nullable: The last four digits of the card the disputed Transfer was made with. Returned on chargebacks listed by `GET /v1/chargebacks/user` and on legacy chargebacks.

## Other responses

- `401`: Unauthorized
- `404`: Not Found. The chargeback does not exist, does not belong to your application, or is a legacy chargeback.
- `409`: Conflict. The chargeback's response is not approved, has already been submitted, or is past its deadline.
- `503`: Service Unavailable

## Changes

- **2026-11-03** `1f0b2e859333`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/astra/apis/astra-developer-api/changes/v1/chargebacks/:chargeback_id/submit/post.md)

---

[API](https://skmtc.dev/astra/apis/astra-developer-api.md) - [All operations](https://skmtc.dev/astra/apis/astra-developer-api/llms.txt) - [OpenAPI document](https://skmtc.dev/astra/apis/astra-developer-api/revisions/1f0b2e859333?raw)
