PUT /api/v202510/bill/reverse

Creates reversal bills for the given bill ids considering multiple open batch options.

ReverseBillsWithMultipleOpenBatchOptionsV202510 Permissions: BillsAndBatches (Edit)

Request Headers

Header Value Required Description
ECI-ApiKey string Yes Your API key. See Authentication.
Content-Type application/json Yes All requests must specify JSON content type, including the request body.

Request Body

BillReversalRequestV202510
Property Description Type
batchSettings ReversalBatchSettingsV202510
ReversalBatchSettingsV202510 properties
Property Description Type
batchMode Needs to be one of - “new self-contained batch”, “use existing batch”, or “new batch”
If “new self-contained batch”, make a new batch and add bills to it and close it. “CloseExistingBatch” property of NewBatch object is ignored in this case since a self-contained batch should not affect existing batches. If “use existing batch”, we will use an existing open batch and leave it open. Used with “ExistingOpenBatchId” property. If “new batch”, open a new batch. If there are other open batches for this user, and “CloseExistingBatch” is true, then close those batches. One of ’new self-contained batch’, ‘use existing batch’, ’new batch’ Required (defined)
string
existingOpenBatchId Optional - ID of an existing open batch to use. Only applies when BatchMode is “use existing batch”. If not provided, the current user must have exactly one open batch, otherwise an error occurs. Must reference an open batch belonging to the current user, or if the user has “Bills and Batch: Manage” permission, any user’s open batch. Required (defined) integer (int32)
newBatch BatchCreate
BatchCreate properties
Property Description Type
accountPeriodNumber Account period number for batch - will get applied as default to any bill added to this batch integer (int32)
accountPeriodYear Accountperiod year for batch - will get applied as default to any bill added to this batch Must be between 1900 and 2099 integer (int32)
batchCode The batch code Required Must be between 0 and 255 characters string
closeExistingBatch If user has other batches open, should they be closed? boolean
controlCode Control code for batch - will get applied as default to any bill added to this batch Must be between 0 and 255 characters string
dueDate Due date for batch - will get applied as default to any bill added to this batch string (date-time)
invoiceNumber Invoice number for batch - will get applied as default to any bill added to this batch Must be between 0 and 255 characters string
nextReading Next reading date for batch - will get applied as default to any bill added to this batch string (date-time)
note Note/comment for batch Must be between 0 and 255 characters string
statementDate Statement date for batch - will get applied as default to any bill added to this batch string (date-time)
billIds Bill ids to reverse Required Cannot be Empty integer[]
Example Request Body application/json
{  "batchSettings": {    "batchMode": "string",    "existingOpenBatchId": 1,    "newBatch": {      "accountPeriodNumber": 1,      "accountPeriodYear": 1,      "batchCode": "string",      "closeExistingBatch": false,      "controlCode": "string",      "dueDate": "2026-03-30",      "invoiceNumber": "string",      "nextReading": "2026-03-30",      "note": "string",      "statementDate": "2026-03-30"
    }
  },  "billIds": [
    1
  ]
}

Responses

200 OK The request succeeded and the response body contains the requested data.

Response Body Parameters

UpdateResult
Property Description Type
selected Required (defined) integer (int32)
updated Required (defined) integer (int32)
Example Response application/json
{  "selected": 1,  "updated": 1
}