NetSuite: Data templates

You can configure the NetSuite target system service to map custom NetSuite fields to ReadSoft Online fields and other values.

By default, ReadSoft Online can map fields to the NetSuite fields listed here. If your NetSuite solution has custom fields, however, you can use data templates to map NetSuite fields to ReadSoft Online fields and other values. Custom fields in NetSuite fall into three categories: header fields, expense table fields and item fields. Each category has a corresponding setting in the target system settings that you can use to map custom fields:

  • Custom field mapping - for header fields.
  • Custom expense field mapping - for expense table fields.
  • Custom item field mapping - for item fields.

You specify custom field values using the format, NetSuiteField="value", where NetSuiteField is the ID of the field in NetSuite, and value is any possible value defined later in this topic. Use a semicolon to separate multiple field specifications. For your convenience, you can click Validate, which among other things, makes sure the fields you specify exist in NetSuite.


Suppose you type the following in the Custom field mapping setting:


In this example:

custbodypark is a constant that is always set to true.

custbodyapprovedby is set to a history variable that refers to the name of the user who checked the invoice.

custbodyapprove is set to a history variable that refers to the date and time when the invoice was verified.

custbodystoragelink is set a system variable that refers to the permanent image link (URL) in ReadSoft Online storage.

A value can consist of multiple constants and variables, for example:

field="Invoice %InvoiceNumber% was approved by %@user60% in ReadSoft."

You specify the data using plain-text constants and variables enclosed in percent marks.

  • Constants - fixed values that you specify as text.
  • Variables - dynamic values that are determined by invoice data or system data. Variables are enclosed in percent characters (%).

To specify a variable for an invoice field, enclose the Type name of the field in percent characters (%).

A variable can also be preceded by:


Customer: $WebEye.CustomerID Document created: %@date0{yyyy-MM-dd}% Buyer: %#buyer.Name%

System variables

You can specify system variables to obtain the values of system variables in ReadSoft Online.

  • #Appendices
  • #CreditInvoice
  • #BatchPrefix
  • #buyer.Type
  • #buyer.Name
  • #buyer.Id
  • #Buyer.FieldName (where FieldName is a field name specified in ReadSoft Online XML (2.0))
  • #buyer.ExternalId
  • #buyer.Description
  • #buyer.TaxRegistrationNumber
  • #buyer.OrganizationNumber
  • #buyer.Street
  • #buyer.PostalCode
  • #buyer.City
  • #buyer.CountryName
  • #buyer.PaymentTerm
  • #buyer.PaymentMethod
  • #buyer.CurrencyCode
  • #buyer.BankAccounts
  • #Currency
  • #DateTime
  • #Description
  • #DocumentTypeSystemName
  • #ImageFile2
  • #NumberOfPagesFrontAndBack
  • #NumberOfInvoicePages
  • #NumberOfInvoicePagesFrontAndBack
  • #NumberOfAppendixPages
  • #NumberOfAppendixPagesFrontAndBack
  • #Pages
  • #Permalink
  • #ProfileName
  • #EndorserNumber
  • #Supplier
  • #Supplier.FieldName (where FieldName is a field name specified in ReadSoft Online XML (2.0))
  • #SupplierDescription
  • #supplier.Type
  • #supplier.Name
  • #supplier.Id
  • #supplier.ExternalId
  • #supplier.TaxRegistrationNumber
  • #supplier.OrganizationNumber
  • #supplier.Street
  • #supplier.PostalCode
  • #supplier.City
  • #supplier.CountryName
  • #supplier.PaymentTerm
  • #supplier.PaymentMethod
  • #supplier.CurrencyCode
  • #supplier.BankAccounts

History variables

You can specify history variables to obtain the user or the date and time of a specific process. You construct a history variable using one of these formats:

  • @UserX
  • @DateX
...where User specifies that you want the user associated with the process, Date specifies that you want the date the process occurred and X specifies the numerical code of the process you want to return. For example, %@Date0% returns the date a document was created. %@User0% returns the user name that created the document.

Custom date formats

The default date format returned by the date variable is YYY-MM-ddTHH:mm:ss.FFFFFFFZ. For example: 2021-02-28T14:46:21.1265774Z.

If you use the Oracle Financials Cloud integration, you can control the format of the date variable using standard date and time formats as well as custom formats. You specify the format of your choice by enclosing it in braces after the date variable, like this:


The date variable above would return for example, 2021-02-28.

Currently, custom date formats are only available for the Oracle Financials Cloud integration. However, custom date formats will be available to other integrations in the near future.

Process status Numerical code
DocumentCreated 0
DocumentExtractionInProgress 30
DocumentExtractionSucceeded 40
DocumentPendingManualVerification 45
DocumentPendingCorrection 46
DocumentCorrectionFlowStarting 47
DocumentCorrectionFlowInProgress 48
DocumentCorrectionFlowDone 49
DocumentRejectedDuringVerification 50
DocumentRequestForInformationDuringVerification 55
DocumentManuallyVerified 60
DocumentPendingRegistration 61
DocumentRegistrationInProgress 62
DocumentRegistrationSucceeded 63
DocumentRegistrationFailed 64
DocumentPendingApproval 65
DocumentApprovalStarting 79
DocumentApprovalInProgress 66
DocumentApproved 67
DocumentApprovalSucceeded 68
DocumentApprovalRejected 69
DocumentRequestForInformation 70
DocumentPendingAllocation 71
DocumentPendingPost 74
DocumentPostInProgress 75
DocumentPostSucceeded 76
DocumentPostFailed 77
DocumentAssignedToUser 78
DocumentPendingBatchRegistration 80
DocumentPendingBatchPost 81
DocumentValidationFailed 82
DocumentPendingExport 90
DocumentExportPostponed 91
DocumentExportInProgress 95
DocumentExportFailed 99
DocumentExportSucceeded 100
DocumentSentToStorage 200
DocumentCommentAdded 201
LineItemExtractionUsed 202
DocumentFailed 900
DocumentDeleted 1000

Meta-data variables

You can specify these variables to obtain additional meta data from ReadSoft Online that is not available in the variables above:

  • $WebEye.CustomerID
  • $WebEye.BatchID
  • $WebEye.OutputImageFormat
  • $WebEye.DocumentID
  • $ExternalId
  • $UploaderUserName
  • $OriginalFileName
  • $BatchTrackId
  • $ReceiveTime
  • $DocumentId
  • $VerifierUserName

Fields containing lists

The NetSuite integration supports the use of NetSuite fields that contain lists. In other words, your data template can specify fields of type List/Record. This is helpful, for example, if you want to incorporate a list of NetSuite employees with , and display the list for selection during invoice verification. Read more.