This method is used to add a document to an offering. Only .pdf, .xls, and .docx files can be uploaded. Only PDF files are able to be watermarked. 50 MB max file upload.
Offering ID that is generated by the API once an offering is created (createOffering)
documentTitle
string
Yes
Title/label for the uploaded document
documentFileReferenceCode
string
Yes
Reference code for the uploaded document (can be any number to use for tracking)
file\_name
string
Yes
File name of the uploaded document. No special characters can be included in the file name.
userfile0
string
Yes
While uploading the PDF files, please provide a temporary file name. Prefix @ on the file name. Eg : @/tmp/phpAHi2ZC Request parameter should be userfile0, userfile1, userfile2,...userfilen for multiple documents upload. Refer Sample Request set below
templateName
conditional
No
Offering Document Template Name (can be used if using certain templates for tracking)
approval
string
No
Has the Document been approved by a Registered Principal? Yes or No
supervisorname
string
No
Name of the Approving Principal
date
integer
No
Date that the Document was Approved
createdIpAddress
string
No
IP Address of the addDocumentsforOffering method call
# SINGLE UPLOADcurl--location'https://api-sandboxdash.norcapsecurities.com/v3/addDocumentsforOffering'\--form'clientID="ClientID"'\--form'developerAPIKey="DeveloperAPIKey"'\--form'offeringId="1338707"'\--form'documentTitle="documentTitle0=LaurenTest"'\--form'documentFileReferenceCode="220323024315"'\--form'file_name="filename0=Test.pdf"'\--form'userfile0=@"/Users/laurencoalmer/Documents/Test.pdf"'\--form'approval="yes"'\--form'supervisorname="Lauren"'\--form'date="02-04-2016"'\--form'createdIpAddress="10.0.0.9"'# MULTIPLE UPLOAD — index each file: userfile0/userfile1,# and join titles/names with & (documentTitle0=..&documentTitle1=..)curl--location'https://api-sandboxdash.norcapsecurities.com/v3/addDocumentsforOffering'\--form'clientID="someclientid"'\--form'developerAPIKey="somedeveloperkey"'\--form'offeringId="55593"'\--form'documentTitle="documentTitle0=Tagme&documentTitle1=Tested"'\--form'documentFileReferenceCode="220323024315"'\--form'file_name="filename0=page2.pdf&filename1=page3.pdf"'\--form'userfile0=@"/tmp/page2.pdf"'\--form'userfile1=@"/tmp/page3.pdf"'\--form'approval="yes"'\--form'supervisorname="peter"'\--form'date="02-04-2016"'\--form'createdIpAddress="10.0.0.9"'
importaxiosfrom'axios';importFormDatafrom'form-data';constapiHost=process.env.TAPI_HOST||'https://api-sandboxdash.norcapsecurities.com';consttapi=axios.create({baseURL:`${apiHost}/tapiv3/index.php/v3`,timeout:60000,});constauth={clientID:process.env.TAPI_CLIENT_ID,developerAPIKey:process.env.TAPI_API_KEY,};// `files` is an array of multer-style objects: { buffer, originalname }// The indexed fields (userfile0, documentTitle0=, filename0=) must line up by index.constaddDocumentsforOffering=(offeringId,documentFileReferenceCode,files)=>{constdata=newFormData();data.append('clientID',auth.clientID);data.append('developerAPIKey',auth.developerAPIKey);data.append('offeringId',offeringId);data.append('documentFileReferenceCode',documentFileReferenceCode);data.append('documentTitle',files.map((f,i)=>`documentTitle${i}=${f.originalname}`).join('&'));data.append('file_name',files.map((f,i)=>`filename${i}=${f.originalname}`).join('&'));files.forEach((f,i)=>data.append(`userfile${i}`,f.buffer,{filename:f.originalname}));returntapi.post('/addDocumentsforOffering',data,{headers:data.getHeaders()});};
This method is used to add Subscription Documents to the offering through DocuSign. A template can be set up in DocuSign, allowing investor data to be auto-populated when the documents are sent. The Offering ID is required to add a Template Document. This method will return the Template ID as a successful response. To obtain the templateId needed for the templatename param, fetchSubscriptionDocuments can be used. A DocuSign business account connected to TransactAPI is required to use this method.
Offering ID that is generated by the API once an offering is created(createOffering) for the offering that the subscription document template is to be added
This method retrieves all subscription document templates available in the client's connected DocuSign account. It is a passthrough to the DocuSign eSignature GET /templates endpoint, so each item is a DocuSign envelope template object. Use the returned templateId and name to build the file_name value (templateId--templateName) required by addSubscriptionsforOffering. A DocuSign business account connected to TransactAPI is required to use this method.
The document_details array is the unaltered envelopeTemplates list returned by DocuSign. The fields below are the ones most commonly present and used by TransactAPI; DocuSign may include additional template attributes.
Field
Type
Description
statusCode
string
101 on success
statusDesc
string
Ok on success
document_details
array
Array of DocuSign envelope template objects
document_details[].templateId
string
DocuSign template identifier (combine with name as templateId--name for addSubscriptionsforOffering)
document_details[].name
string
Template name as titled in DocuSign
document_details[].shared
string
Whether the template is shared within the DocuSign account (true / false)
document_details[].description
string
Template description (may be empty)
document_details[].created
string
Template creation timestamp (ISO 8601)
document_details[].lastModified
string
Last modification timestamp (ISO 8601)
document_details[].pageCount
string
Number of pages in the template
document_details[].uri
string
Relative DocuSign API URI for the template
document_details[].folderName
string
DocuSign folder containing the template
document_details[].owner
object
DocuSign user who owns the template (userName, email, userId)
If no DocuSign templates exist, document_details is an empty array.
{"statusCode":"101","statusDesc":"Ok","document_details":[{"id":"796792","tradeId":"1001354616","virtualStatus":"ACTIVE","documentid":"6YY3t","documentTitle":" Test Document","documentFileName":"3pmRSHDuk64876d232625cT.pdf","documentFileReferenceCode":"120623070819","createdDate":"2023-06-12","archive_status":"0","documentUrl":"https://api-sandboxdash.norcapsecurities.com/admin_v3/Upload_documentation/uploadDocument/dkFLVzF4MVZrUWphTjV3WitGMjZSQlBuWVRDTnA1WldKemhhaG9aYXhUVHRCUW5Ra0J6WnZCeTBUWEluczZwdm9NZURrclJTN0ZDaUpId0VuZCswamtqMmlqZDZkdS82dUZ2Z3d3OTdrZDVDTHhzRlRUZFh1OXM3Yno1MXZUQ2FyeXFyaGdLOHB5a3V6MWhJYk5pTDB3PT0="}]}
{"statusCode":"101","statusDesc":"Ok","partyDocumentDetails":[{"id":"562","partyid":"P08374","documentid":"UAVdq","documentTitle":" Party Doc Check","documentFileName":"GKrQ190918113557.pdf","documentFileReferenceCode":"190918113557","createdDate":"2018-09-19","documentUrl":"https://api-sandboxdash.norcapsecurities.com/admin_v3/Upload_documentation/uploadDocument/cjdPQ2FlUm1LY0dZNzBkc1Z0bGt0cGpLcUhiV3FOUXV6bjJraW1XaTlVdFllWXBOTmNMTktFUStpSWNtVm5Yb1lYdkllRVNMb0pOZnU5RXM5eFdaVGp2Zm5mVllyc3ZLelpsdCtnVC8vdFVuemdOR282Rjg4bTgxb1hCaTJzZE9kMGkyMEMrM3VPMW9ETnlmcm5Vc2pBPT0="},{"id":"563","partyid":"P08374","documentid":"YBHE3","documentTitle":" New Doc Check","documentFileName":"GKrQ190918113617.pdf","documentFileReferenceCode":"190918113617","createdDate":"2018-09-19","documentUrl":"https://api-sandboxdash.norcapsecurities.com/admin_v3/Upload_documentation/uploadDocument/cjdPQ2FlUm1LY0dZNzBkc1Z0bGt0cGpLcUhiV3FOUXV6bjJraW1XaTlVc1E1YTRZakRrd3NhTGdpczlwSmVaQTRqQjVVcGZxOUFJTWRoa0hzR1d5SFcveG92bHB1cG14UHY4OVBjOHVVOEkveTR3Sm1OVTFmYnM2ZXZGWWlUdFEvL2h0L2lqayttOExDUzJpdTV1bThBPT0="}]}
This method is used to collect documents when North Capital is providing a manual review of KYC/AML. There is an additional reviewing fee that will be charged to use this method.
Party Id or Entity Id or Account Id Generated by API
documentTitle
string
Yes
Uploaded document title. Legacy users can still use the prefix "documentTitle0=" but it is no longer required.
userfile0
string
Yes
While uploading the PDF files, please provide a temporary file name. Prefix @ on the file name. Eg : @/tmp/phpAHi2ZC Request parameter should be userfile0 for documents upload.Refer Sample Request set below
importaxiosfrom'axios';importFormDatafrom'form-data';constapiHost=process.env.TAPI_HOST||'https://api-sandboxdash.norcapsecurities.com';consttapi=axios.create({baseURL:`${apiHost}/tapiv3/index.php/v3`,timeout:60000,});constauth={clientID:process.env.TAPI_CLIENT_ID,developerAPIKey:process.env.TAPI_API_KEY,};// `file` is a multer-style object: { buffer, originalname }constrequestUploadPartyDocument=(investorId,requestId,file)=>{constdata=newFormData();data.append('clientID',auth.clientID);data.append('developerAPIKey',auth.developerAPIKey);data.append('investorId',investorId);data.append('requestId',requestId);// Single file: the `documentTitle0=` prefix is optional and may be omitted.// For multiple files it is required: documentTitle0=..&documentTitle1=..data.append('documentTitle',file.originalname);data.append('userfile0',file.buffer,{filename:file.originalname});data.append('createdIpAddress','117.221.66.34');returntapi.post('/requestUploadPartyDocument',data,{headers:data.getHeaders()});};
Deprecated. This method is deprecated and should not be used for new integrations.
This method is used to update a Subscription Document for the offering. The template is set up in either Docusign or Echosign, allowing investor data to be auto-populated when the documents are sent. The existing template will be replaced with the new template.
Offering ID that is generated by the API once an offering is created(createOffering) for the offering that the subscription document template is to be replaced.
templateId
string
Yes
Template ID that is generated by the API once a subscription document is added(addSubscriptionsforOffering)
templatename
string
Yes
The name of the replacement template as it is titled in Docusign or Echosign.
updatedIpAddress
string
No
IP Address of the updateSubscriptionsforOffering method call.
{"statusCode":"101","statusDesc":"Ok","tradeDocumentDetails":[{"tradeId":"923209860","virtualStatus":"ACTIVE","documentid":"3c3Gu","documentTitle":" Test trade document","documentFileName":"GKrQ100417045821.pdf","documentFileReferenceCode":"100417045821","createdDate":"2017-04-10 19:08:19","archiveStatus":"0"}]}
This method uploads a document and associates it with an account (createAccount). The Account ID is required as a request parameter. The request must use the multipart/form-data content type. Accepted file types are PDF, JPG, JPEG, PNG, and TXT. Minimum file size is 1 kB.
Account ID that is generated by the API when an account is created (createAccount)
documentTitle
string
Yes
Uploaded document title. Please use prefix "documentTitle0=" in the value of documentTitle field
file\_name
string
Yes
Uploaded document file name. Please use prefix "filename0=" in the value of file_name field
userfile0
string
Yes
Raw file data. Specification of raw file data is application specific. Accepted file types are PDF, JPG, JPEG, PNG and TXT. Minimum file size is 1 kB. Please refer to the Sample Requests section for reference implementations.
importaxiosfrom'axios';importFormDatafrom'form-data';constapiHost=process.env.TAPI_HOST||'https://api-sandboxdash.norcapsecurities.com';consttapi=axios.create({baseURL:`${apiHost}/tapiv3/index.php/v3`,timeout:60000,});constauth={clientID:process.env.TAPI_CLIENT_ID,developerAPIKey:process.env.TAPI_API_KEY,};// `file` is a multer-style object: { buffer, originalname }// Indexed fields (userfile0, documentTitle0=, filename0=) must line up by index.constuploadAccountDocument=(accountId,file)=>{constdata=newFormData();data.append('clientID',auth.clientID);data.append('developerAPIKey',auth.developerAPIKey);data.append('accountId',accountId);data.append('documentTitle',`documentTitle0=${file.originalname}`);data.append('file_name',`filename0=${file.originalname}`);data.append('userfile0',file.buffer,{filename:file.originalname});returntapi.post('/uploadAccountDocument',data,{headers:data.getHeaders()});};
This method is used to upload a document to a particular entity party (createEntity). The Party ID is required as a request parameter for this method. The request must use the multipart/form-data content type. Accepted file types are PDF, JPG, JPEG, and PNG. Minimum file size is 1 kB.
Entity ID that is generated by the API when an entity is created (createEntity)
documentTitle
string
Yes
Uploaded document title. Please use prefix "documentTitle0=" in the value of documentTitle field
file\_name
string
Yes
Uploaded document file name. Please use prefix "filename0=" in the value of file_name field
userfile0
string
Yes
Raw file data. Specification of raw file data is application specific. Accepted file types are PDF, JPG, JPEG and PNG. Minimum file size is 1 kB. Please refer to the Sample Requests section for reference implementations.
importaxiosfrom'axios';importFormDatafrom'form-data';constapiHost=process.env.TAPI_HOST||'https://api-sandboxdash.norcapsecurities.com';consttapi=axios.create({baseURL:`${apiHost}/tapiv3/index.php/v3`,timeout:60000,});constauth={clientID:process.env.TAPI_CLIENT_ID,developerAPIKey:process.env.TAPI_API_KEY,};// `file` is a multer-style object: { buffer, originalname }// Indexed fields (userfile0, documentTitle0=, filename0=) must line up by index.constuploadEntityDocument=(partyId,file)=>{constdata=newFormData();data.append('clientID',auth.clientID);data.append('developerAPIKey',auth.developerAPIKey);data.append('partyId',partyId);data.append('documentTitle',`documentTitle0=${file.originalname}`);data.append('file_name',`filename0=${file.originalname}`);data.append('userfile0',file.buffer,{filename:file.originalname});returntapi.post('/uploadEntityDocument',data,{headers:data.getHeaders()});};
This endpoint is used to upload a document and associate it with an individual party. A valid party must exist to use this endpoint, and parties can be created using the createParty endpoint. The request must use the multipart/form-data content type to ensure proper handling of file uploads. Accepted file types are PDF, JPG, JPEG, PNG, HEIC, and BMP. Minimum file size is 1 kB.
Party ID that is generated by the API when a party is created (createParty)
documentTitle
string
Yes
Uploaded document title. Please use prefix "documentTitle0=" in the value of documentTitle field
file\_name
string
Yes
Uploaded document file name. Please use prefix "filename0=" in the value of file_name field
userfile0
string
Yes
Raw file data. Specification of raw file data is application specific. Accepted file types are PDF, JPG, JPEG, PNG, HEIC and BMP. Minimum file size is 1 kB. Please refer to the Sample Requests section for reference implementations.
importaxiosfrom'axios';importFormDatafrom'form-data';constapiHost=process.env.TAPI_HOST||'https://api-sandboxdash.norcapsecurities.com';consttapi=axios.create({baseURL:`${apiHost}/tapiv3/index.php/v3`,timeout:60000,});constauth={clientID:process.env.TAPI_CLIENT_ID,developerAPIKey:process.env.TAPI_API_KEY,};// `file` is a multer-style object: { buffer, originalname }// Indexed fields (userfile0, documentTitle0=, filename0=) must line up by index.constuploadPartyDocument=(partyId,file)=>{constdata=newFormData();data.append('clientID',auth.clientID);data.append('developerAPIKey',auth.developerAPIKey);data.append('partyId',partyId);data.append('documentTitle',`documentTitle0=${file.originalname}`);data.append('file_name',`filename0=${file.originalname}`);data.append('userfile0',file.buffer,{filename:file.originalname});returntapi.post('/uploadPartyDocument',data,{headers:data.getHeaders()});};
This method is used to upload a document to a particular trade (createTrade). The Trade ID is required as a request parameter for this method. The request must use the multipart/form-data content type. Accepted file types are PDF, JPG, JPEG, and PNG. Minimum file size is 1 kB.
Trade ID that is generated by the API when a trade is created (createTrade)
documentTitle
string
Yes
Uploaded document title. Please use prefix "documentTitle0=" in the value of documentTitle field
file\_name
string
Yes
Uploaded document file name. Please use prefix "filename0=" in the value of file_name field
userfile0
string
Yes
Raw file data. Specification of raw file data is application specific. Accepted file types are PDF, JPG, JPEG and PNG. Minimum file size is 1 kB. Please refer to the Sample Requests section for reference implementations.
importaxiosfrom'axios';importFormDatafrom'form-data';constapiHost=process.env.TAPI_HOST||'https://api-sandboxdash.norcapsecurities.com';consttapi=axios.create({baseURL:`${apiHost}/tapiv3/index.php/v3`,timeout:60000,});constauth={clientID:process.env.TAPI_CLIENT_ID,developerAPIKey:process.env.TAPI_API_KEY,};// `file` is a multer-style object: { buffer, originalname }// Single file only: this endpoint rejects a `&` in file_name, so the// indexed multi-file form (filename0=..&filename1=..) is not supported here.constuploadTradeDocument=(tradeId,file)=>{constdata=newFormData();data.append('clientID',auth.clientID);data.append('developerAPIKey',auth.developerAPIKey);data.append('tradeId',tradeId);data.append('documentTitle',`documentTitle0=${file.originalname}`);data.append('file_name',`filename0=${file.originalname}`);data.append('userfile0',file.buffer,{filename:file.originalname});returntapi.post('/uploadTradeDocument',data,{headers:data.getHeaders()});};