Trades
All requests require clientID and developerAPIKey parameters for authentication.
Base URL: https://api-sandboxdash.norcapsecurities.com
Endpoints
POST /v3/addTradeNote
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID that is generated by the API once a trade is created (createTrade) |
authorName | string | Yes | Author Name |
notes | string | Yes | Notes |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/addTradeNote
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d authorName=authorName
-d notes=notes
-d tradeId=123456
Response
| Field | Type | Description |
notesDetails | string | Array of trade notes includes all information of the matched trade |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"notesDetails": [
true,
[
{
"noteId": "2822",
"authorname": "Prabhu",
"note": "testing",
"createdDate": "2022-03-16"
}
]
]
}
POST /v3/cancelInvestment
This API will perform all of the functions necessary to fully cancel and/or refund an investment.
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID generated by the API |
requestedBy | string | Yes | Name of the individual filling out the return request |
reason | string | Yes | Reason for the return |
notes | string | Yes | Any additional information regarding the return |
Example Request
curl -X POST https://api-sandboxdash.norcapsecurities.com/v3/cancelInvestment
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d tradeId=141103099
-d requestedBy=Test
-d reason=Testing Reason
-d notes=Testing Notes
-d createdIpAddress=10.0.0.1
Response
| Field | Type | Description |
Canceled investment details | string | Array of trade details. The developerAPIKey is removed from each record before the response is returned. |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"Canceled investment details": [
{
"id": "787594",
"offeringId": "52675",
"accountId": "A11501",
"partyId": "P56836",
"party_type": "",
"escrowId": null,
"orderId": "141103099",
"transactionType": "WIRE",
"totalAmount": "12000.000000",
"totalShares": "120.000000",
"orderStatus": "FUNDED",
"createdDate": "2017-05-17 06:25:38",
"createdIpAddress": "",
"errors": "",
"documentKey": "",
"esignStatus": "NOTSIGNED",
"users": "",
"archived_status": "0",
"field1": "Account Field 1",
"field2": "Account Field 2",
"field3": "Account Field 3"
}
]
}
POST /v3/createTrade
This method is used to create a trade/investment for an offering. This requires Account ID and the total number of units/shares to be purchased by the account. Creating a trade represents the intention to invest and does NOT initiate any sort of fund move. To initiate an ACH transfer for a trade, you will need to use the externalFundMove method.
The trade is created with an orderStatus of CREATED. The investing account must be Approved, the offering must be accepting investments, and the requested transactionUnits must not exceed the offering's remaining shares; otherwise an error is returned.
Parameters
| Parameter | Type | Required | Description |
offeringId | string | Yes | Offering ID that is generated by the API when an offering is created (createOffering) |
accountId | string | Yes | Account ID of the account that is investing (this account should have one primary party) |
transactionType | string | Yes | Transaction Type, conventionally one of ACH / WIRE / CHECK / CREDITCARD / TBD / IRA / EXTERNAL CREDIT CARD / EXTERNAL ACH / NCPS CUSTODY ACCOUNT. The value is not validated against a fixed list; it is stored uppercased with spaces and underscores removed |
transactionUnits | string | Yes | Number of units/shares to be purchased |
fees | string | No | Fee amount added to the transaction amount (transactionAmount = unit price x units + fees) |
createdIpAddress | string | Yes | Requested IP Address |
field1 | string | No | Additional information relating to the trade. Custom Field 1 |
field2 | string | No | Additional information relating to the trade. Custom Field 2 |
field3 | string | No | Additional information relating to the trade. Custom Field 3 |
RRApprovalStatus | string | No | "Pending", "Approved", "Disapproved", or "Under Review" (defaults to "Pending") |
RRName | string | No | Some Text |
RRApprovalDate | string | No | Approval Date eg: MM-DD-YYYY |
PrincipalApprovalStatus | string | No | "Pending", "Approved", "Disapproved", or "Under Review" (defaults to "Pending") |
PrincipalName | string | No | Some Text |
PrincipalDate | string | No | Principal Date eg: MM-DD-YYYY |
closeId | string | No | closeId |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/createTrade
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d offeringId=55591
-d accountId=A12345
-d transactionType=ACH
-d transactionUnits=20.35
-d field1= additional information1
-d field2= additional information2
-d field3= additional information3
-d RRApprovalStatus= Pending
-d RRName= Some text
-d RRApprovalDate= Approval Date
-d PrincipalApprovalStatus= Pending
-d PrincipalName= Some text
-d PrincipalDate= Principal Date
-d createdIpAddress=10.0.0.9
-d closeId=closeId
Response
Returns purchaseDetails, a two-element array where the first element is a boolean success flag and the second is an array containing a single object with the created trade details.
| Field | Type | Description |
tradeId | string | Trade (order) ID generated by the API for the new trade |
transactionId | string | Internal row ID for the trade record |
transactionAmount | string | Dollar amount of the trade (unit price x units, plus fees if supplied) |
transactionDate | string | Date the trade was created (YYYY-MM-DD HH:MM:SS) |
transactionStatus | string | Trade status at creation; always CREATED |
RRApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
RRName | string | Registered representative name, or null |
RRApprovalDate | string | Approval date (MM-DD-YYYY), or null |
PrincipalApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
PrincipalName | string | Principal name, or null |
PrincipalDate | string | Principal date (MM-DD-YYYY), or null |
closeId | string | closeId, or null |
eligibleToClose | string | yes / no |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"purchaseDetails": [
true,
[
{
"tradeId": "1001349795",
"transactionId": "1625143",
"transactionAmount": "150.000000",
"transactionDate": "2024-12-11 01:20:37",
"transactionStatus": "CREATED",
"RRApprovalStatus": "Pending",
"RRName": null,
"RRApprovalDate": null,
"PrincipalApprovalStatus": "Pending",
"PrincipalName": null,
"PrincipalDate": null,
"closeId": null,
"eligibleToClose": "no"
}
]
]
}
POST /v3/deleteTrade
This method is used to delete (status is changed to "Canceled") a particular Trade from Transact API. The delete is a virtual delete. You will need to specify the Trade ID as a request parameter to cancel the trade. If there is a pending ACH transfer relating to the trade, the trade will not be canceled.
Parameters
| Parameter | Type | Required | Description |
accountId | string | Yes | Account ID generated by the TAPI |
tradeId | integer | Yes | Trade ID generated by the TAPI |
errDesc | string | No | If any error caused |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/deleteTrade
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d accountId=A77654
-d tradeId=2354
-d errDesc=test
Response
| Field | Type | Description |
tradeDetails | string | Array of trade details (partyId, offeringId, orderStatus) |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"tradeDetails": [
{
"partyId": "P00197",
"offeringId": "32957",
"orderStatus": "CANCELED"
}
]
}
POST /v3/deleteTradeNote
Parameters
| Parameter | Type | Required | Description |
noteId | string | Yes | Note ID that is generated by the API once a trade note is created (addTradeNote) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/deleteTradeNote
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d noteId=1256
Response
| Field | Type | Description |
notesDetails | string | Trade Notes Deleted Successfully |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"notesDetails": "Trade Notes Deleted Successfully"
}
PUT /v3/editTrade
This method is used to edit a particular Trade from Transact API. A trade can only be updated if it has a "CREATED" status.
Parameters
| Parameter | Type | Required | Description |
accountId | string | Yes | Account ID generated by the API |
offeringId | string | Yes | Offering ID generated by the API |
tradeId | integer | Yes | Trade ID generated by the API |
shares | string | Yes | Trade shares |
closeId | string | No | closeId |
Example Request
curl -k -X PUT https://api-sandboxdash.norcapsecurities.com/v3/editTrade
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d accountId=A12345
-d offeringId=511245
-d tradeId=2354
-d shares=10.58
-d closeId=closeId
Response
| Field | Type | Description |
TradeFinancialDetails | string | Returns the Trade details (tradeId, shares, sharePrice, totalShares, remainingShares, closeId) |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"TradeFinancialDetails": {
"tradeId": "2354",
"shares": "10.58",
"sharePrice": 280.5,
"totalShares": "100.00",
"remainingShares": "89.42",
"closeId": "closeId"
}
}
POST /v3/editTradeUnits
This method updates the unit price and number of units/shares for an existing trade. The trade must have a CREATED status. The returned sharePrice is the recomputed total for the trade (unitPrice x totalShares).
Parameters
| Parameter | Type | Required | Description |
accountId | string | Yes | Account ID generated by the API |
tradeId | integer | Yes | Trade ID generated by the API |
unitPrice | string | Yes | Unit Price for this trade |
totalShares | string | Yes | Number of shares |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/editTradeUnits
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d accountId=P12345
-d tradeId=2354
-d unitPrice=10.58
-d totalShares=10.58
Response
Returns TradeFinancialDetails, an object describing the updated trade.
| Field | Type | Description |
tradeId | string | Trade ID generated by the API |
sharePrice | number | Total trade value, computed as unitPrice x totalShares |
unitPrice | string | Updated unit price for the trade |
totalShares | string | Updated number of shares |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"TradeFinancialDetails": {
"tradeId": "2354",
"sharePrice": 111.93,
"unitPrice": "10.58",
"totalShares": "10.58"
}
}
POST /v3/fundReturnRequest
Deprecated
This endpoint is deprecated and may be removed in a future version.
This method is used to request funds be returned to an investor. The Trade ID is required as a request parameter to process. This is a legacy API method. If you are integrating with our API, please refer to cancelInvestment.
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID generated by the API |
requestedBy | string | Yes | Name of the individual filling out the return request |
reason | string | Yes | Reason for the return |
notes | string | No | Any additional information regarding the return |
createdIpAddress | string | No | Created IP Address |
Example Request
curl -X POST https://api-sandboxdash.norcapsecurities.com/v3/fundReturnRequest
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d tradeId=141103099
-d requestedBy=Test
-d reason=Testing Reason
-d notes=Testing Notes
-d createdIpAddress=10.0.0.1
Response
| Field | Type | Description |
tradeDetails | string | Array of trade details (partyId, offeringId, orderStatus) |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"tradeDetails": {
"partyId": "P56836",
"offeringId": "52675",
"orderStatus": "FUNDED"
}
}
POST /v3/getAccountTradeHistory
This method will return all the trade information for all trades created for a particular Account (createAccount). Records are grouped by trade (order) and ordered by created date descending.
Parameters
| Parameter | Type | Required | Description |
accountId | string | Yes | Account ID that is generated by the API once an account is created (createAccount) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getAccountTradeHistory
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d accountId=A11501
Response
Returns accountDetails, an array of trade records for the account.
| Field | Type | Description |
in_id | string | Internal row ID of the trade record |
offeringId | string | Offering ID the trade was placed against |
orderId | string | Trade (order) ID generated by the API |
partyId | string | Party ID of the primary party on the investing account |
accountId | string | Account ID of the investing account |
totalAmount | string | Dollar amount of the trade |
esignStatus | string | Subscription document e-sign status (e.g. SIGNED, NOTSIGNED) |
clientId | string | Always masked as XXXXXXXXXXXXXXX |
trade_developerAPIKey | string | Always masked as XXXXXXXXXXXXXXX |
accountName | string | Name of the investing account |
accreditedStatus | string | Account accredited status (e.g. Pending, Self Accredited, Verified Accredited) |
kycStatus | string | KYC status (e.g. Pending, Auto Approved, Manually Approved, Disapproved) |
amlStatus | string | AML status (e.g. Pending, Auto Approved, Manually Approved, Disapproved) |
issueName | string | Name of the offering |
transactionType | string | Transaction Type as ACH / WIRE / CHECK / CREDITCARD / TBD / IRA / EXTERNAL CREDIT CARD / EXTERNAL ACH / NCPS CUSTODY ACCOUNT |
orderStatus | string | Trade Status: CREATED / FUNDED / UNWIND PENDING / UNWIND SETTLED / SETTLED / CANCELED |
trade_createdDate | string | Date the trade was created (YYYY-MM-DD HH:MM:SS) |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"accountDetails": [
{
"in_id": "787313",
"offeringId": "44353",
"orderId": "437616902",
"partyId": "P56836",
"accountId": "A11501",
"totalAmount": "3000.000000",
"esignStatus": "NOTSIGNED",
"clientId": "XXXXXXXXXXXXXXX",
"trade_developerAPIKey": "XXXXXXXXXXXXXXX",
"accountName": "John Smith",
"accreditedStatus": "Pending",
"kycStatus": "Manually Approved",
"amlStatus": "Manually Approved",
"issueName": "Test Offer For Tapi",
"transactionType": "WIRE",
"orderStatus": "CREATED",
"trade_createdDate": "2017-02-03 06:34:23"
}
]
}
POST /v3/getAllTrades
Deprecated
This endpoint is deprecated and may be removed in a future version.
Get All trades for a given client. NOTICE after January 13 this endpoint will return a maximum of 500 records. Please migrate to /v3/trades which supports filtering and pagination.
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getAllTrades
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
Response
| Field | Type | Description |
TradeFinancialDetails | string | Get trade details Array |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"TradeFinancialDetails": [
{
"row_id": "2021761",
"createdDate": "2024-12-04 14:09:59",
"accountId": "A3092253",
"issueName": "OAuth 1",
"orderId": "1001639040",
"accountName": "Chelsea Testing",
"offeringId": "1685476",
"totalAmount": "7.800000",
"transactionType": "CREDITCARD",
"approvalStatus": "Pending",
"kycStatus": "Disapproved",
"amlStatus": "Auto Approved",
"orderStatus": "CREATED",
"esignstatus": null,
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "2016485",
"createdDate": "2024-11-20 15:43:21",
"accountId": "A3092253",
"issueName": "OAuth 1",
"orderId": "1001635286",
"accountName": "Chelsea Testing",
"offeringId": "1685476",
"totalAmount": "156.000000",
"transactionType": "CHECK",
"approvalStatus": "Pending",
"kycStatus": "Disapproved",
"amlStatus": "Auto Approved",
"orderStatus": "CREATED",
"esignstatus": "SIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "2016363",
"createdDate": "2024-11-20 01:16:59",
"accountId": "A3092253",
"issueName": "OAuth 1",
"orderId": "1001635206",
"accountName": "Chelsea Testing",
"offeringId": "1685476",
"totalAmount": "37.440000",
"transactionType": "WIRE",
"approvalStatus": "Pending",
"kycStatus": "Disapproved",
"amlStatus": "Auto Approved",
"orderStatus": "CREATED",
"esignstatus": "NOTSIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "1966294",
"createdDate": "2024-09-16 21:28:42",
"accountId": "A3093435",
"issueName": "Dev DocuSign Offering",
"orderId": "1001604992",
"accountName": "Chelsea Elting and Someone Elting",
"offeringId": "1624104",
"totalAmount": "27.000000",
"transactionType": "WIRE",
"approvalStatus": "Pending",
"kycStatus": "Disapproved",
"amlStatus": "Auto Approved",
"orderStatus": "UNWIND SETTLED",
"esignstatus": "NOTSIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "1966293",
"createdDate": "2024-09-16 21:26:23",
"accountId": "A3093434",
"issueName": "Dev DocuSign Offering",
"orderId": "1001604991",
"accountName": "ChelseaTesting TEST",
"offeringId": "1624104",
"totalAmount": "27.000000",
"transactionType": "WIRE",
"approvalStatus": "Pending",
"kycStatus": "Disapproved",
"amlStatus": "Auto Approved",
"orderStatus": "CREATED",
"esignstatus": "NOTSIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "1951749",
"createdDate": "2024-09-13 22:32:50",
"accountId": "A3083171",
"issueName": "OAuth 1",
"orderId": "1001592833",
"accountName": "Chelsea Test Account 12",
"offeringId": "1685476",
"totalAmount": "3.120000",
"transactionType": "TBD",
"approvalStatus": "Pending",
"kycStatus": "Auto Approved",
"amlStatus": "Auto Approved",
"orderStatus": "CREATED",
"esignstatus": "NOTSIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "1951748",
"createdDate": "2024-09-13 22:32:39",
"accountId": "A3083171",
"issueName": "OAuth 1",
"orderId": "1001592832",
"accountName": "Chelsea Test Account 12",
"offeringId": "1685476",
"totalAmount": "7.800000",
"transactionType": "CHECK",
"approvalStatus": "Pending",
"kycStatus": "Auto Approved",
"amlStatus": "Auto Approved",
"orderStatus": "CREATED",
"esignstatus": "SIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "1951747",
"createdDate": "2024-09-13 22:32:28",
"accountId": "A3083171",
"issueName": "OAuth 1",
"orderId": "1001592831",
"accountName": "Chelsea Test Account 12",
"offeringId": "1685476",
"totalAmount": "6.240000",
"transactionType": "WIRE",
"approvalStatus": "Pending",
"kycStatus": "Auto Approved",
"amlStatus": "Auto Approved",
"orderStatus": "SETTLED",
"esignstatus": "SIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
},
{
"row_id": "1951742",
"createdDate": "2024-09-13 22:29:32",
"accountId": "A3092253",
"issueName": "OAuth 1",
"orderId": "1001592828",
"accountName": "Chelsea Testing",
"offeringId": "1685476",
"totalAmount": "6.240000",
"transactionType": "WIRE",
"approvalStatus": "Pending",
"kycStatus": "Disapproved",
"amlStatus": "Auto Approved",
"orderStatus": "CREATED",
"esignstatus": "NOTSIGNED",
"clientName": "Chelsea Test Client",
"field1": ""
}
POST /v3/getPaymentInfo
This method returns the full trade record for a single trade, together with payment-processor details for the associated fund move. When the trade's transactionType is CREDITCARD, a ccDetails object describing the Vantiv credit-card transaction is included. When the transactionType is ACH and an ACH fund move exists, an achDetails object is included instead.
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID generated by the API |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getPaymentInfo
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d tradeId=685427152
Response
Returns TradeFinancialDetails, an object containing the trade record and, conditionally, payment-processor details.
| Field | Type | Description |
id | string | Internal row ID of the trade record |
developerAPIKey | string | Masked developer API key |
offeringId | string | Offering ID the trade was placed against |
accountId | string | Account ID of the investing account |
partyId | string | Party ID of the primary party on the account |
party_type | string | Type of party (IndivACParty, EntityACParty) |
escrowId | string | Escrow ID, or null |
orderId | string | Trade (order) ID |
transactionType | string | Transaction Type as ACH / WIRE / CHECK / CREDITCARD / TBD / IRA / EXTERNAL CREDIT CARD / EXTERNAL ACH / NCPS CUSTODY ACCOUNT |
totalAmount | string | Dollar amount of the trade |
totalShares | string | Number of units/shares |
orderStatus | string | Trade Status: CREATED / FUNDED / UNWIND PENDING / UNWIND SETTLED / SETTLED / CANCELED |
createdDate | string | Date the trade was created (YYYY-MM-DD HH:MM:SS) |
createdIpAddress | string | Requested IP address |
errors | string | Error description, if any |
documentKey | string | Subscription document key |
esignStatus | string | Subscription document e-sign status (e.g. SIGNED, NOTSIGNED) |
users | string | Reserved |
field1 | string | Custom Field 1 |
field2 | string | Custom Field 2 |
field3 | string | Custom Field 3 |
RRApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
RRName | string | Registered representative name |
RRApprovalDate | string | Approval date (MM-DD-YYYY) |
PrincipalApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
PrincipalName | string | Principal name |
PrincipalDate | string | Principal date (MM-DD-YYYY) |
archived_status | string | 0 / 1 |
closeId | string | closeId |
eligibleToClose | string | yes / no |
ccDetails | object | Present only when transactionType is CREDITCARD. See below. |
achDetails | object | Present only when transactionType is ACH and an ACH fund move exists. See below. |
ccDetails object fields:
| Field | Type | Description |
accountId | string | Account ID |
tradeId | string | Trade (order) ID |
offeringId | string | Offering ID |
totalAmount | string | Charged amount |
vantivTransactionId | string | Vantiv transaction ID |
vantivTransactionMessage | string | Vantiv transaction message (e.g. Approved) |
vantivTokenMessage | string | Vantiv tokenization message |
RefNum | string | Reference number |
errors | string | Error description, if any |
transactionstatus | string | Credit-card transaction status (e.g. Approved) |
fundStatus | string | Fund status (e.g. Submitted) |
createdDate | string | Created date (YYYY-MM-DD HH:MM:SS) |
updatedDate | string | Updated date (YYYY-MM-DD HH:MM:SS) |
achDetails object fields:
| Field | Type | Description |
accountId | string | Account ID |
tradeId | string | Trade (order) ID |
offeringId | string | Offering ID |
totalAmount | string | Transfer amount |
Accountfullname | string | Bank account holder name |
RefNum | string | Reference number |
errors | string | Error description, if any |
fileId | string | ACH batch file ID |
transactionstatus | string | ACH transaction status |
fundStatus | string | Fund status |
createdDate | string | Created date (YYYY-MM-DD HH:MM:SS) |
updatedDate | string | Updated date (YYYY-MM-DD HH:MM:SS) |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"TradeFinancialDetails": {
"id": "956947",
"developerAPIKey": "XXXXXXXXXXXXXXX",
"offeringId": "25205",
"accountId": "A49501",
"partyId": "P28759",
"party_type": "IndivACParty",
"escrowId": null,
"orderId": "114431043",
"transactionType": "CREDITCARD",
"totalAmount": "1959.600000",
"totalShares": "800.000000",
"orderStatus": "CREATED",
"createdDate": "2021-01-06 06:58:38",
"createdIpAddress": "103.114.208.58",
"errors": "",
"documentKey": "",
"esignStatus": "NOTSIGNED",
"users": "",
"field1": "",
"field2": "",
"field3": "",
"RRApprovalStatus": "Pending",
"RRName": "",
"RRApprovalDate": "",
"PrincipalApprovalStatus": "Pending",
"PrincipalName": "",
"PrincipalDate": "",
"archived_status": "0",
"closeId": "",
"eligibleToClose": "no",
"ccDetails": {
"accountId": "A49501",
"tradeId": "114431043",
"offeringId": "25205",
"totalAmount": "1959.600000",
"vantivTransactionId": "83985531626818743",
"vantivTransactionMessage": "Approved",
"vantivTokenMessage": "Account number was previously registered",
"RefNum": "491823605",
"errors": "",
"transactionstatus": "Approved",
"fundStatus": "Submitted",
"createdDate": "2021-01-06 06:58:59",
"updatedDate": "2021-01-07 05:57:00"
}
}
}
POST /v3/getTrade
This method is used to get the all the details of all the trades for an account. The Account ID is required to get the details.
Parameters
| Parameter | Type | Required | Description |
accountId | string | Yes | Account ID generated by the API |
tradeId | integer | No | Trade ID generated by the API |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getTrade
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d accountId=A12345
-d tradeId=232242322
Response
| Field | Type | Description |
partyDetails | string | Returns the trade details as an array |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"partyDetails": [
{
"id": "789505",
"developerAPIKey": "XXXXXXXXXXXXXXX",
"offeringId": "44238",
"accountId": "A49501",
"partyId": "P28759",
"party_type": "IndivACParty",
"escrowId": null,
"orderId": "384003730",
"transactionType": "ACH",
"totalAmount": "100.000000",
"totalShares": "1.000000",
"orderStatus": "CREATED",
"createdDate": "2018-07-06 12:27:07",
"createdIpAddress": "110.172.170.246",
"errors": "",
"documentKey": "",
"esignStatus": "NOTSIGNED",
"users": "",
"field1": null,
"field2": null,
"field3": null,
"archived_status": "0",
"RRApprovalStatus": "Pending",
"RRName": "Test",
"RRApprovalDate": "09-10-2019",
"PrincipalApprovalStatus": "Pending",
"PrincipalName": "Test",
"PrincipalDate": "09-10-2019",
"closeId": null,
"eligibleToClose": "no"
},
{
"id": "789506",
"developerAPIKey": "XXXXXXXXXXXXXXX",
"offeringId": "44238",
"accountId": "A49501",
"partyId": "P28759",
"party_type": "IndivACParty",
"escrowId": null,
"orderId": "480932944",
"transactionType": "WIRE",
"totalAmount": "100.000000",
"totalShares": "1.000000",
"orderStatus": "CREATED",
"createdDate": "2018-07-06 12:27:46",
"createdIpAddress": "110.172.170.246",
"errors": "",
"documentKey": "",
"esignStatus": "NOTSIGNED",
"users": "",
"field1": null,
"field2": null,
"field3": null,
"archived_status": "0",
"RRApprovalStatus": "Pending",
"RRName": "Test",
"RRApprovalDate": "09-10-2019",
"PrincipalApprovalStatus": "Pending",
"PrincipalName": "Test",
"PrincipalDate": "09-10-2019",
"closeId": null,
"eligibleToClose": "no"
}
]
}
POST /v3/getTradeNote
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID that is generated by the API once a trade is created (createTrade) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getTradeNote
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d tradeId=744564320
Response
| Field | Type | Description |
notesDetails | string | Returns the trade notes details as an array |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"notesDetails": [
{
"developerAPIKey": "XXXXXXXXXXXXXXX",
"noteId": "2820",
"authorname": "Prabhu",
"note": "test",
"tradeId": "744564320",
"createdDate": "2022-03-16",
"createdIP": "117.221.66.35"
},
{
"developerAPIKey": "XXXXXXXXXXXXXXX",
"noteId": "2822",
"authorname": "Prabhu",
"note": "testing",
"tradeId": "744564320",
"createdDate": "2022-03-16",
"createdIP": "117.221.66.35"
}
]
}
POST /v3/getTradesForOffering
This method is used to retrieve the history of all trades (and details of the trades) created for an offering. The Offering ID is required as a request parameter to fetch the purchase history.
Parameters
| Parameter | Type | Required | Description |
offeringId | string | Yes | Offering ID that is generated by the API when a offering is created (createOffering) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getTradesForOffering
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d offeringId=8139
Response
Returns Offering purchased details, an array of trades placed against the offering.
| Field | Type | Description |
orderId | string | Trade (order) ID generated by the API |
accountId | string | Account ID of the investing account |
transactionType | string | Transaction Type as ACH / WIRE / CHECK / CREDITCARD / TBD / IRA / EXTERNAL CREDIT CARD / EXTERNAL ACH / NCPS CUSTODY ACCOUNT |
totalShares | string | Number of units/shares purchased |
unitPrice | string | Unit price of the offering |
totalAmount | string | Dollar amount of the trade |
orderStatus | string | Trade Status: CREATED / FUNDED / UNWIND PENDING / UNWIND SETTLED / SETTLED / CANCELED |
field1 | string | Custom Field 1 |
field2 | string | Custom Field 2 |
field3 | string | Custom Field 3 |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"Offering purchased details": [
{
"orderId": "134784730",
"accountId": "A1312164",
"transactionType": "WIRE",
"totalShares": "2.000000",
"unitPrice": "1.360000",
"totalAmount": "24.720000",
"orderStatus": "SETTLED",
"field1": "",
"field2": "",
"field3": ""
},
{
"orderId": "1001111946",
"accountId": "A971432",
"transactionType": "CREDITCARD",
"totalShares": "2.000000",
"unitPrice": "1.360000",
"totalAmount": "24.720000",
"orderStatus": "CANCELED",
"field1": "",
"field2": "",
"field3": ""
}
]
}
POST /v3/getTradeStatus
This method is used to get the current trade details as an array with the current trade status
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID generated by the API |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getTradeStatus
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d tradeId=141103099
Response
| Field | Type | Description |
tradeDetails | string | Returns the current trade details as an array with the current trade status |
| Field | Type | Description |
id | string | n/a |
developerAPIKey | string | n/a (this comes through as xxxxxxxxxxx) |
offeringId | string | Offering ID that is generated by the API when an offering is created (createOffering) |
accountId | string | Account ID of the account that is investing (this account should have one primary party) |
partyId | string | Party ID that is generated by the API once an individual party is created (createParty) |
party_type | string | Type of party (IndivACParty, EntityACParty) |
escrowId | string | escrowId |
orderId | string | trade ID |
transactionType | string | Transaction Type as ACH / WIRE / CHECK / CREDITCARD / TBD / IRA / EXTERNAL CREDIT CARD / EXTERNAL ACH / NCPS CUSTODY ACCOUNT |
totalAmount | string | Dollar amount of the trade |
totalShares | string | Number of units/shares to be purchased |
orderStatus | string | Trade Status: CREATED / FUNDED / UNWIND PENDING / UNWIND SETTLED / SETTLED / CANCELED |
createdDate | string | Date trade was created (YYYY-MM-DD HH:MM:SS) |
createdIpAddress | string | Requested IP Address |
errors | string | Error description, if any |
documentKey | string | Subscription document Key |
esignStatus | string | Indicates whether a subscription document through Docusign integration is signed |
users | string | Reserved |
field1 | string | Additional information relating to the trade. Custom Field 1 |
field2 | string | Additional information relating to the trade. Custom Field 2 |
field3 | string | Additional information relating to the trade. Custom Field 3 |
RRApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
RRName | string | Some text |
RRApprovalDate | string | Approval Date eg: MM-DD-YYYY |
PrincipalApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
PrincipalName | string | Some Text |
PrincipalDate | string | Principal Date eg: MM-DD-YYYY |
archived_status | string | 0/1 |
closeId | string | closeId |
eligibleToClose | string | yes/no |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"tradeDetails": [
{
"id": "2010692",
"developerAPIKey": "XXXXXXXXXXXXXXX",
"offeringId": "1682053",
"accountId": "A2923641",
"partyId": "P2488725",
"party_type": "IndivACParty",
"escrowId": null,
"orderId": "1001630791",
"transactionType": "CHECK",
"totalAmount": "100.000000",
"totalShares": "50.000000",
"orderStatus": "CREATED",
"createdDate": "2024-11-04 21:34:26",
"createdIpAddress": null,
"errors": "",
"documentKey": "",
"esignStatus": "NOTSIGNED",
"users": "",
"field1": "",
"field2": "",
"field3": "",
"RRApprovalStatus": "Pending",
"RRName": null,
"RRApprovalDate": null,
"PrincipalApprovalStatus": "Pending",
"PrincipalName": null,
"PrincipalDate": null,
"archived_status": "0",
"closeId": null,
"eligibleToClose": "no"
}
]
}
GET /v3/trades
Fetch a list of trade resources associated with this client. Trades are ordered by created date with the most recently created trade at index zero.
Permissions
This method requires the scope trade.read.pii_high to be granted to the calling API key.
This scope can be assigned by system admins through the API or Transact Portal. A PII high scope is required because responses contain sensitive information like names, addresses, tax identification numbers, and information about investor eligibility.
Authorization
Header: Authorization: Bearer clientId:apiKey
Query Parameters
| Parameter | Type | Default | Description |
offset | integer | 0 | The row index at which to begin the query. Zero represents the first trade in the list. |
limit | integer | 10 | The maximum number of trades to return. Max value is 500. |
deleted | boolean | false | Include deleted trades in response. |
filter | string (JSON) | | Filter results by specific fields. |
Filtering
For more information see Working with List Endpoints.
Response Fields
The response is a standard list envelope: statusCode, statusDesc, a trades array of trade objects, and a pagination object. Each object in trades contains the following fields.
| Field | Type | Description |
tradeId | string | Trade (order) ID generated by the API |
accountId | string | Account ID of the investing account |
offeringId | string | Offering ID the trade was placed against |
partyId | string | Party ID of the primary party on the account |
party_type | string | Type of party (IndivACParty, EntityACParty) |
transactionType | string | Transaction Type as ACH / WIRE / CHECK / CREDITCARD / TBD / IRA / EXTERNAL CREDIT CARD / EXTERNAL ACH / NCPS CUSTODY ACCOUNT |
totalShares | string | Number of units/shares |
totalAmount | string | Dollar amount of the trade |
tradeStatus | string | Trade Status: CREATED / FUNDED / UNWIND PENDING / UNWIND SETTLED / SETTLED / CANCELED |
paymentStatus | string | Payment status for the trade's fund move |
signoption | string | Subscription signing option configured for the trade |
esignStatus | string | Subscription document e-sign status (e.g. SIGNED, NOTSIGNED) |
documentKey | string | Subscription document key |
escrowId | string | Escrow ID, or null |
eligibleToClose | string | yes / no |
closeId | string | closeId |
errors | string | Error description, if any |
field1 | string | Custom Field 1 |
field2 | string | Custom Field 2 |
field3 | string | Custom Field 3 |
RRName | string | Registered representative name |
RRApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
RRApprovalDate | string | Approval date (MM-DD-YYYY) |
PrincipalName | string | Principal name |
PrincipalApprovalStatus | string | "Pending", "Approved", "Disapproved", or "Under Review" |
PrincipalDate | string | Principal date (MM-DD-YYYY) |
archived | string | 0 / 1 |
createdDate | string | Date the trade was created (YYYY-MM-DD HH:MM:SS) |
updatedDate | string | Date the trade was last updated (YYYY-MM-DD HH:MM:SS) |
The pagination object contains:
| Field | Type | Description |
totalRecords | integer | Total number of trades matching the query (ignoring offset/limit) |
startIndex | integer | Zero-based index of the first returned record |
endIndex | integer | Zero-based index of the last returned record |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"trades": [
{
"tradeId": "1001630791",
"accountId": "A2923641",
"offeringId": "1682053",
"partyId": "P2488725",
"party_type": "IndivACParty",
"transactionType": "CHECK",
"totalShares": "50.000000",
"totalAmount": "100.000000",
"tradeStatus": "CREATED",
"paymentStatus": "",
"signoption": "0",
"esignStatus": "NOTSIGNED",
"documentKey": "",
"escrowId": null,
"eligibleToClose": "no",
"closeId": null,
"errors": "",
"field1": "",
"field2": "",
"field3": "",
"RRName": null,
"RRApprovalStatus": "Pending",
"RRApprovalDate": null,
"PrincipalName": null,
"PrincipalApprovalStatus": "Pending",
"PrincipalDate": null,
"archived": "0",
"createdDate": "2024-11-04 21:34:26",
"updatedDate": "2024-11-04 21:34:26"
}
],
"pagination": {
"totalRecords": 1,
"startIndex": 0,
"endIndex": 0
}
}
POST /v3/updateTradeNote
Parameters
| Parameter | Type | Required | Description |
noteId | string | Yes | Note ID that is generated by the API once a trade note is created (addTradeNote) |
authorName | string | No | Author Name |
notes | string | No | Notes |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/updateTradeNote
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d authorName=authorName
-d notes=notes
-d noteId=1456
Response
| Field | Type | Description |
notesDetails | string | Array of trade notes includes all information of the matched noteId |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"notesDetails": [
true,
[
{
"noteId": "2821",
"authorname": "Prabhu",
"note": "testing2",
"createdDate": "2022-03-16"
}
]
]
}
POST /v3/updateTradeStatus
This method is used to update the status of a trade. CREATED - Investment has been created and funds have not yet been received; FUNDED - Funds have been received in escrow; UNWIND PENDING - The funds have been received in escrow and is pending to be returned to the investor; UNWIND SETTLED - The funds have been received in escrow then returned back to the investor; SETTLED - The investment has been accepted by the Issuer and funds have been released from escrow to the Issuer;
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID generated by the API |
accountId | string | Yes | Account ID generated by the API |
orderStatus | string | No | Trade Status: CREATED | FUNDED | UNWIND PENDING | UNWIND SETTLED | SETTLED. Omit it, or send it empty or null, to leave the trade status unchanged and update only the other fields supplied. The value is not validated against this list and is stored as provided (including casing); only FUNDED (case-insensitive) triggers fund-movement side effects. |
errDesc | string | No | Transact API's Error Description |
field1 | string | No | field1 |
field2 | string | No | field2 |
field3 | string | No | field3 |
closeId | string | No | closeId |
RRName | string | No | RRName |
RRApprovalDate | string | No | RRApprovalDate |
RRApprovalStatus | string | No | RRApprovalStatus |
PrincipalName | string | No | PrincipalName |
PrincipalDate | string | No | PrincipalDate |
PrincipalApprovalStatus | string | No | PrincipalApprovalStatus |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/updateTradeStatus
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d tradeId=141103099
-d accountId=A11501
-d orderStatus=CREATED
-d RRApprovalStatus=Pending
-d RRName=test
-d RRApprovalDate=11-11-2020
-d PrincipalApprovalStatus=Approved
-d PrincipalName=test
-d PrincipalDate=11-18-2020
-d errDesc=error
-d field1= Additional information relating to the trade. Custom Field 1
-d field2= Additional information relating to the trade. Custom Field 2
-d field3=Additional information relating to the trade. Custom Field 3
-d closeId=closeId
Response
| Field | Type | Description |
tradeDetails | string | Array of trade details (partyId, offeringId, orderStatus, RRApprovalStatus, RRName, RRApprovalDate, PrincipalApprovalStatus, PrincipalName, PrincipalDate, field1, field2, field3, closeId, eligibleToClose) |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"tradeDetails": [
{
"partyId": "P00197",
"offeringId": "32957",
"orderStatus": "FUNDED",
"RRApprovalStatus": "Pending",
"RRName": "test",
"RRApprovalDate": "11-11-2020",
"PrincipalApprovalStatus": "Approved",
"PrincipalName": "test",
"PrincipalDate": "11-18-2020",
"field1": "",
"field2": "",
"field3": "",
"closeId": null,
"eligibleToClose": "no"
}
]
}
POST /v3/updateTradeTransactionType
Update trade transaction type
Parameters
| Parameter | Type | Required | Description |
tradeId | integer | Yes | Trade ID generated by the TAPI |
transactionType | string | Yes | Transaction type: ACH / WIRE / CHECK / TBD / IRA / CREDITCARD / EXTERNAL-ACH / EXTERNAL-CREDITCARD / NCPS-CUSTODY-ACCOUNT. Values are case-sensitive as listed; CREDITCARD also accepts case-insensitive variants with spaces or underscores. Any other value returns error 705. |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/updateTradeTransactionType
-d clientID=someclientid
-d developerAPIKey=somedeveloperkey
-d tradeId=916169323
-d transactionType=TBD
Response
| Field | Type | Description |
TradeDetails | string | Array of trade details (orderId, id, transactionType, developerAPIKey (always masked), offeringId, accountId, partyId, party_type, totalAmount, totalShares, orderStatus) |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"TradeDetails": [
{
"orderId": "916169323",
"id": "787999",
"transactionType": "TBD",
"developerAPIKey": "XXXXXXXXXXXXXXX",
"offeringId": "81272",
"accountId": "A49501",
"partyId": "P28759",
"party_type": "IndivACParty",
"totalAmount": "1000.000000",
"totalShares": "10.000000",
"orderStatus": "CREATED"
}
]
}