Vyapar Invoice GST Billing App icon

Vyapar GST billing data API

Invoicing, Billing, Inventory, GST, Accounting app · Business

Vyapar is the GST and VAT billing app that Indian and UAE small businesses use to raise tax invoices, verify trading parties and collect payments. It sits at the centre of the merchant's compliance workflow: GSTIN verification, IRN e-invoicing, e-way bills for dispatch, UAE FTA e-invoicing and UPI or card collection all run through one signed-in company session.

As a data source it exposes verified party identity (legalName, panNo, gstInType), statutory tax documents (irn, ackNo, ewbNo) and receivables state (partyCurrentBalance, paymentLink). ERP syncs, working-capital lenders and tax-compliance tools build on these fields to onboard verified businesses, track outstanding balances and archive statutory invoices.

Vyapar is a GST and VAT billing app from an Indian invoicing and accounting vendor, used by small and medium businesses across India and the UAE to raise invoices, manage inventory and collect payments. Behind its invoice, party and payment screens sits a rich dataset: verified GSTIN party records, IRN e-invoices and e-way bills, settlement bank accounts and payment links, party ledgers and collection reminders. That data serves ERP, lending and compliance integrations that need verified business identities, receivables and tax documents straight from the billing workflow.

Screenshots

  • Vyapar Invoice GST Billing App screenshot 1
  • Vyapar Invoice GST Billing App screenshot 2
  • Vyapar Invoice GST Billing App screenshot 3
  • Vyapar Invoice GST Billing App screenshot 4
  • Vyapar Invoice GST Billing App screenshot 5
  • Vyapar Invoice GST Billing App screenshot 6
  • Vyapar Invoice GST Billing App screenshot 7

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • Sign in and mint session token

    POST /v1/account/session opendata

    Opens the signed-in company session used by GSTIN lookup, e-invoice, e-way, payment-account and party-ledger calls. The nested data.authToken is the Bearer value on every later request.

    Auth: Unauthenticated bootstrap. Phone (or email) plus password; the response data.authToken is sent as Authorization: Bearer on later calls.

    • authToken
    • email
    • phone
    • userId
    • pointsEarned
    • message
    • statusCode
    POST /v1/account/session HTTP/1.1
    Content-Type: application/json
    
    {
      "phone": "9876543210",
      "password": "••••••••",
      "deviceId": "a1b2c3d4e5f6",
      "platformId": "android"
    }
    {
      "data": {
        "authToken": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.example",
        "email": "[email protected]",
        "phone": "9876543210",
        "userId": "usr_7c11ab",
        "pointsEarned": "120"
      },
      "message": "OK",
      "statusCode": 200
    }
    • Illustrative of the app's phone-and-password sign-in flow
    • Session fields mirror what the home and profile screens show after login
  • Look up GSTIN legal name

    GET /v1/tax-ids/verify osint

    Resolves a GSTIN to legalName, tradeName, PAN and taxpayer type so the party and firm screens can stamp a verified GSTIN on invoices.

    Auth: Authorization: Bearer <authToken>. Query gstin is the 15-character GSTIN typed on the party or firm form.

    • gstInType
    • isValidGstIn
    • legalName
    • panNo
    • tradeName
    • businessType
    • statusCode
    GET /v1/tax-ids/verify?gstin=27AAPFU0939F1ZV HTTP/1.1
    Authorization: Bearer <authToken>
    {
      "data": {
        "gstInType": "Regular",
        "isValidGstIn": true,
        "legalName": "MILL STORE TRADERS PRIVATE LIMITED",
        "panNo": "AAPFU0939F",
        "tradeName": "Mill Store",
        "businessType": "Private Limited Company"
      },
      "message": "OK",
      "errors": [],
      "statusCode": 200
    }
    • Illustrative of the GSTIN verification step on the party onboarding form
    • Response fields match the verified-party card shown on invoice forms
  • Send e-invoice portal login OTP

    POST /v1/tax-portal/otp/request openfinance

    Asks the GST e-invoice portal to SMS or email an OTP for the merchant GSTIN so the portal session can be verified and opened for IRN work.

    Auth: Authorization: Bearer <authToken>. Body gstin is the merchant GSTIN on the e-invoice login screen.

    • gstin
    • contact
    • contactType
    POST /v1/tax-portal/otp/request HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "gstin": "27AAPFU0939F1ZV"
    }
    {
      "data": {
        "contact": "98******10",
        "contactType": "MOBILE"
      },
      "statusCode": 200
    }
    • Illustrative of the e-invoice settings login flow
    • Response masks the contact the OTP was delivered to
  • Open e-invoice portal session

    POST /v1/tax-portal/session/open openfinance

    Authenticates the merchant's e-invoice portal credentials so later invoice-registration calls can mint an IRN against the government invoice registry.

    Auth: Authorization: Bearer <authToken>. Body carries the e-invoice portal username and password stored from the login screen.

    • username
    • password
    • gstin
    • sessionActive
    POST /v1/tax-portal/session/open HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "username": "millstore_einv",
      "password": "••••••••",
      "gstin": "27AAPFU0939F1ZV"
    }
    {
      "data": {
        "gstin": "27AAPFU0939F1ZV",
        "username": "millstore_einv",
        "sessionActive": true
      },
      "message": "OK",
      "statusCode": 200
    }
    • Illustrative of the portal credential form in e-invoice settings
    • Returns a session flag the invoice screens check before registering documents
  • Generate GST e-invoice IRN

    POST /v1/tax-portal/invoices/register openfinance

    Submits a sale invoice to the e-invoice portal and returns the IRN, acknowledgement number/date and signed QR that the tax-invoice preview prints.

    Auth: Authorization: Bearer <authToken> plus an active e-invoice portal session from the session-open call.

    • irn
    • ackNo
    • ackDt
    • txn_einvoice_qr
    • gstin
    • txnType
    • uuid
    POST /v1/tax-portal/invoices/register HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "gstin": "27AAPFU0939F1ZV",
      "txnType": "SALE",
      "uuid": "txn-8f2a11",
      "buyerGstin": "29AABCU9603R1ZX",
      "irn": null
    }
    {
      "data": {
        "irn": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2",
        "ackNo": "112415678901234",
        "ackDt": "2026-09-28 11:04:00",
        "txn_einvoice_qr": "eyJhbGciOiJSUzI1NiJ9.signed-qr"
      },
      "statusCode": 200
    }
    • Illustrative of the e-invoice generation sheet on a sale
    • IRN and acknowledgement fields appear on the printable tax invoice
  • Validate GSTIN for e-way bill

    GET /v1/transport/validate/{taxId} osint

    Confirms a GSTIN is live on the e-way portal before a waybill is minted, filling the consignor and consignee legal names on the transport form.

    Auth: Authorization: Bearer <authToken>. Path taxId is the consignor or consignee GSTIN on the transport form.

    • gstin
    • isValidGstIn
    • legalName
    • legalNameOfConsignor
    • gstinType
    GET /v1/transport/validate/27AAPFU0939F1ZV HTTP/1.1
    Authorization: Bearer <authToken>
    {
      "data": {
        "gstin": "27AAPFU0939F1ZV",
        "isValidGstIn": true,
        "legalName": "MILL STORE TRADERS PRIVATE LIMITED",
        "legalNameOfConsignor": "MILL STORE TRADERS PRIVATE LIMITED",
        "gstinType": "Regular"
      },
      "statusCode": 200
    }
    • Illustrative of the GSTIN check inside the e-way bill form
    • Legal-name fields prefill the consignor and consignee blocks
  • Generate e-way bill number

    POST /v1/transport/waybills openfinance

    Creates an e-way bill for a taxable movement and returns ewbNo for the preview, cancel and print flow.

    Auth: Authorization: Bearer <authToken> plus e-way portal credentials from the portal login flow.

    • ewbNo
    • gstinOfConsignor
    • gstinOfConsignee
    • legalNameOfConsignor
    • legalNameOfConsignee
    • txnType
    POST /v1/transport/waybills HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "gstinOfConsignor": "27AAPFU0939F1ZV",
      "gstinOfConsignee": "29AABCU9603R1ZX",
      "legalNameOfConsignor": "MILL STORE TRADERS PRIVATE LIMITED",
      "legalNameOfConsignee": "SOUTH DISTRIBUTORS LLP",
      "txnType": "SALE"
    }
    {
      "data": {
        "ewbNo": "351234567890",
        "gstinOfConsignor": "27AAPFU0939F1ZV",
        "gstinOfConsignee": "29AABCU9603R1ZX"
      },
      "statusCode": 200
    }
    • Illustrative of the dispatch step on a sale invoice
    • The returned waybill number is stamped on the transport copy
  • Sign in to UAE FTA e-invoice

    POST /v1/ae/tax/session openfinance

    Completes the UAE e-invoice OTP login (request then verify) and returns the session token plus EmaraTax profile (TIN, orgId, partyName) used to download FTA invoices.

    Auth: Authorization: Bearer <authToken>. Body carries the service-provider code, wizard step, TIN and OTP from the UAE e-invoice login screen.

    • asp
    • step
    • tin
    • otp
    • nextStep
    • email
    • maskedEmail
    • token
    • orgId
    • emarataxEmail
    • profileId
    • companyId
    • partyName
    • status
    POST /v1/ae/tax/session HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "asp": "MARMIN",
      "step": 4,
      "tin": "100123456700003",
      "otp": "482913"
    }
    {
      "nextStep": 4,
      "data": {
        "nextStep": 4,
        "email": "[email protected]",
        "maskedEmail": "acc****@millstore.ae",
        "token": "eyJhbGciOiJSUzI1NiJ9.uae-einvoice",
        "profile": {
          "tin": "100123456700003",
          "orgId": "org_ae_91",
          "emarataxEmail": "[email protected]",
          "profileId": "prf_44",
          "companyId": "co_91",
          "partyName": "Mill Store Traders FZ-LLC",
          "status": "ACTIVE"
        }
      }
    }
    • Illustrative of the UAE e-invoice login wizard
    • Profile fields mirror the EmaraTax account card shown after sign-in
  • Download UAE e-invoice PDF

    GET /v1/ae/invoices/{docType}/{docId}/file openfinance

    Fetches the FTA e-invoice PDF for a UAE sale after login, substituting document type and id into the path.

    Auth: Authorization: Bearer <authToken> plus the UAE session token from the sign-in call sent as a dedicated header. Accept: application/pdf.

    • txnType
    • uuid
    • filename
    • contentType
    GET /v1/ae/invoices/1/txn-8f2a11/file HTTP/1.1
    Authorization: Bearer <authToken>
    X-Uae-Session: <uae-token>
    Accept: application/pdf
    {
      "contentType": "application/pdf",
      "txnType": 1,
      "uuid": "txn-8f2a11",
      "filename": "uae-einvoice-txn-8f2a11.pdf"
    }
    • Illustrative of the download action on a UAE sale
    • Returns the PDF the app archives next to the invoice row
  • Create payment-gateway KYC account

    POST /v1/payouts/accounts openbanking

    Registers the merchant settlement account (bank + GSTIN + PAN) that later payment links debit into. Returns the account id and the creation/view tokens checkout uses.

    Auth: Authorization: Bearer <authToken>. Body is the KYC packet from the verification screen (PAN, GSTIN, bank, IFSC).

    • accountHolderName
    • accountNumber
    • ifscCode
    • gst
    • ownerPan
    • ownerPanHolderName
    • businessPan
    • legalBusinessName
    • activationStatus
    • id
    • paymentCreationToken
    • paymentViewToken
    POST /v1/payouts/accounts HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "accountHolderName": "Ravi Kumar",
      "accountNumber": "50100012345678",
      "bankName": "HDFC Bank",
      "ifscCode": "HDFC0001234",
      "gst": "27AAPFU0939F1ZV",
      "ownerPan": "AAPFU0939F",
      "ownerPanHolderName": "RAVI KUMAR",
      "businessPan": "AAPFU0939F",
      "legalBusinessName": "MILL STORE TRADERS PRIVATE LIMITED",
      "businessType": "Private Limited",
      "deviceId": "a1b2c3d4e5f6",
      "firebaseToken": "fcm-token",
      "clevertapId": "ct-99aa"
    }
    {
      "data": {
        "accountDetails": {
          "id": "acc_9f21",
          "accountHolderName": "Ravi Kumar",
          "accountNumber": "50100012345678",
          "ifscCode": "HDFC0001234",
          "gst": "27AAPFU0939F1ZV",
          "activationStatus": "PENDING_KYC",
          "legalBusinessName": "MILL STORE TRADERS PRIVATE LIMITED",
          "ownerPan": "AAPFU0939F",
          "businessPan": "AAPFU0939F",
          "cin": null,
          "certKey": null
        },
        "paymentCreationToken": "pct_7e11",
        "paymentViewToken": "pvt_3c90"
      },
      "message": "OK",
      "errors": [],
      "statusCode": 200
    }
    • Illustrative of the payments KYC wizard
    • Account fields match the verification status card shown after submission
  • Read payment account bank details

    GET /v1/payouts/accounts/settlement openbanking

    Returns the linked settlement bank (account number, IFSC, holder name) shown on the bank-account screen and stamped on invoices as collect-payment details.

    Auth: Authorization: Bearer <authToken>.

    • id
    • accountHolderName
    • accountNumber
    • ifscCode
    • bankName
    • activationStatus
    GET /v1/payouts/accounts/settlement HTTP/1.1
    Authorization: Bearer <authToken>
    {
      "data": {
        "accountDetails": {
          "id": "acc_9f21",
          "accountHolderName": "Ravi Kumar",
          "accountNumber": "50100012345678",
          "ifscCode": "HDFC0001234",
          "bankName": "HDFC Bank",
          "activationStatus": "ACTIVE"
        }
      },
      "statusCode": 200
    }
    • Illustrative of the linked bank account screen
    • Fields match the collect-payment block printed on invoices
  • Create invoice payment link

    POST /v1/paylinks openbanking

    Mints a collect link and UPI QR for a sale invoice; the app stores the returned link on the local invoice row for sharing.

    Auth: Authorization: Bearer <authToken>.

    • paymentLink
    • txn_paymentgateway_link
    • txn_paymentgateway_qr
    • txn_paymentgateway_payment_txn_id
    • amount
    • partyName
    • customerPhone
    • accountId
    POST /v1/paylinks HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "accountId": "acc_9f21",
      "partyName": "South Distributors LLP",
      "amount": "18500.00",
      "partyCurrentBalance": "18500.00",
      "customerPhone": "9887766554",
      "customerEmail": "[email protected]",
      "uuid": "txn-8f2a11"
    }
    {
      "data": {
        "paymentLink": "https://example.invalid/i/invoice-8f2a11",
        "txn_paymentgateway_link": "https://example.invalid/i/invoice-8f2a11",
        "txn_paymentgateway_qr": "upi://pay?pa=millstore@hdfcbank&am=18500.00",
        "txn_paymentgateway_payment_txn_id": "pay_N7kQ1",
        "amount": "18500.00"
      },
      "statusCode": 200
    }
    • Illustrative of the share-and-collect sheet on an invoice
    • Response carries the link and UPI QR the customer pays through
  • Invite party to share details

    POST /v1/contacts/invites opendata

    Creates a share-link invite so a customer can fill GSTIN, phone and billing/shipping addresses; the response inviteId is what the refresh call later updates.

    Auth: Authorization: Bearer <authToken>.

    • inviteId
    • uuid
    • partyId
    • partyName
    • phoneNumber
    • emailId
    • gstin
    • gstinType
    • companyDBName
    • clientUserId
    • billingAddress
    • shippingAddress
    POST /v1/contacts/invites HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "uuid": "inv-aa12",
      "partyId": "42",
      "partyName": "South Distributors LLP",
      "phoneNumber": "9887766554",
      "emailId": "[email protected]",
      "gstin": "29AABCU9603R1ZX",
      "gstinType": "Regular",
      "companyName": "Mill Store Traders",
      "companyAddress": "Andheri East, Mumbai",
      "billingAddress": "Andheri East, Mumbai",
      "shippingAddress": "Whitefield, Bengaluru",
      "companyDBName": "millstore_main",
      "cleverTapId": "ct-99aa"
    }
    {
      "inviteId": "inv_44c0",
      "partyName": "South Distributors LLP",
      "uuid": "inv-aa12",
      "partyId": "42",
      "companyDBName": "millstore_main",
      "clientUserId": "cus_1ab",
      "gstin": "29AABCU9603R1ZX",
      "gstinType": "Regular",
      "phoneNumber": "9887766554",
      "emailId": "[email protected]"
    }
    • Illustrative of the ask-party-details share sheet
    • Response invite id is reused when the link is refreshed
  • Create party-ledger share link

    POST /v1/statements/share opendata

    Issues a hosted party-statement URL the merchant shares from the statement report so the customer can view outstanding balance without opening the app.

    Auth: Authorization: Bearer <authToken>.

    • currentCompanyId
    • initialCompanyId
    • partyId
    • firmId
    • deviceId
    • cleverTapId
    • firebaseToken
    • platformId
    • shareUrl
    POST /v1/statements/share HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "currentCompanyId": "co_91",
      "initialCompanyId": "co_91",
      "partyId": "42",
      "firmId": "firm_1",
      "deviceId": "a1b2c3d4e5f6",
      "cleverTapId": "ct-99aa",
      "firebaseToken": "fcm-token",
      "platformId": "android"
    }
    {
      "data": {
        "partyId": "42",
        "shareUrl": "https://example.invalid/statement",
        "currentCompanyId": "co_91",
        "firmId": "firm_1"
      },
      "statusCode": 200
    }
    • Illustrative of the share action on the party statement report
    • Response URL opens a read-only statement for the customer
  • Send party payment reminder SMS

    POST /v1/messaging/reminders opendata

    Sends a collection SMS with the party's outstanding amount from the reminder screen; the response status is success or failed.

    Auth: Authorization: Bearer <authToken>.

    • recipient
    • firmName
    • firmPhone
    • smsId
    • partyName
    • amount
    • partyCurrentBalance
    • status
    • errorCode
    • errorSmsIds
    POST /v1/messaging/reminders HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "footer": "Sent via Vyapar",
      "deviceType": 1,
      "deviceId": "a1b2c3d4e5f6",
      "isLicensedUser": true,
      "recipient": "9887766554",
      "firmName": "Mill Store Traders",
      "firmEmail": "[email protected]",
      "firmPhone": "9876543210",
      "smsId": "sms-77",
      "reminderDetails": {
        "partyName": "South Distributors LLP",
        "amount": "18500.00",
        "partyCurrentBalance": "18500.00",
        "customerPhone": "9887766554",
        "customerEmail": "[email protected]"
      }
    }
    {
      "status": "success",
      "errorCode": 0,
      "errorSmsIds": []
    }
    • Illustrative of the payment reminder composer
    • Response reports per-message success and failures
  • Read multi-currency exchange rates

    POST /v1/fx/quotes opendata

    Returns conversion rates keyed by currency code plus a last-updated timestamp so UAE/INR invoices can stamp a live FX rate on multi-currency sales.

    Auth: Authorization: Bearer <authToken>.

    • conversionRates
    • lastUpdatedAt
    • baseCurrency
    POST /v1/fx/quotes HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "baseCurrency": "INR",
      "quoteCurrencies": ["AED", "USD"]
    }
    {
      "conversionRates": {
        "AED": 0.044,
        "USD": 0.012
      },
      "lastUpdatedAt": "2026-09-28T06:00:00Z"
    }
    • Illustrative of the multi-currency toggle in invoice settings
    • Rates match the conversion line shown on foreign-currency invoices
  • List synced companies

    GET /v1/orgs/books opendata

    Returns the merchant's cloud-synced company books so the sync screen can pick which firm to download, share users against, or upgrade.

    Auth: Authorization: Bearer <authToken> from the session-token call. Used by the sync screen after cloud sync is enabled.

    • company_global_id
    • company_name
    • company_db_name
    • sync_company_global_id
    • initial_company_id
    • current_company_id
    GET /v1/orgs/books HTTP/1.1
    Authorization: Bearer <authToken>
    {
      "companies": [
        {
          "company_global_id": "cgid_91aa",
          "company_name": "Mill Store Traders",
          "company_db_name": "millstore_main",
          "sync_company_global_id": "cgid_91aa",
          "initial_company_id": "co_91",
          "current_company_id": "co_91"
        }
      ]
    }
    • Illustrative of the sync-and-share company picker
    • Company ids mirror the firm list shown in settings
  • Notify sale invoice over WhatsApp

    POST /v1/messaging/invoice-notify opendata

    Pushes a WhatsApp sale notification with invoice number, total and outstanding balance to the party's mobile number from the invoice share sheet.

    Auth: Authorization: Bearer <authToken>. Body is the sale envelope the invoice-share sheet builds.

    • date
    • invoiceNo
    • companyName
    • partyName
    • partyMobileNum
    • countryCode
    • totalAmount
    • balance
    • totalBalance
    • daysDue
    • saleType
    • paymentMode
    POST /v1/messaging/invoice-notify HTTP/1.1
    Authorization: Bearer <authToken>
    Content-Type: application/json
    
    {
      "date": "28-09-2026",
      "invoiceNo": "INV-1042",
      "companyName": "Mill Store Traders",
      "partyName": "South Distributors LLP",
      "partyMobileNum": "9887766554",
      "countryCode": "IN",
      "totalAmount": 18500.0,
      "balance": 18500.0,
      "totalBalance": 18500.0,
      "daysDue": 7,
      "saleType": 1,
      "paymentMode": 0,
      "isLicencedUser": true
    }
    {
      "status": "success",
      "invoiceNo": "INV-1042",
      "partyMobileNum": "9887766554"
    }
    • Illustrative of the WhatsApp option on the invoice share sheet
    • Body fields match the notification preview the merchant sees

Data categories

  • GSTIN registry
  • e-invoices
  • e-way bills
  • UAE FTA e-invoices
  • payment accounts
  • payment links
  • party ledgers
  • collection reminders
  • FX rates
  • synced companies
  • WhatsApp invoices

Where teams use this data

  • GSTIN-verified party onboarding

    An ERP bot calls GET /v1/tax-ids/verify with a typed GSTIN, stores legalName, panNo and gstInType on the party, then POSTs /v1/contacts/invites so the customer can confirm billingAddress and shippingAddress before the first tax invoice.

  • IRN and e-way after a sale

    When a sale crosses the e-invoice threshold the client requests the portal OTP at /v1/tax-portal/otp/request, opens a portal session at /v1/tax-portal/session/open, registers the invoice at /v1/tax-portal/invoices/register (irn, ackNo, ackDt), then mints ewbNo at /v1/transport/waybills for the dispatch copy.

  • Collect outstanding on a sale

    After KYC at POST /v1/payouts/accounts the invoice flow creates a paymentLink via /v1/paylinks and optionally fires /v1/messaging/reminders with partyCurrentBalance so the customer can pay UPI or card without a second call.

  • UAE FTA e-invoice download

    A Dubai firm signs in at POST /v1/ae/tax/session with tin and otp, stores the returned token and profile.tin, then GETs /v1/ae/invoices/{docType}/{docId}/file with the session-token header to archive the FTA PDF next to the INR IRN.

Frequently asked questions

How does Vyapar authenticate API calls?

A session call such as POST /v1/account/session returns data.authToken, email, phone and userId. Later calls send Authorization: Bearer with that token. E-invoice writes need a second portal login at /v1/tax-portal/session/open; UAE FTA downloads add the session-token header returned by /v1/ae/tax/session.

Which calls return GSTIN and e-invoice fields?

GET /v1/tax-ids/verify resolves gstInType, isValidGstIn, legalName, panNo and tradeName. POST /v1/tax-portal/invoices/register returns irn, ackNo, ackDt and the signed QR; GET /v1/transport/validate/{taxId} and POST /v1/transport/waybills cover e-way GSTIN checks and ewbNo.

How do payment links get created?

Merchants first submit KYC (accountHolderName, accountNumber, ifscCode, gst, ownerPan) to POST /v1/payouts/accounts. Each sale then POSTs /v1/paylinks with partyName, amount and customerPhone; the response paymentLink and txn_paymentgateway_qr are what the invoice shares.

Does Vyapar cover UAE e-invoicing as well as Indian GST?

Yes. POST /v1/ae/tax/session takes the service-provider code, TIN and OTP and returns token plus profile.tin, orgId and emarataxEmail. GET /v1/ae/invoices/{docType}/{docId}/file then fetches the FTA PDF using the session-token header. FX stamps come from POST /v1/fx/quotes (conversionRates, lastUpdatedAt).

Apps similar to Vyapar Invoice GST Billing App

  • Khatabook — Khatabook is a Bengaluru-based digital-ledger app that lets Indian micro and small businesses record customer credit and debit in place of a paper bahi-khata.
  • myBillBook — myBillBook is a GST billing and accounting app for Indian small and medium businesses that covers invoicing, inventory, e-invoicing and e-way bills.
  • OkCredit — OkCredit is a digital ledger app from Faridabad that helps Indian shop owners track customer credit and sends collection reminders over SMS and WhatsApp.
  • Zoho Invoice — Zoho Invoice is Zoho's cloud invoicing app aimed at freelancers and service businesses, with integration into the wider Zoho suite.
  • TallyPrime — TallyPrime is the business management software from Bengaluru-based Tally Solutions covering accounting, taxation and GST compliance, typically used by firms with more complex books.
  • ClearTax — ClearTax is an Indian tax-compliance platform whose GST billing, e-invoicing and return-filing tools target businesses and tax professionals.
  • CashBook - Balance & Expense — CashBook is an Indian business cashbook from Obopay that records income and expenses in shared passbooks and settles staff spending through UPI wallets.

Topics

  • Vyapar GST API
  • e-invoice IRN
  • GSTIN lookup
  • e-way bill ewbNo
  • UAE FTA e-invoice
  • Vyapar payment link
  • party ledger
  • GST billing data API

Need this app's data API integrated?

We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.

  • NDA + SOW on every engagement
  • Delivery in 3–7 days
  • Payment only after acceptance
  • Work scoped to authorized use

Get a quote