Billing
Receive Approved Freight Invoice
11 min
receive freight invoice details from transportone once they’re approved in the system these invoices are used to trigger payments in your erp system and maintain finance reconciliation overview once loads are delivered and the transporter submits a freight invoice, transportone validates and approves it the approved invoice is then pushed to your erp, containing tax, contract, and expense details for financial processing this api helps ensure accurate and timely payment based on real time operations data each invoice may cover multiple loads when to use this after the transporter raises and the shipper approves the freight invoice in tms to receive invoice data into your erp for payment processing for syncing contract wise freight and tax details data flow direction this api helps send data from transportone (tms) to your erp when a freight invoice is approved once the shipper approves the transporter’s freight invoice in transportone, the system immediately pushes this invoice to your erp it contains everything your finance team needs — billed amount, taxes, contracts, and supporting documents — so that your system can process the payment without manual handovers prerequisites make sure your erp system can accept post requests at a publicly accessible endpoint parse structured json payloads as shown below handle idempotency using x coreos request id endpoint the callback url must be provided by your erp team during onboarding authentication & headers transportone will send the request to your provided endpoint authentication is optional, but headers for request tracking are required header required description x coreos request id yes unique uuid for each request (idempotency) x coreos tid yes your assigned tenant id x coreos access yes access key assigned during onboarding x coreos userinfo optional (optional) user token for auditing x tms callback secret optional (optional) secret key for webhook verification note note headers marked with an asterisk are mandatory for reliable tracking and processing request payload { "invoicenumber" "inv2025040403", "transporterid" "sin295", "irn" "", "billingaddress" { "billto" { "gstnumber" "09aaach7409r1zz", "address" "301 chaitanya hindustan copper limited 2nd floor 2nd floor sector 106 noida plot no 5" }, "billby" { "gstnumber" "06aapcs9575e1zr", "address" " gurgaon patheria 1, khasra no 57,23 min 631/3, 8, 9 ,10/1 gurgaon village patheri" } }, "supportingdocs" \[], "pretaxamount" 800 0, "pretaxsystemamount" 200 0, "duedate" 1753381800000, "approvalstate" "l2", "transporterremark" "", "transporterinvoicedocs" \[ "https //logistics example com/docs/shipment 7890 manifest pdf" ], "systeminvoicepdf" "https //yourdomain com/downloads/invoice 12345 pdf", "paidamount" 0 0, "submittedat" 1743758164499, "submittedby" "saurabh singh", "loadcount" 1, "differenceamount" 672 0, "invoicedate" 1743705000000, "taxamount" 96 0, "taxsystemamount" 24 0, "totalamount" 896 0, "totalsystemamount" 224 0, "transportertaxamountbreakup" { "igst" { "rate" 12, "amount" 96 } }, "systemtaxamountbreakup" { "igst" { "rate" 12, "amount" 24 } }, "transportername" "singh transporters", "indents" \[ { "indentid" "rn2fh5", "contractid" "rvvhwg 1", "origin" "midc", "destination" "j101", "stops" \[], "orderids" \[], "invoiceids" \[], "lrs" \[ "lr02", "lr01" ], "routenamedetails" { "originfacility" "mumbai midc", "stops" \[], "destinationfacility" "jaunpur enterprise" }, "expenses" 800 0, "expensesdiff" 600 0, "deductions" 0, "deductionsdiff" 0, "charges" \[ { "chargehead" "otherexpense", "chargetype" "expense", "systemamount" 0 0, "amount" 600 0, "transporterremarks" "extra labour has to be used", "supportingdocs" \[] } ] } ] } payload parametes below are the required parameters that must be included when submitting an approved freight invoice to transportone field name type description sample value invoicenumber string unique invoice number inv2025040403 transporterid string unique transporter id sin295 billingaddress billto gstnumber string gst number of the bill recipient 09aaach7409r1zz billingaddress billto address string billing address of the recipient 301 chaitanya billingaddress billby gstnumber string gst number of the issuer (transporter) 06aapcs9575e1zr billingaddress billby address string address of the issuing party gurgaon patheria 1 pretaxamount number declared pre tax amount (by transporter) 800 duedate integer (epoch) invoice due date 1753381800000 approvalstate string approval level of the invoice l2 invoicedate integer (epoch) date of invoice issue 1743705000000 taxamount number declared tax amount 96 totalamount number total declared amount including tax 896 transportername string name of the transporter singh transporters indents indentid string indent identifier rn2fh5 indents origin string origin of the indent midc indents destination string destination of the indent j101 indents lrs array of strings lr numbers associated with the indent \["lr02", "lr01 for the full list of optional fields, refer to the complete field reference sample request { "invoicenumber" "inv2025040403", "transporterid" "sin295", "billingaddress" { "billto" { "gstnumber" "09aaach7409r1zz", "address" "301 chaitanya hindustan copper limited, sector 106 noida" }, "billby" { "gstnumber" "06aapcs9575e1zr", "address" "gurgaon patheria 1, khasra no 57, gurgaon" } }, "pretaxamount" 800, "duedate" 1753381800000, "invoicedate" 1743705000000, "totalamount" 896, "transportername" "singh transporters", "indents" \[ { "indentid" "rn2fh5", "origin" "midc", "destination" "j101" } ] } sample response include the expected success response { "success" true, "message" "freight invoice recorded" } what’s next? once the invoice is recorded, your erp can push the payment status using the freight invoice payment status api \[→ update payment status] \[← back to billing overview]
