---
title: "Reconcile an e-compliance request"
method: POST
path: "/v1/e-compliance/reconcile"
tags: ["E-Invoicing", "E-Reporting"]
---

# Reconcile an e-compliance request

`POST /v1/e-compliance/reconcile`

Reconciles an e-compliance request for the supplied source object.

**Note**: In the broader e-compliance workflow, this operation can work alongside the  "Create an e-invoice lifecycle status update" operation that is shared across e-reporting and e-invoice business lifecycle processing.

## Headers

- `Idempotency-Key` string
- `Accept-Encoding` string
- `Content-Encoding` string
- `Zuora-Track-Id` string
- `Zuora-Entity-Ids` string
- `Zuora-Org-Ids` string
- `Zuora-Version` string

## Request body

- EComplianceReconcileRequest
  - `complianceType` 'EReporting' | 'EInvoiceBusinessLifecycle', required — The type of e-compliance request. **Note:** Use `EInvoiceBusinessLifecycle` when reconciling e-invoice business lifecycle status updates.
  - `sourceObjectKey` string, required — The business identifier of the source object to reconcile. Use the document number for invoices, credit memos, and debit memos. **Note:** Use `PaymentApplicationId` for payments, `RefundApplicationId` for refunds, and `CreditMemoApplicationId` for credit memo applications.
  - `sourceObjectType` 'INVOICE' | 'CREDIT_MEMO' | 'DEBIT_MEMO' | 'PAYMENT' | 'REFUND' | 'CREDIT_MEMO_APPLICATION', required — The type of source object for the e-compliance operation.
  - `transactionId` string — Optional external transaction ID to use for this reconcile request. **Note:** If you do not specify this field, Zuora uses the `transactionId` from the current request context.

## Response `200`

OK

- EComplianceActionResponse
  - `requestId` string, uuid — Unique identifier of the request.
  - `success` boolean — Indicates whether the call succeeded.

## Other responses

- `500` — Internal Server Error
- `4XX` — Request Errors

## Changes

- **2026-08-15** `702f3caf3985` — 1 breaking, 4 info
  - the response's body type/format changed from ``/`` to `object`/`` for status `200`
  - api tag `E-Reporting` added
  - removed `subschema #1` from the response body `allOf` list for the response status `200`
  - added the optional property `requestId` to the response with the `200` status
  - …1 more

[Change history](https://skmtc.dev/zuora/apis/api-reference/changes/v1/e-compliance/reconcile/post.md)

---

[API](https://skmtc.dev/zuora/apis/api-reference.md) · [All operations](https://skmtc.dev/zuora/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zuora/api-reference/revisions/d11e237f3e54/schema)
