Get all payables invoices
get
/fscmRestApi/resources/11.13.18.05/payablesInvoicesInSupplierPortal
Request
Query Parameters
-
expand: string
When this parameter is provided, the specified children are included in the resource payload (instead of just a link). The value of this query parameter is "all" or "". More than one child can be specified using comma as a separator. Example: ?expand=Employees,Localizations. Nested children can also be provided following the format "Child.NestedChild" (Example: ?expand=Employees.Managers). If a nested child is provided (Example: Employees.Managers), the missing children will be processed implicitly. For example, "?expand=Employees.Managers" is the same as "?expand=Employees,Employees.Managers" (which will expand Employees and Managers).
-
fields: string
This parameter filters the resource fields. Only the specified fields are returned, which means that if no fields are specified, no fields are returned (useful to get only the links). If an indirect child resource is provided (Example: Employees.Managers), the missing children will be processed implicitly. For example, "?fields=Employees.Managers:Empname" is the same as "?fields=;Employees:;Employees.Managers:Empname" (which will only return the "Empname" field for Managers). the value of this query parameter is a list of resource fields. The attribute can be a direct (Example: Employees) or indirect (Example: Employees.Managers) child. It cannot be combined with expand query parameter. If both are provided, only fields will be considered.
Format: ?fields=Attribute1,Attribute2
Format for fields in child resource: ?fields=Accessor1:Attribute1,Attribute2 -
finder: string
Used as a predefined finder to search the collection.
Format ?finder=<finderName>;<variableName>=<variableValue>,<variableName2>=<variableValue2>
The following are the available finder names and corresponding finder variables- PrimaryKey Finds the payables invoice in Supplier Portal that matches the specified primary key.
Finder Variables- InvoiceId; integer; Unique identifier of the invoice.
- PrimaryKey Finds the payables invoice in Supplier Portal that matches the specified primary key.
-
limit: integer
This parameter restricts the number of resources returned inside the resource collection. If the limit exceeds the resource count then the framework will only return the available resources.
-
links: string
This parameter can be used to show only certain links while accessing a singular resource or a resource collection. The parameter value format is a comma-separated list of : <link_relation>
Example:
self,canonical -
offset: integer
Used to define the starting position of the resource collection. If offset exceeds the resource count then no resources are returned. Default value is 0.
-
onlyData: boolean
The resource item payload will be filtered in order to contain only data (no links section, for example).
-
orderBy: string
This parameter orders a resource collection based on the specified fields. The parameter value is a comma-separated string of attribute names, each optionally followed by a colon and "asc" or "desc". Specify "asc" for ascending and "desc" for descending. The default value is "asc". For example, ?orderBy=field1:asc,field2:desc
-
q: string
This query parameter defines the where clause. The resource collection will be queried using the provided expressions. The value of this query parameter is one or more expressions. Example: ?q=Deptno>=10 and <= 30;Loc!=NY
Format: ?q=expression1;expression2
You can use these queryable attributes to filter this collection resource using the q query parameter:- ApprovalStatus; string; Status that indicates the current stage of the invoice in the approval process.
- ApprovalStatusLookupCode; string; Code that identifies the approval status of the invoice.
- BankAccount; string; Bank account to which the invoice payment is remitted.
- BusinessUnit; string; Business unit associated with the invoice.
- ControlAmount; number; Amount compared with the total tax amount calculated for the invoice.
- CreatedBy; string; The user who created the record.
- CreationDate; string; The date when the record was created.
- Description; string; A brief description of the invoice.
- DueDate; string; The date when the invoice installment is due for payment.
- ExternalBankAccountId; integer; Unique identifier of the external bank account.
- FirstPartyTaxRegistrationId; integer; Unique identifier of the first party tax registration.
- FirstPartyTaxRegistrationNumber; string; Tax registration number of the first party.
- InvoiceAmount; number; Invoice amount in the transaction currency.
- InvoiceCurrency; string; Currency code used on the invoice.
- InvoiceDate; string; The date specified on the supplier invoice.
- InvoiceGroup; string; Invoice group assigned to the invoice for reporting and payment purposes.
- InvoiceId; integer; The unique identifier of the invoice, is generated while creating the invoice.
- InvoiceNumber; string; Number that identifies the invoice.
- InvoiceSource; string; Source from which the invoice was created. A list of accepted values is defined in the source lookup.
- InvoiceStatus; string; Status of the invoice.
- InvoiceStatusLookupCode; string; Code that identifies the invoice status.
- InvoiceType; string; Type of invoice. A list of accepted values is defined in the invoice type lookup.
- InvoiceTypeLookupCode; string; Code that identifies the invoice type.
- LastUpdateDate; string; The date when the record was last updated.
- LastUpdatedBy; string; The user who last updated the record.
- LegalEntity; string; Legal entity associated with the invoice.
- POHeaderId; integer; The unique identifier of the purchase order document number that's matched to the invoice.
- PaidStatus; string; Indicates whether the invoice has been paid. Valid values are: P (Partially Paid), N (Unpaid), and Y (Fully Paid).
- PartyId; integer; The unique identifier of the party associated with the supplier or party associated with the employee or customers for payment request type of invoices.
- PaymentCurrency; string; Currency used to make the payment.
- PaymentNumber; string; Number that identifies the payment.
- PaymentStatusLookupCode; string; Code that identifies the payment status.
- PurchaseOrderNumber; string; Purchase order document number matched to the invoice.
- Requester; string; Name of the person who requested the goods or services.
- RequesterEmail; string; Email address of the requester associated with the invoice.
- RequesterId; integer; Unique identifier of the requester associated with the invoice.
- SelfAssessedTaxAmount; number; Total self-assessed tax amount on the invoice.
- Supplier; string; Name of the supplier on the invoice.
- SupplierAddress; string; Address of the supplier associated with the invoice.
- SupplierSite; string; Supplier site associated with the invoice.
- SupplierTaxRegistrationNumber; string; Tax registration number of the supplier.
- UniqueRemittanceIdentifier; string; Unique identifier for a remittance. This value contains reference information related to a payment.
- UniqueRemittanceIdentifierCheckDigit; string; Check digit associated with the unique remittance identifier.
- VendorId; integer; The unique identifier of the supplier on the interface invoice.
- VendorSiteId; integer; Unique identifier of the supplier site associated with the invoice.
-
totalResults: boolean
The resource collection representation will include the "estimated row count" when "?totalResults=true", otherwise the count is not included. The default value is "false".
Header Parameters
-
Metadata-Context: string
If the REST API supports runtime customizations, the shape of the service may change during runtime. The REST client may isolate itself from these changes or choose to interact with the latest version of the API by specifying this header. For example: Metadata-Context:sandbox="TrackEmployeeFeature".
-
REST-Framework-Version: string
The protocol version between a REST client and service. If the client does not specify this header in the request the server will pick a default version for the API.
There's no request body for this operation.
Back to TopResponse
Supported Media Types
- application/json
Default Response
The following table describes the default response for this task.
Headers
-
Metadata-Context:
If the REST API supports runtime customizations, the shape of the service may change during runtime. The REST client may isolate itself from these changes or choose to interact with the latest version of the API by specifying this header. For example: Metadata-Context:sandbox="TrackEmployeeFeature".
-
REST-Framework-Version:
The protocol version between a REST client and service. If the client does not specify this header in the request the server will pick a default version for the API.
Root Schema : payablesInvoicesInSupplierPortal
Type:
Show Source
object-
count(required): integer
The number of resource instances returned in the current range.
-
hasMore(required): boolean
Indicates whether more resources are available on the server than the subset returned in the response. If the value is true, then there are more resources to retrieve from the server. The default value is false.
-
items: array
Items
Title:
ItemsThe items in the collection. -
limit(required): integer
The actual paging size used by the server.
-
links(required): array
Links
Title:
LinksThe link relations associated with the resource instance. -
offset(required): integer
The offset value used in the current page.
-
totalResults: integer
The estimated row count when "?totalResults=true", otherwise the count is not included.
Nested Schema : Links
Type:
arrayTitle:
LinksThe link relations associated with the resource instance.
Show Source
Nested Schema : payablesInvoicesInSupplierPortal-item-response
Type:
Show Source
object-
ApprovalStatus: string
Read Only:
trueMaximum Length:80Status that indicates the current stage of the invoice in the approval process. -
ApprovalStatusLookupCode: string
Title:
Match OptionRead Only:trueMaximum Length:30Code that identifies the approval status of the invoice. -
BankAccount: string
Maximum Length:
255Bank account to which the invoice payment is remitted. -
BusinessUnit: string
Title:
Business UnitMaximum Length:240Business unit associated with the invoice. -
ControlAmount: number
Title:
Control AmountAmount compared with the total tax amount calculated for the invoice. -
CreatedBy: string
Title:
Created ByRead Only:trueMaximum Length:64The user who created the record. -
CreationDate: string
(date-time)
Title:
Creation DateRead Only:trueThe date when the record was created. -
Description: string
Title:
DescriptionMaximum Length:240A brief description of the invoice. -
DueDate: string
(date)
Read Only:
trueThe date when the invoice installment is due for payment. -
ExternalBankAccountId: integer
(int64)
Unique identifier of the external bank account.
-
FirstPartyTaxRegistrationId: integer
(int64)
Title:
First-Party Tax Registration NumberUnique identifier of the first party tax registration. -
FirstPartyTaxRegistrationNumber: string
Maximum Length:
50Tax registration number of the first party. -
InvoiceAmount: number
Title:
AmountInvoice amount in the transaction currency. -
InvoiceCurrency: string
Title:
Invoice CurrencyMaximum Length:15Currency code used on the invoice. -
InvoiceDate: string
(date)
Title:
Invoice DateThe date specified on the supplier invoice. -
InvoiceGroup: string
Maximum Length:
255Invoice group assigned to the invoice for reporting and payment purposes. -
InvoiceId: integer
(int64)
Title:
Invoice IDThe unique identifier of the invoice, is generated while creating the invoice. -
InvoiceNumber: string
Title:
Invoice NumberMaximum Length:50Number that identifies the invoice. -
InvoiceSource: string
Maximum Length:
255Source from which the invoice was created. A list of accepted values is defined in the source lookup. -
InvoiceStatus: string
Read Only:
trueMaximum Length:255Status of the invoice. -
InvoiceStatusLookupCode: string
Code that identifies the invoice status.
-
InvoiceType: string
Maximum Length:
255Type of invoice. A list of accepted values is defined in the invoice type lookup. -
InvoiceTypeLookupCode: string
Title:
Invoice TypeMaximum Length:25Code that identifies the invoice type. -
ispInvoiceRestAttachments: array
Attachments
Title:
AttachmentsAn attachment represents a file, URL, or text associated with a payables invoice in Supplier Portal. Examples include invoice images, supporting documents, and supplier provided documents. -
ispInvoiceRestLines: array
Invoice Lines
Title:
Invoice LinesAn invoice line represents goods, services, taxes, or other charges billed on a payables invoice in Supplier Portal. Examples include item lines, tax lines, and freight lines. -
LastUpdateDate: string
(date-time)
Title:
Last Update DateRead Only:trueThe date when the record was last updated. -
LastUpdatedBy: string
Title:
Last Updated ByRead Only:trueMaximum Length:64The user who last updated the record. -
LegalEntity: string
Title:
Legal Entity NameMaximum Length:240Legal entity associated with the invoice. -
LegalEntityIdentifier: string
Maximum Length:
255The unique identifier of the legal entity on the interface invoice. -
links: array
Links
Title:
LinksThe link relations associated with the resource instance. -
PaidStatus: string
Read Only:
trueMaximum Length:80Indicates whether the invoice has been paid. Valid values are: P (Partially Paid), N (Unpaid), and Y (Fully Paid). -
PartyId: integer
(int64)
The unique identifier of the party associated with the supplier or party associated with the employee or customers for payment request type of invoices.
-
PaymentCurrency: string
Title:
Payment CurrencyMaximum Length:15Currency used to make the payment. -
PaymentNumber: string
Read Only:
trueMaximum Length:30Number that identifies the payment. -
PaymentStatusLookupCode: string
Title:
Match OptionRead Only:trueMaximum Length:30Code that identifies the payment status. -
POHeaderId: integer
(int64)
Read Only:
trueThe unique identifier of the purchase order document number that's matched to the invoice. -
PurchaseOrderNumber: string
Title:
OrderMaximum Length:30Purchase order document number matched to the invoice. -
Requester: string
Title:
NameMaximum Length:240Name of the person who requested the goods or services. -
RequesterEmail: string
Maximum Length:
2000Email address of the requester associated with the invoice. -
RequesterId: integer
(int64)
Title:
RequesterUnique identifier of the requester associated with the invoice. -
SelfAssessedTaxAmount: number
Read Only:
trueTotal self-assessed tax amount on the invoice. -
Supplier: string
Title:
NameMaximum Length:360Name of the supplier on the invoice. -
SupplierAddress: string
Read Only:
trueAddress of the supplier associated with the invoice. -
SupplierSite: string
Title:
SiteMaximum Length:240Supplier site associated with the invoice. -
SupplierTaxRegistrationNumber: string
Title:
Registration NumberMaximum Length:50Tax registration number of the supplier. -
UniqueRemittanceIdentifier: string
Maximum Length:
256Unique identifier for a remittance. This value contains reference information related to a payment. -
UniqueRemittanceIdentifierCheckDigit: string
Maximum Length:
2Check digit associated with the unique remittance identifier. -
VendorId: integer
(int64)
Title:
SupplierThe unique identifier of the supplier on the interface invoice. -
VendorSiteId: integer
(int64)
Title:
Supplier SiteUnique identifier of the supplier site associated with the invoice.
Nested Schema : Attachments
Type:
arrayTitle:
AttachmentsAn attachment represents a file, URL, or text associated with a payables invoice in Supplier Portal. Examples include invoice images, supporting documents, and supplier provided documents.
Show Source
Nested Schema : Invoice Lines
Type:
arrayTitle:
Invoice LinesAn invoice line represents goods, services, taxes, or other charges billed on a payables invoice in Supplier Portal. Examples include item lines, tax lines, and freight lines.
Show Source
Nested Schema : Links
Type:
arrayTitle:
LinksThe link relations associated with the resource instance.
Show Source
Nested Schema : payablesInvoicesInSupplierPortal-ispInvoiceRestAttachments-item-response
Type:
Show Source
object-
AsyncTrackerId: string
Title:
Asynchronous Upload Tracker IdUnique identifier of the asynchronous process that tracks attachment processing. -
AttachedDocumentId: integer
(int64)
Title:
Attached Document IdUnique identifier of the attached document. -
Category: string
Maximum Length:
255Document category used for assigning sequential numbers to documents. - ContentRepositoryFileShared: boolean
-
CreatedBy: string
Title:
Created ByRead Only:trueMaximum Length:255The user who created the record. -
CreatedByUserName: string
Title:
Created By User NameRead Only:trueThe user name of the user who created the record. -
CreationDate: string
(date-time)
Title:
Creation DateRead Only:trueThe date when the record was created. -
Description: string
Title:
DescriptionMaximum Length:255A brief description of the attachment. -
DmDocumentId: string
Maximum Length:
255Unique identifier of the document in the document management repository. -
DmFolderPath: string
Title:
Dm Folder PathMaximum Length:1000Folder path of the document in the document management repository. -
DmVersionNumber: string
Maximum Length:
255Version number of the document in the document management repository. -
DownloadInfo: string
Title:
DownloadInfoParameter information used to download the attachment. -
ErrorStatusCode: string
Title:
Error Status CodeCode that identifies the attachment processing status. -
ErrorStatusMessage: string
Title:
Error Status MessageMessage that describes the attachment processing status. -
ExpirationDate: string
(date-time)
Title:
Expiration DateThe date when the attachment expires. -
FileContents: string
(byte)
Title:
File ContentsContents of the attached file. -
FileName: string
Title:
File NameMaximum Length:2048Name of the attached file. -
FileUrl: string
Title:
File UrlURL of the attached file. -
FileWebImage: string
(byte)
Title:
File Web ImageRead Only:trueWeb image associated with the attached file. -
LastUpdateDate: string
(date-time)
Title:
Last Update DateRead Only:trueThe date when the record was last updated. -
LastUpdatedBy: string
Title:
Last Updated ByRead Only:trueMaximum Length:255The user who last updated the record. -
LastUpdatedByUserName: string
Title:
Last Updated By UserRead Only:trueThe user name of the user who last updated the record. -
links: array
Links
Title:
LinksThe link relations associated with the resource instance. -
PostProcessingAction: string
Title:
PostProcessingActionAction performed after attachment processing is complete. -
Title: string
Title:
TitleTitle of the attachment. -
Type: string
Maximum Length:
255Type of attachment. -
UploadedFileContentType: string
Title:
Uploaded File Content TypeContent type of the uploaded file. -
UploadedFileLength: integer
Title:
File SizeSize of the uploaded file. -
UploadedFileName: string
Title:
Uploaded File NameName of the uploaded file. -
UploadedText: string
Title:
Uploaded TextText uploaded for the attachment. -
Uri: string
Title:
UriMaximum Length:4000The unique reference number to identify the image with the invoice. -
Url: string
Title:
UrlMaximum Length:4000URL associated with the attachment.
Nested Schema : Links
Type:
arrayTitle:
LinksThe link relations associated with the resource instance.
Show Source
Nested Schema : link
Type:
Show Source
object-
href: string
Title:
hyperlink referenceThe URI to the related resource. -
kind: string
Title:
kindAllowed Values:[ "collection", "item", "describe", "other" ]The kind of the related resource. -
name: string
Title:
nameThe name of the link to the related resource. -
properties: object
properties
-
rel: string
Title:
relationAllowed Values:[ "self", "lov", "parent", "canonical", "child", "enclosure", "action", "custom" ]The name of the relation to the resource instance. Example: self.
Nested Schema : properties
Type:
Show Source
object-
changeIndicator: string
Change indicator or the ETag value of the resource instance.
Nested Schema : payablesInvoicesInSupplierPortal-ispInvoiceRestLines-item-response
Type:
Show Source
object-
AssessableValue: number
Title:
Assessable ValueDeemed price at which a product is valued by a tax authority for tax calculation purposes. -
AvailableQuantity: string
Quantity of items received against a purchase order schedule that are available for matching to an invoice.
-
ConsumptionAdviceLineNumber: number
Title:
Consumption Advice LineLine number of the consumption advice associated with the invoice line. -
ConsumptionAdviceNumber: string
Title:
Consumption AdviceMaximum Length:20Number of the consumption advice associated with the invoice line. -
CreatedBy: string
Title:
Created ByRead Only:trueMaximum Length:64The user who created the record. -
CreationDate: string
(date-time)
Title:
Creation DateRead Only:trueThe date when the invoice line was created. -
Description: string
Title:
DescriptionMaximum Length:240A brief description of the invoice line. -
FinalDischargeLocation: string
Read Only:
trueMaximum Length:1082Final discharge location used for tax calculation on the invoice line. -
FinalDischargeLocationCode: string
Maximum Length:
1082The code that identifies the location of final discharge. -
IncludedTaxAmount: number
Read Only:
trueAmount of tax included in the invoice line. -
IncomeTaxRegion: string
Title:
Income Tax RegionMaximum Length:10Reporting region associated with the invoice line for a 1099 supplier. -
IntendedUse: string
Maximum Length:
240Tax driver used to determine and calculate taxes applicable to the invoice line. -
IntendedUseClassifId: integer
(int64)
Title:
Intended UseUnique identifier of the intended use code entered by the user. -
IntendedUseCode: string
Code that identifies the intended use for tax calculation.
-
Item: string
Maximum Length:
255Name of the inventory item associated with the invoice line. -
ItemDescription: string
Read Only:
trueDescription of the item associated with the invoice line. -
LastUpdateDate: string
(date-time)
Title:
Last Update DateRead Only:trueThe date when the invoice line was last updated. -
LastUpdatedBy: string
Title:
Last Updated ByRead Only:trueMaximum Length:64The user who last updated the invoice line. -
LineAmount: number
Title:
Line AmountInvoice line amount in the invoice currency. -
LineNumber: integer
(int64)
Title:
Line NumberUnique number that identifies the invoice line. -
LineSource: string
Read Only:
trueMaximum Length:255Source from which the invoice line was created. A list of accepted values is defined in the line source lookup. -
LineType: string
Maximum Length:
255Type of invoice line. A list of accepted values is defined in the invoice line type lookup. -
LineTypeLookupCode: string
Title:
Line TypeMaximum Length:25The type of the invoice line. The value must be provided while creating an invoice line. The valid values are Item, Freight, and Miscellaneous. A list of accepted values is defined in the lookup type INVOICE LINE TYPE and can be reviewed using the Setup and Maintenance work area, and the Manage Payables Lookups task. -
links: array
Links
Title:
LinksThe link relations associated with the resource instance. -
POHeaderId: integer
(int64)
Read Only:
trueThe unique identifier of the purchase order document number that's matched to the invoice. -
ProductCategory: string
Maximum Length:
240Taxable nature of a noninventory item used for tax calculation and tax reporting purposes. -
ProductCategoryCodePath: string
Title:
Product CategoryMaximum Length:240Hierarchy path of the product category code used for tax calculation. -
ProductFiscalClassification: string
Maximum Length:
240Tax classification used by a tax authority to categorize a product. -
ProductFiscalClassificationCode: string
Code that identifies the product fiscal classification used for tax calculation.
-
ProductFiscalClassificationType: string
Type of product fiscal classification used for tax calculation.
-
ProductType: string
Maximum Length:
80Type of product derived from the inventory item attributes. Valid values are goods and services. -
PurchaseOrderLineNumber: number
Title:
LinePurchase order line number matched to the invoice line. -
PurchaseOrderNumber: string
Title:
OrderMaximum Length:30Purchase order document number matched to the invoice line. -
PurchaseOrderScheduleLineNumber: number
Title:
SchedulePurchase order schedule line number matched to the invoice line. -
Quantity: number
Title:
QuantityQuantity of items invoiced on the invoice line. -
RcvTransactionId: integer
Read Only:
trueUnique identifier of the receipt transaction matched to the invoice line. -
ReceiptLineNumber: integer
(int64)
The line number of the receipt associated with the invoice line.
-
ReceiptNumber: string
Maximum Length:
255The receipt number of the material associated with the invoice line. -
Retainage: number
Amount withheld as retainage against the invoice line.
-
RetainageRemaining: number
Remaining amount withheld as retainage against the invoice line.
-
RetainedInvoiceLineNumber: integer
Line number of the retained invoice associated with the invoice line.
-
RetainedInvoiceNumber: integer
(int64)
Invoice number of the retained invoice associated with the invoice line.
-
ShipFromLocation: string
Read Only:
trueMaximum Length:1082Code that identifies the ship-from location. -
ShipFromLocationId: integer
(int64)
Title:
Ship-from LocationThe unique identifier of the ship-from location. -
ShipToLocation: string
Title:
NameMaximum Length:60Location to which the supplier ships the goods or services. -
ShipToLocationCode: string
Maximum Length:
255The user-entered ship to location code that helps to uniquely identify a ship to location. -
SupplierItem: string
Read Only:
trueMaximum Length:300Supplier item number from the purchase order schedule line. -
TaxClassification: string
Title:
Tax ClassificationMaximum Length:30Tax classification code used for tax calculation. -
TaxControlAmount: number
Title:
Tax Control AmountAmount used to ensure that the calculated tax matches the tax amount on the physical document. -
TaxRateName: string
Read Only:
trueMaximum Length:255Name of the tax rate associated with the invoice line. -
TransactionBusinessCategory: string
Maximum Length:
255Transaction category assigned to the invoice line for tax calculation purposes. -
TransactionBusinessCategoryCodePath: string
Title:
Transaction Business CategoryMaximum Length:240Hierarchy path of the transaction business category code used for tax calculation. -
UnitPrice: number
Title:
Unit PriceUnit price of the good or service. -
UOM: string
Maximum Length:
25Unit of measure used for the invoiced quantity. -
UserDefinedFiscalClassification: string
Maximum Length:
240Classification used for tax requirements that can't be defined using existing fiscal classification types. -
UserDefinedFiscalClassificationCode: string
Title:
User-Defined Fiscal ClassificationMaximum Length:240Code that identifies the user-defined fiscal classification used for tax calculation.
Nested Schema : Links
Type:
arrayTitle:
LinksThe link relations associated with the resource instance.
Show Source
Links
- calculateTax
-
Calculates taxes for the invoice based on the invoice details and tax configuration.
- cancelInvoice
-
Cancels an invoice. When you cancel an invoice, all invoice amounts are set to zero, and the invoice can't be edited or submitted for processing.
- cancelLine
-
Cancels an invoice line. When you cancel an invoice line, the line amount is set to zero, and the invoice line can't be edited. If the invoice line is matched to a purchase order, the billed quantity on the purchase order is adjusted by the canceled line quantity.
- submitInvoice
-
Submits the invoice for processing. If the submission is successful, the invoice is processed according to the applicable invoice validation and approval rules.