Enkash Developer Portal
HomePayment GatewayPayoutsCreate Account
HomePayment GatewayPayoutsCreate Account
Login
  1. invoice-controller
  • Explore Our Product Suite
  • Payment Gateway
    • Getting Started
    • Payment Options
    • Integration Tools
    • Payment Gateway APIs
  • Payouts
    • Payouts Overview
    • Payouts Sign Up
    • Payout Methods
    • Payout API Response Codes
    • Payouts Integration Steps
    • Encrypting and Decrypting Payload
    • Payouts Status Codes
    • Get Authentication Token
      • Get Authentication Token
    • Beneficiary Apis
      • Create Beneficiary
      • Search Beneficiary
      • Delete Beneficiary
    • Transfer Apis
      • Create Payout
      • Search Payouts
      • Create Batch Payout
    • Payout Account Apis
      • Get Balance
      • Get Source Bank Account Details
      • Add Source Bank Account
      • Fetch Bank Statement
    • Webhook Data Apis
      • Get Webhook Data
      • Create Webhook Data
  • Prepaid Cards
    • Key Capabilities
    • Getting Started
    • Prepaid Card APIs
  • Bharat Connect (BBPS)
    • Vendor Payment
    • Bill Payment
  • Accounts Payable
    • About AP Management Tool
    • Vendor Management
      • Create Vendor
      • Create Bulk Vendors
      • Update Bulk Vendors
      • Get Beneficiaries (V1)
      • Get Beneficiaries
      • Change Vendor Status
      • Get Beneficiary
    • Invoice Management
      • Payout Apis
        • validateInvoices
        • initiate
        • Search Payouts V1
        • bulkCreatePayout
        • Create Payout
        • Update Payouts
        • Search Payouts
        • createBulkPayoutForPartnerIntegration
        • Update Bulk Payouts
        • Update Approval Status
        • Get Invoice Data
        • Delete Payout
    • Bharat Connect 2.0 AP
      • Confirm Invoice Request
      • Payment Request
    • Update Beneficiary
  • Account Receivable
    • Accounts Receivable Overview
    • Get Authentication Token Copy
      • Get Authentication Token
    • Customer Management
      • Customer Apis
        • Activate customer
        • createBulkCustomer
        • bulkUpdate
        • Deactivate customer
        • deleteCustomerByCustomerId
        • updateCustomer
    • Customer Contacts Management
      • Customer Apis
        • getCustomerContactDetails
    • Invoice Management
      • invoice-controller
        • createInvoice
          POST
        • invoiceBulkUpload
          POST
        • Dispatch Invoice Collection
          POST
        • Delete Invoice Collection
          POST
        • searchCollectionInvoices
          POST
        • getInvoice
          GET
        • updateInvoice
          PATCH
    • Payment Reminders
      • customer-reminder-controller
        • createCustomerReminder
        • getCustomerReminders
        • getCustomerReminder
        • deleteReminder
        • updateCustomerReminder
    • Bharat Connect 2.0 AR
      • Payment Confirmation Request
      • Change Invoice Status Request
      • Bulk Create Invoice
  • Expense Management
    • Expense Management Overview
    • Sign Up - Expense Management
    • About Authorization
    • Expenses
    • Advance
    • Token API
  • Rewards & Incentives
    • About Rewards
    • Getting Started
    • Encryption & Decryption Guide
    • Reward Allocation
    • Incentive Allocation
    • APIs
      • Token APIs
        • Authentication
        • Single Sign On (SSO)
      • Reward Allocation
        • Create And Allocate Points
        • Bulk Create And Allocate Rewards
        • Get Reward Account Details
        • Get Reward Transaction Details
        • Get User Details
        • Get User Card Details
      • Incentive Allocation
        • Incentive Create And Allocation
        • Get Incentive Transaction details
        • Get User Details
      • Redemption
        • User Authentication
        • Get Cart for User
        • Search Catalog
        • Get Product Catalog Details
        • Get Product Configs (Denominations)
        • Add to cart
        • Update Cart
        • Create Order
        • Order Search
        • create order
        • Fetch Order Info by Partner order Reference id
      • Point Management
        • Overview
        • Create Event
        • Get Event
        • Update Event
        • Allocate Coins
        • Get Balance
  • Verification Suite
    • Verification Suite Overview
    • Bank Account Verification
      • Bank Account Verification PennyLess/PennyDrop
    • GSTN Verification
      • Gstin Verification
    • PAN Verification
      • Pan Verification
    • UPI(VPA) Verification
      • Vpa Verification
  1. invoice-controller

createInvoice

POST
/api/v0/invoice
invoice-controller

Request

Body Params application/json
approvalStatus
enum<string> 
optional
Status of the invoice approval
Allowed values:
APPROVER_APPROVAL_PENDINGAPPROVER_APPROVEDAPPROVER_REJECTEDBANK_APPROVEDCHECKER_APPROVAL_PENDINGCHECKER_APPROVEDCHECKER_REJECTEDMAKER_APPROVAL_PENDINGMAKER_APPROVEDMAKER_REJECTED
balanceAmount
number 
optional
Remaining balance amount for the invoice
baseAmount
number 
required
Base amount of the invoice
>= 0.1
cgst
number 
optional
Central Goods and Services Tax amount
chargeCustomer
boolean 
optional
Indicates if the charge is to be applied to the customer
customerId
string 
required
Unique identifier for the customer
Match pattern:
^KC[A-Z0-9]{14}$
description
string 
optional
Description of the invoice
dispatchNow
boolean 
optional
Indicates if the invoice should be dispatched immediately
dueDate
string <date>
required
Due date for the invoice payment
emailAddress
string 
optional
Email address associated with the invoice
externalId
string 
optional
External identifier for the invoice
gstExclusive
boolean 
optional
Indicates if the invoice amount is exclusive of GST
igst
number 
optional
Integrated Goods and Services Tax amount
invoiceDate
string 
optional
Date of the invoice
Example:
dd MMM yyyy HH:mm
invoiceNumber
string 
required
Unique number for the invoice
mobileNumber
string 
optional
Mobile number associated with the invoice
netAmount
number 
optional
Net amount of the invoice
paidThrough
enum<string> 
optional
Method through which the invoice is paid
Allowed values:
COLLECTIONSPAYABLES
partialPaymentAllowed
boolean 
optional
Indicates if partial payments are allowed for the invoice
payableReferenceId
string 
optional
Reference ID for the payable
poNumber
string 
optional
Purchase Order number associated with the invoice
receivableStatus
enum<string> 
optional
Status of the invoice receivable
Allowed values:
PAIDPARTIAL_PAIDREJECTUNPAID
sellerId
string 
required
Unique identifier for the seller
Match pattern:
^CEK[A-Z0-9]{7}$
sgst
number 
optional
State Goods and Services Tax amount
tds
number 
optional
Tax Deducted at Source amount
totalReceived
number 
optional
Total amount received for the invoice
via
string 
optional
Medium through which the invoice is processed
Example
{
    "approvalStatus": "APPROVER_APPROVAL_PENDING",
    "balanceAmount": 0,
    "baseAmount": 0.1,
    "cgst": 0,
    "chargeCustomer": true,
    "customerId": "string",
    "description": "string",
    "dispatchNow": true,
    "dueDate": "2019-08-24",
    "emailAddress": "string",
    "externalId": "string",
    "gstExclusive": true,
    "igst": 0,
    "invoiceDate": "dd MMM yyyy HH:mm",
    "invoiceNumber": "string",
    "mobileNumber": "string",
    "netAmount": 0,
    "paidThrough": "COLLECTIONS",
    "partialPaymentAllowed": true,
    "payableReferenceId": "string",
    "poNumber": "string",
    "receivableStatus": "PAID",
    "sellerId": "string",
    "sgst": 0,
    "tds": 0,
    "totalReceived": 0,
    "via": "string"
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://test.your-api-server.com/api/v0/invoice' \
--header 'Content-Type: application/json' \
--data-raw '{
    "approvalStatus": "APPROVER_APPROVAL_PENDING",
    "balanceAmount": 0,
    "baseAmount": 0.1,
    "cgst": 0,
    "chargeCustomer": true,
    "customerId": "string",
    "description": "string",
    "dispatchNow": true,
    "dueDate": "2019-08-24",
    "emailAddress": "string",
    "externalId": "string",
    "gstExclusive": true,
    "igst": 0,
    "invoiceDate": "dd MMM yyyy HH:mm",
    "invoiceNumber": "string",
    "mobileNumber": "string",
    "netAmount": 0,
    "paidThrough": "COLLECTIONS",
    "partialPaymentAllowed": true,
    "payableReferenceId": "string",
    "poNumber": "string",
    "receivableStatus": "PAID",
    "sellerId": "string",
    "sgst": 0,
    "tds": 0,
    "totalReceived": 0,
    "via": "string"
}'

Responses

🟢200OK
application/json
Body
errorResponse
object (ErrorResponse) 
optional
apiSubErrors
array[object (ApiSubError)] 
optional
errorMessage
string 
optional
errorType
enum<string> 
optional
Allowed values:
CLIENT_REQUEST_ABORTCLIENT_REQUEST_ERRORINVALID_ACCESSRECORD_NOT_FOUNDSYSTEM_ERRORUNAUTHORIZEDUNKNOWN_ERRORUNPROCESSABLE_REQUESTVALIDATION_ERROR
requestId
string 
optional
timestamp
string 
optional
Example:
yyyy-MM-dd HH:mm:ss
payload
object (InvoiceResponse) 
optional
approvalStatus
object (EnumModel«string») 
optional
attachmentUrl
string 
optional
balanceAmount
number 
optional
baseAmount
number 
optional
cgst
number 
optional
createdBy
string 
optional
createdByEmail
string 
optional
createdByMobile
string 
optional
createdByName
string 
optional
createdOn
string <date-time>
optional
customerId
string 
optional
customerLegalName
string 
optional
description
string 
optional
dispatched
boolean 
optional
dispatchedOn
string <date-time>
optional
dueDate
string <date>
optional
externalId
string 
optional
hasKeyContacts
boolean 
optional
igst
number 
optional
invoiceAttachments
array[object (InvoiceAttachmentResponse) {12}] 
optional
invoiceDate
string <date-time>
optional
invoiceId
string 
optional
invoiceNumber
string 
optional
modifiedBy
string 
optional
modifiedByEmail
string 
optional
modifiedByMobile
string 
optional
modifiedByName
string 
optional
modifiedOn
string <date-time>
optional
netAmount
number 
optional
partialPaymentAllowed
boolean 
optional
payableReferenceId
string 
optional
paymentLink
string 
optional
payoutStatus
object (EnumModel«string») 
optional
poNumber
string 
optional
receivableStatus
object (EnumModel«string») 
optional
sellerId
string 
optional
sgst
number 
optional
tds
number 
optional
totalReceived
number 
optional
via
string 
optional
response_code
integer <int32>
optional
response_message
string 
optional
Example
{
    "errorResponse": {
        "apiSubErrors": [
            {}
        ],
        "errorMessage": "string",
        "errorType": "CLIENT_REQUEST_ABORT",
        "requestId": "string",
        "timestamp": "yyyy-MM-dd HH:mm:ss"
    },
    "payload": {
        "approvalStatus": {
            "label": "string",
            "name": "PAID"
        },
        "attachmentUrl": "string",
        "balanceAmount": 0,
        "baseAmount": 0,
        "cgst": 0,
        "createdBy": "string",
        "createdByEmail": "string",
        "createdByMobile": "string",
        "createdByName": "string",
        "createdOn": "2019-08-24T14:15:22Z",
        "customerId": "string",
        "customerLegalName": "string",
        "description": "string",
        "dispatched": true,
        "dispatchedOn": "2019-08-24T14:15:22Z",
        "dueDate": "2019-08-24",
        "externalId": "string",
        "hasKeyContacts": true,
        "igst": 0,
        "invoiceAttachments": [
            {
                "attachmentSource": "TALLY_INVOICE",
                "createdBy": "string",
                "deleted": true,
                "fileExt": "string",
                "invoiceAttachmentId": "string",
                "modifiedBy": "string",
                "originalFilename": "string",
                "primary": true,
                "referenceId": "string",
                "remarks": "string",
                "shared": true,
                "url": "string"
            }
        ],
        "invoiceDate": "2019-08-24T14:15:22Z",
        "invoiceId": "string",
        "invoiceNumber": "string",
        "modifiedBy": "string",
        "modifiedByEmail": "string",
        "modifiedByMobile": "string",
        "modifiedByName": "string",
        "modifiedOn": "2019-08-24T14:15:22Z",
        "netAmount": 0,
        "partialPaymentAllowed": true,
        "payableReferenceId": "string",
        "paymentLink": "string",
        "payoutStatus": {
            "label": "string",
            "name": "PAID"
        },
        "poNumber": "string",
        "receivableStatus": {
            "label": "string",
            "name": "PAID"
        },
        "sellerId": "string",
        "sgst": 0,
        "tds": 0,
        "totalReceived": 0,
        "via": "string"
    },
    "response_code": 0,
    "response_message": "string"
}
🟠400Bad Request
🟠401Unauthorized
🟠403Forbidden
🟠404Not Found
🟠422Unprocessable Request
🔴500Server Error
Modified at 2024-10-10 08:34:46
Previous
getCustomerContactDetails
Next
invoiceBulkUpload
Built with