iotoms Docs

Mark an invoice as imported into Tally

POST
/api/v1/integrations/tally/invoices/{invoiceId}/mark-imported

Confirms that Tally now holds this invoice's voucher, optionally recording Tally's voucher reference. This is the only way an invoice reaches the pushed state, because exporting a file does not prove Tally imported it.

How to use it

  1. Export the invoice with Export an invoice to Tally XML (or Export a day's invoices) and import the file into Tally.
  2. After checking the voucher exists in Tally, send this request with Tally's voucher reference if you have it.
  3. The invoice's latest export moves to PUSHED. Fails if the invoice was never exported; repeating it on a pushed invoice changes nothing.

Authorization

BearerAuth
headerAuthorizationBearer <JWT>

Path Parameters

invoiceId*string

ID of the sales invoice, from List sales invoices.

Formatuuid

Header Parameters

X-TenantID*string

Your merchant's tenant code — the value typed in the Domain field on the iotoms login screen. See Concepts.

Request Body

application/json
  1. body
tallyVoucherRef?|

Optional voucher number or reference Tally gave the imported voucher, kept for audit.

Response Body

OK

*/*
  1. response
status*string

Outcome of the call: SUCCESS when it worked, ERROR when it failed.

message*string

Short human-readable message describing the outcome, for example "Vendor created". Do not parse it.

data?|

Endpoint-specific payload: null when there is nothing to return (e.g. after removing a unit); for credit note PDFs it holds returnId, creditNoteNumber, templateId, templateVersion, pdfUrl and generatedAt.

Example Request
curl -X POST 'https://beta.iotoms.com/api/v1/integrations/tally/invoices/497f6eca-6276-4993-bfeb-53cbbbba6f08/mark-imported' \  -H 'X-TenantID: your-tenant-code' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "status": "string",  "message": "string",  "data": {}}