GST Ledger Import

Imports ledger records from uploaded files and returns processed records, validation results and file-level errors where applicable.

API Details

Method: POST

Endpoint: /gst-recon/import

Base URL: https://uatapi.wowpe.in/api/api/api-module

Authentication

HeaderTypeDescription
X-Client-IdStringClient ID provided by WowPe.
X-Client-SecretStringClient secret provided by WowPe.

Request Parameters

Content-Type: multipart/form-data

ParameterTypeMandatoryDescription
filesFileYesLedger file(s) to import. Repeat this field for multiple files.

Supported Input Formats

The available ledger reader supports:

  • CSV
  • XLSX
  • Flat JSON row arrays
  • Flat XML rows

The reader uses the first worksheet for Excel files. Confirm deployed format support with the API owner before relying on it in production.

Expected Ledger Columns

Use the following canonical column names or confirm the correct source-column mapping with the API owner.

ColumnDescription
BeneficiaryNameSupplier or beneficiary name.
UniqueRefNoInvoice or reference number.
TaxableValueTaxable amount.
CGSTCentral GST amount.
SGSTState GST amount.
IGSTIntegrated GST amount.
GSTAmountTotal GST amount.
GstinGST identification number.
DocumentDateDocument date.
DocumentTypeDocument type.

BeneficiaryName and UniqueRefNo are required by the available reader.

Sample Request

curl --request POST 'https://uatapi.wowpe.in/api/api/api-module/gst-recon/import' \
  --header 'X-Client-Id: YOUR_CLIENT_ID' \
  --header 'X-Client-Secret: YOUR_CLIENT_SECRET' \
  --form '[email protected]'

Sample Response

{
  "reviewRequired": true,
  "files": [
    {
      "fileName": "ledger.csv",
      "success": true,
      "rows": [
        {
          "sourceFile": "ledger.csv",
          "line": 1,
          "beneficiaryName": "Example Supplier",
          "uniqueRefNo": "0007",
          "gstin": "27ABCDE1234F1Z5",
          "documentDate": "2026-04-01",
          "documentType": "Invoice",
          "taxableValue": 1000,
          "cgst": 90,
          "sgst": 90,
          "igst": 0,
          "gstAmount": 180,
          "reviewed": false
        }
      ]
    }
  ]
}

Note: Illustrative response based on the documented response structure. Actual fields may vary.

Response Parameters

ParameterTypeDescription
reviewRequiredBooleanIndicates whether imported records require review.
filesArrayContains file-processing results.
fileNameStringName of the processed file.
successBooleanIndicates the observed processing result for the file.
rowsArrayContains imported ledger records.
sourceFileStringSource file name, where returned.
lineNumberSource row or line reference, where returned.
beneficiaryNameStringSupplier or beneficiary name.
uniqueRefNoStringInvoice or reference number.
gstinStringGST identification number.
documentDateStringDocument date.
documentTypeStringDocument type.
taxableValueNumber / NullTaxable amount.
cgstNumber / NullCentral GST amount.
sgstNumber / NullState GST amount.
igstNumber / NullIntegrated GST amount.
gstAmountNumber / NullReported or calculated GST amount.
reviewedBooleanReview status, where returned.

Error Handling

The earlier UAT tests included HTTP 422 Unprocessable Entity for input validation failures.

Common issues include:

  • Missing required identity columns.
  • Duplicate mapped column headers.
  • Formula cells that have not been converted to reviewed values.
  • Invalid numeric formats or unsupported amount precision.

Inspect the HTTP status and file-level success, errorCode and message fields where returned.

Important Notes

  • Preserve invoice references and GSTIN values as text to avoid losing leading zeros.
  • Keep blank amounts distinct from numeric zero.
  • Do not assume that a successful file response means every row or worksheet was imported.
  • The available reader's mapping options have not been confirmed as deployed API behaviour.
  • Importing a ledger does not automatically make its data suitable for reconciliation if required tax components remain unknown.

What's Next

Review the imported rows, correct mapping errors and confirm that the ledger data is complete before submitting it to the reconciliation API.