Connect® Clients

For Connect® clients, the REST API to Import Transactions enables agencies to programmatically import transactional policy data and documents into the InsCipher portal, streamlining the process of managing and tracking Surplus Lines policies.

Introduction

InsCipher has an API Endpoint available for your agency to programmatically import transactional policy data and documents into InsCipher’s online portal. In most cases, in order to take advantage of this API, you will need your IT team to be able to extract policy data and documents out of your policy management system, map the fields, and then submit the data electronically through our API endpoint in a JSON format. Most of our clients that have set this up, import batches daily into InsCipher. All batches imported, will be logged and tracked in InsCipher with a batch import ID number. This number also gets associated with individual transactions. InsCipher does have the ability to make certain required fields optional, depending on your workflow. If you have questions on this process or want to get set up, please contact [email protected].

👍

TIP:

There are different methods or approaches to importing transactions using this REST API. If you need a quick solution to test out an import and do not currently have one, consider utilizing Postman or make a test call on our Transaction Import schema page. If you are new to our schemas section, we recommend you start with an overview of how to interact with them here.

📘

Notes:

  • Field Requirements:
    We recommend that you add ALL fields marked as Required = ✓ in the field tables below. If there are values that do not exist in your agency system, you may need to hard code these as null and manually add the data after import.
  • Document Import:
    While this endpoint allows for the import of documents - they can also be imported separately from transactions via API using your internal invoice number or InsCipher Transaction ID. To learn more, go here.

🚧

Before Getting Started:

InsCipher utilizes data tables outside of the documentation for every request to provide the most up to date requirements for your integration. Depending on your configuration, you may need to reference the following tables, which will be mentioned further down in the documentation.

Feel free to open these in a new window or bookmark for future use:

Workflow Overview

The Policy Transaction import API is designed to be completed in two steps:

Step 1: POST JSON batch file to the Import Endpoint

Run the POST request to import specific transactional details formatted with specific header names to start the import process. This detail can also include a link to documents related to the transactions. See the section below for sample JSON request and field descriptions.

Step 2: Send GET request to get detailed Import Status file to the Import Endpoint

Run a request to GET the details on whether or not a specific transaction was imported successfully or if there were any import errors.

Read more about Batch Import Status request

Request Method

Authentication and URL

A user is authenticated using an API key, which is provided by your InsCipher implementation specialist. The API key is typically around 40 characters.

API Key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

📘

Note:

Your API Key can be reset at any time by the primary Filing Agency Admin logging into the InsCipher Connect portal. After logging in, go to "My Profile" by first clicking the arrow next to the user name in the top right corner. Afterward, click the button to “GET NEW API KEY”.

HTTP Method: POST

URL Endpoint (API key in Header):

https://surpluslines.inscipher.com/api/v4/transaction.json?

If you are using the header method (default for new users), ensure that the API key is included in the header.

Example:

JSON Request Sample

[{
"id": "201702028950",
"policy_number": "CA20170228-05",
"policy_effective_date": "2017-02-01",
"policy_expiration_date": "2018-02-01",
"transaction_effective_date": "2017-02-01",
"expiring_policy_number": "CA20170228-04",
"invoice_date": "2017-02-01",
"invoice_number" : "INVN-10001",
"transaction_type": "PN",
"policy_type": "standard",
"account_written_as": "B",
"rpg": 1,
"layered_risk": 1,
"broker_of_record": 1,
"risk_retention_group": 1,
"purchasing_group_name": "Cal Association",
"risk_description": "General Accidental Coverage",
"ecp": 0,
"exempt": 0,
"multi_state": 0,
"policy_limit": 0.00,
"property_limit": 0.00,
"transaction_line_of_business_list": "GEN-1001|GEN-1002|GEN-1003", 
"transaction_line_of_business_coverage": "950.75|2000.25|157.50",
"non_admitted_insurer_code_list": "39381|AA-1120841|12833",
"non_admitted_insurer_code_coverage": "50|30|20",
"syndicate_list": "AA-1120131|AA-1120124",
"syndicate_list_coverage": "60|40",
"premium": 3108.50,
"agency_fee": 200.00,
"inspection_fee": 0.00,
"collection_fee": 0.00,
"sl_tax": 117.00,
"stamping_fee": 7.80,
"sl_service_charge": 0.00,
"municipal_fee": 0.00,
"fm_tax": 0.00,
"empa_tax": 0.00,
"total": 4224.80,
"commission_received": 0,
"mailing_insured_name": "Westfield Galleria at Roseville",
"mailing_address": "1151 Galleria Blvd",
"mailing_city": "Roseville",
"mailing_zip_code": "95678",
"mailing_state_code": "CA",
"insured_entity": "individual",
"insured_email": "[email protected]",
"insured_phone": "212-456-7890",
"insured_county": "Washington",
"physical_same_as_mailing": 1,
"stamping_fee_invoice_id" : "INVST-20001",
"sl_tax_invoice_id" : "INVSL-30001",
"agent_id" : "",
"agent_notes" : "test notes",
"business_group_id" : "Division 1",
"customer_code" : "OPT CUST CODE12",
"retail_producer_name": "Producer Name",
"retail_producer_license": "12654",
"retail_agency_name": "Producer Agency Name",
"retail_agency_license": "15456F",
"retail_address": "Demo street 1",
"retail_address2": "2nd floor",
"retail_city": "Demo City",
"retail_state": "WA",
"retail_zip": "12345",
"retail_phone_number": "801-888-8488",
"retail_email_address": "[email protected]",
"associated_producer" "123456",
"sop_name": "SOP Name",
"sop_address": "Demo street 1",
"sop_address_2": "2nd floor",
"sop_city": "Winthrop",
"sop_state": "WA",
"sop_zip": "98862",
"dc_naic": "54267|37816|49865",
"dc_date_declined": "2017-02-02|2017-02-03|2017-02-04",
"dc_declining_reason": "wrong|bad|incorrect",
"dc_representative_name": "John|Doe|Johnson",
"dc_representative_title": "Mr|Dr|Ms",
"dc_representative_email": "[email protected]|[email protected]|[email protected]",
"dc_representative_phone_number": "54|36|465",
"dc_representative_website": "demo.none|demo.none|demo.none",
"dc_who_received_the_declinations": 3,
"dc_other_person_in_office": "Some Other Person",
"dc_who_performed_diligent_search": 1,
"wind_storm_eligible_for_pool": 1,
"wind_storm_primary_amount": 10,
"wind_storm_other_coverages_deductible": 25,
"wind_storm_exclusion": 1,
"wind_storm_deductible": 0.51,
"lloyds_cover_holder_number": "",
"lloyds_cover_holder_name": "",
"transaction_documents": [{
"code": "D1DISC",
"transaction_documents": [{
"code": "D1DISC",
"url": "https://www.google.com/logos/doodles/2017/abdul-sattar-edhis-89th-birthday-5757526734798848-
res.png",
"id": 1000001
},{
"code": "POLIC",
"url": "https://www.google.com/logos/doodles/2017/abdul-sattar-edhis-89th-birthday-5757526734798848-
res.png",
"id": 100000
}]
}]

Field Descriptions and Requirements

Field Title (header must be exact on JSON)DescriptionField typeRequired
idA unique ID used for tracking imported transactions

This number will be used to identify possible duplicate transactions. Identified duplicate transactions will be excluded from being imported.
varchar (255)
policy_numberPolicy number. Non-unique field. We recommend not using a policy number like TBD if at all possible.varchar (50)
policy_effective_datePolicy effective date. This is the original effective date of the policy and not the endorsement date.date (yyyy-mm-dd)
policy_expiration_datePolicy expiration datedate (yyyy-mm-dd)
transaction_effective_dateTransaction effective date

For endorsements or cancellations, this is the endorsement or cancellation date. For New/Renewal policies, this is equal to the policy effective date.
date (yyyy-mm-dd)
expiring_policy_numberExpiring Policy Number

Only Required for Renewal type policies.
varchar (50)Depends
invoice_dateThis is the date that the policy was invoiced in most states. In GA, this is the "Revenue Recognition Date", in HI, this is the "Issued Date". For Idaho, this is the "Broker Received Date".

If omitted, the transaction effective date will be used.
date (yyyy-mm-dd)Depends
invoice_numberThis is the invoice number (or unique transaction ID) generated by your Agency Management System (AMS).

This number allows users to trace imports to existing transactions within the management system as is a value we recommend importing.

This number will be used to identify possible duplicate transactions. Identified duplicate transactions will be excluded from being imported.
varchar
transaction_typeUpdated transaction types can be found here.varchar (50)
policy_typeOptions include "standard", "master", or "cert"

If unknown, choose "standard" or leave blank
varchar (50)
account_written_asUse one of these two options:

Brokerage = B
Direct Client = DC

Use "B" if you sell through a retail agent. Use "DC" if the policy is sold directly to the insured. If omitted, the default Agency Admin setting will be used
varchar (50)
rpgRisk Purchasing Group? - If unknown, default to 0.

Yes = 1
No = 0
tinyint(1)
layered_riskLayered Risk- If unknown, default to 0.

Yes = 1
No = 0
tinyint(1)
broker_of_recordBroker of Record Change- If unknown, default to 0.

Yes = 1
No = 0
tinyint(1)
risk_retention_groupRisk Retention Group- If unknown, default to 0.

Yes = 1
No = 0
tinyint(1)
purchasing_group_nameRequired if RPG (rpg field) is set to Yes (or 1).

If not included and RPG = Yes, then the transaction will still import but will show RPG error.
varchar(255 )Depends
risk_descriptionDescription of Risk

For AK, CT, NJ, NY, OH, and PA, we require specific import codes to be used when importing.

For all other states, import this as a text value description of the coverage.

See this table for a list of the state-specific codes. To download the table, hover over the top right corner of the table, click on the three dots, and then export to CSV.
varchar(255 )Depends
ecpExempt Commercial Purchaser? - If unknown, default to 0.
Yes = 1
No = 0

If omitted, 0 (zero) value will be imported. Unless you know what this is, set this value to 0.
tinyint(1)
exemptIs the Insured/Entity considered tax-exempt by the state? - If unknown, default to 0.

Exempt Yes = 1
Exempt No = 0

Unless you know that the insured/Entity is Tax Exempt, set the value to 0 or leave it blank (the system will default to 0). Currently Required only for the state of Utah.
tinyint(1)
multi_stateDoes the insured’s liability reside in multiple states? - If unknown, default to 0.

Multi state Yes = 1
Multi state No = 0

InsCipher does not calculate Multi-state surplus lines tax breakdowns. With NIMA dissolving in 2016, InsCipher reports 100% of the premium to the home state of the insured and bases the tax percentages off that state. If omitted, the default is No (0). There are only a few states where InsCipher has enabled this field.

Note: Only these states allow multi-state

FL, CA, ID, WV, KY
tinyint(1)
policy_limitThis is the aggregate policy limit/liability amount associated with the policy.

The requirement depends on State and Agency settings. There are about a dozen states that require this information when filing. For this reason, we recommend that you include the policy limit on every submission. If it isn't required by the state then this amount will be ignored. However, for a specific list, go here.

In PA, this is for the "Casualty Limit" only.
integer(12)Depends
property_limitProperty Policy Limit

The requirement depends on State and Agency settings. We recommend that you include the property policy limit on every submission. If it isn't required by the state then this amount will be ignored.

Currently, this field only applies to PA.
integer(12)Depends
transaction_line_of_business

OR for multiple lines of business use:

transaction_line_of_business_list
This is an InsCipher-specific import code. We recommend using the Generic Import codes, which can be found here: Generic Line of Business / Coverage Code List If you want to use state-specific codes, you can. These can be found here.

For policies with a single LOB, enter the single import code. If there are multiple LOBs, then these would be added and separated by the pipe symbol “|”.

The requirement depends on whether the state requires a line of business breakdown. As this varies by state, we recommend importing all transactions with multiple lines of businesses, where applicable. If the state only allows for a single LOB when reporting, our system would select the coverage that is associated with the greatest premium amount $.
string
transaction_line_of_business_coverageThe premium breakout (rounded to the nearest cent) without the dollar sign in the string.

Broken-out premiums should be separated by a pipe symbol “|” and should be in the same order as the transaction_line_of_buisness_list.

Whether there is a single line of business or multiple, the premium total should always equal the total added in the premium field above.
string
non_admitted_insurer_code

OR for multiple insurance companies use:

non_admitted_insurer_code_list
This is the NAIC code associated with the insurer. Refer to the Insurance Company import list which can be downloaded here.

For policies with multiple insurance companies, provide the NAIC insurer code list. Multiple values are separated by the pipe symbol “|”.

For Lloyd's policies, use “AA-1122000”. Also, review syndicate_list and syndicate_list_coverage.

This requirement depends on the state requiring an insurance company breakdown. As this varies by state, we recommend importing all transactions with multiple insurance companies, where applicable.

Example: 26883|35351

Must also provide details in non_admitted_insurer_code_coverage
Sample fields with Multi-Companies:

“non_admitted_insurer_code_list": "26883|35351",
"non_admitted_insurer_code_coverage”: ”60|40”
string
non_admitted_insurer_code_coverageApplicable percentage breakdown. For single insurance companies, list "100" here. For multiple insurance companies, list the breakout. This value would be the percentage breakdown in 100-based values (without the “%” sign). List these in the same order as the non_admitted_insurer_code_list. Multiple values are separated by the pipe symbol “|”.

The requirement depends on whether the state requires an insurance company breakdown. As this varies by state, we recommend importing all transactions with multiple insurance companies, where applicable. If a state doesn't allow for multiple to be reported, then our system would select the carrier with the greatest percentage and report the amount with that carrier.

Example: 60|40
string
syndicate_listSyndicate list breakdown for Lloyd's ONLY policies, for mult-carrier policies that have Lloyd's and non-Lloyd's carriers, please refer to the note below.

Multiple syndicate codes should be separated by the pipe symbol “|”.

The requirement depends on agency settings and if the state requires a syndicate list breakdown when filing. To simplify the import process, we recommend that you import all Lloyd's policies with a syndicate list breakdown (if possible). If the state does not require it, the breakdown will be ignored.

Example:

"non_admitted_insurer_code": "AA-1122000", "syndicate_list": "AA-1120131|AA-1120124", "syndicate_list_coverage": "60|40"

Syndicate lists are required for multiple states. A full list can be found here:

NOTE: Should you have Lloyd's and Non-Lloyd's carriers, then import transactions with multiple insurance company breakouts where the syndicates would be included in this breakout rather than as a separate syndicate field.
stringDepends
syndicate_list_coverageSyndicate list breakdown percentages listed as a whole number without the percentage sign "%".

Multiple values are separated by pipe the symbol “|”. Keep the percentages in the same order as the list above.

The total amount for the array must equal up to 100.
stringDepends
premiumPolicy premium

If omitted 0 (zero) amount will be imported
decimal(12, 2)
agency_feePolicy / Broker / Agency Fee or other revenue-generating fee charged and retained by the brokerage to cover admin costs.

If omitted 0 (zero) amount will be imported
decimal(12, 2)
inspection_feeInspection / Audit / Underwriting Fee or fee retained or required to be charged by the carrier.

If omitted 0 (zero) amount will be imported
decimal(12, 2)
collection_feeCollection Fee, which is a fee charged to the insured for the collection of the invoiced amount.

Only applicable to KY. This is a non-taxable fee.

If omitted or left null, this will be imported as "0" (zero).
decimal(12, 2)
sl_taxSurplus Lines Tax (name may vary slightly by state).

The requirement depends on the Agency account setting if tax import is optional.

If left null, 0 (zero) amount will be imported.
decimal(12, 2)
stamping_feeThe requirement depends on the Agency account setting if tax import is optional.

If applicable in the state and the amount is left null, then 0 (zero) amount will be imported.
decimal(12, 2)
sl_service_chargeCurrently active only in the states of OR and MS.

If applicable in the state and the amount is left null, then 0 (zero) amount will be imported.
decimal(12, 2)
municipal_feeCurrently active only in KY.

If applicable in the state and the amount is left null, then 0 (zero) amount will be imported.
decimal(12, 2)
fm_taxFire Marshal Tax based on Line of Business. Active in IL, OR, MT, and SD and is based on premium amount.

The requirement depends on the Agency account setting if tax import is optional.

If applicable in the state and the amount is left null, then 0 (zero) amount will be imported.
decimal(12, 2)
empa_taxEMPA tax is active in the state of FL and is based on Line of Business. This value is also used (field is renamed on the UI) as the CT Healthy Home Assessment for property type coverages in CT.

If applicable in the state and the amount is left null, then 0 (zero) amount will be imported.
decimal(12, 2)
totalWe recommend leaving this as null

total amount = premium + all taxes + all policy fees.

If omitted, the system will sum up and import the total automatically.
decimal(12, 2)
commission_receivedIs commission received? Currently only applies to NH.

Yes = 1
No = 0

If the commission is received, policy fees cannot be charged. If omitted, a 0 (zero) value will be imported.
tinyint(1)
mailing_insured_nameFull insured name as it appears in policy documentsvarchar(100)
mailing_addressInsured mailing addressvarchar(255)
mailing_address2Insured mailing address line 2 (if applicable)varchar(255)
mailing_cityInsured mailing cityvarchar(100)
mailing_zip_codeInsured mailing zip codevarchar(20)
mailing_state_codeInsured mailing state. 2 letter state code abbreviation.

Example: "CA" = California or "FL" = Florida
varchar(20)
insured_emailEmail address for the insuredvarchar(100)Depends
insured_phonePhone Number for the insuredvarchar(100)Depends
insured_countyMailing Countyvarchar(100)Depends
insured_entityInsured entity types are used for states that may consider certain entity types tax exempt. If omitted, "commercial" will be used.

Insured Entity Types are listed below:

Import Code
individual
commercial
governmental
federal
tribal
hospital_alliance
state_approved_tax_exempt


Currently only applies to SC, NC, TN, FL & TX.

If known, this can be imported for every state and InsCipher will ignore the value in the states where it isn't applicable.
varchar(100)Depends
physical_same_as_mailingIf the Physical Address is the same as the Mailing State, then set this value = 1

If the Physical Address is NOT the same as the Mailing State, set this value = 0.

IMPORTANT: If you make the physical state the same as the mailing state then you will need to make sure that both addresses are added with valid "States" codes or you will receive an import error.
tinyint(1)
physical_addressPhysical address

Required if Physical State is NOT the same as Mailing State.
varchar(255)Depends
physical_address2Physical address line 2varchar(255)Depends
physical_cityPhysical City

Required if Physical State is NOT the same as Mailing State.
varchar(100)Depends
physical_zip_codePhysical zip code

Required if Physical State is NOT the same as Mailing State.
varchar(20)Depends
physical_state_codePhysical state. 2 letter state code

Required if Physical State is NOT the same as Mailing State.
varchar(20)Depends
retail_producer_nameRetail Producer Name (ie: John Smith)

Required for filing in DE, OR, MS, MO, WA, and CA if the business is written through a Retail Agent/Producer.
varchar(255)Depends
retail_producer_licenseRetail Producer License Number

Required for filing in DE, OR, MS, MO, WA, and CA if the business is written through a Retail Agent/Producer.
varchar(255)Depends
retail_agency_nameRetail Agency Name (ie: Smith Insurance Agency)

Required for filing in DE, OR, MS, MO, WA, and CA if the business is written through a Retail Agent/Producer.
varchar(255)Depends
retail_agency_licenseRetail Agency License Numbervarchar(255)Depends
retail_addressRetail Producer’s Address Line 1

Required in DE, OR, MS, MO, WA, and CA if the business is written through a Retail Agent/Producer.
varchar(255)Depends
retail_address2Retail Producer’s Address Line 2

Required in DE, OR, MS, and WA if the business is written through a Retail Agent/Producer.
varchar(255)Depends
retail_cityRetail Producer City Location

Required in DE, OR, MS, and WA if the business is written through a Retail Agent/Producer.
varchar(100)Depends
retail_stateRetail Producer State Location

Required in DE, OR, MS, and WA if the business is written through a Retail Agent/Producer.
varchar(20)Depends
retail_zipRetail Producer Zip Code Location

Required in DE, OR, MS, and WA if the business is written through a Retail Agent/Producer.
varchar(20)Depends
retail_phone_numberFor future developmentvarchar(255)Depends
retail_email_addressFor future developmentvarchar(255)Depends
associated_producerThis is the license number of the associated producer only if this differs from the surplus lines license. Associated producer is meant to be used when the agency license is being used to file but the state asks for a particular broker within that agency to be listed. It is different than the "retail producer". For instance, in CA, the "associated producer" is the “transactor” for the policy.

Only applicable in PA, CA
varchar(255)Depends
business_group_idBusiness Group ID

This is if you have divisions, regions, or other business groups that you want to assign to a transaction for tracking.

This value, if imported, can be found on the Tracking tab in the filing details page of a Filing Agent/Filing Agency Admin User.

Most clients choose to leave this field blank
varchar (50)
customer_codeCustomer Code

This is if you have specific customer classifications in your management system that you want to be associated with a transaction for tracking.

This value, if imported, can be found on the Tracking tab in the filing details page of a Filing Agent/Filing Agency Admin User.

Most clients choose to leave this field blank
varchar (50)
sop_nameService Of Process Name

Currently, applies to AL and OK.

Service of Process (aka service of suit) is a clause used in the event of a failure to pay amounts claimed under the policy, insurers agree to submit to any court of competent jurisdiction in the US to accept summonses and complaints. If asked for in the portal, including the Service of Process information that is included in the policy documents.
varchar(100)Depends
sop_addressService Of Process Address

Currently, applies to AL and OK.
varchar(255)Depends
sop_address_2Service Of Process Address 2(if applicable)

Currently, applies to AL and OK.
varchar(255)Depends
sop_cityService Of Process City

Currently, applies to AL and OK.
varchar(100)Depends
sop_stateService Of Process State. 2 letter state code

Currently, applies to AL and OK.
varchar(20)Depends
sop_zipService Of Process Zip Code

Currently, applies to AL and OK.
varchar(20)Depends
dc_naicDeclining Carrier NAIC Code

Declining Carrier is an admitted insurance carrier that has declined the request for coverage.

Multiple values are separated by pipe symbol “|”.

Currently available in SC, TN, IN, NY, and CA; necessary for SL-2 creation when batch filing.

Here is a mapping sheet that describes all of the declining carrier fields.
varchar(255)Depends
dc_date_declinedDeclining Carrier Date Declined

Currently available in CA and NY; necessary for SL-2 creation when batch filing

Multiple values are separated by pipe symbol “|” and is required if there are multiple NAIC codes. If you want to view the states that eventually will begin requiring this field, please see this mapping sheet and use the filter to show those fields that are inactive.
date (yyyy-mm-dd)
dc_declining_reasonDeclining Carrier Declining Reason

Currently available in CA; necessary for SL-2 creation when batch filing

Multiple values are separated by pipe symbol “|” and is required if there are multiple NAIC codes. The value imported would be the reason why the admitted carrier declined to write the business. This value imported is a state-specific reason and should be one of the options provided. If you want to view the states that eventually will begin requiring this field, please see this mapping sheet and use the filter to show those fields that are inactive.
varchar(255)
dc_representative_nameDeclining Carrier Representative Name

Currently available in CA; necessary for SL-2 creation when batch filing
varchar(255)
dc_representative_titleDeclining Carrier Representative Title

Currently available in CA; necessary for SL-2 creation when batch filing
varchar(255)
dc_representative_emailDeclining Carrier Representative Email

Currently available in CA; necessary for SL-2 creation when batch filing
varchar(255)
dc_representative_phone_numberDeclining Carrier representative Phone Number

Currently available in CA; necessary for SL-2 creation when batch filing
varchar(255)
dc_representative_websiteFor CA Only: Necessary for SL-2 creation when not attaching SL2 Form

allows for the use of a website instead of a representative name and contact information for completion of the SL2.
varchar(255)
dc_who_received_the_declinationsFor CA Only: Necessary for SL-2 creation when not attaching SL2 Form

(for CA only) This answer pulls in to Question 1 on the SL2 and allows for either the Surplus Lines Broker or the Retail Producer information to be used.

Import Code Description
1 Surplus Lines Broker
2 Retail Producer
3 Other Person in Office
varchar(255)
dc_other_person_in_officeFor CA Only: Necessary for SL-2 creation when not attaching SL2 Form

(for CA only) This determines if the Surplus Lines Broker, Retail Producer, or someone else in their respective offices actually received the declinations, to correctly answer Question 7 on the SL2
varchar(255)
dc_who_performed_diligent_searchFor CA Only: Necessary for SL-2 creation when not attaching SL2 Form

Accepted values are as follows:

Import Code Description
1 Surplus Lines Broker
2 Retail Producer

If Account Written as = Direct Client (DC), then this value will be defaulted to "1" Surplus Lines Broker.
varchar(255)
agent_idAgent ID or Agency ID

Each Agency and Agent user is assigned an “Agent ID”. This value associates the transaction to a specific agency group or user. It is required so that InsCipher knows which agency to associate with the transaction.

To get this ID, you will need to log into the InsCipher Connect portal, go to Setup > User List and Settings > and view the Agency ID in the table for your Agency Admin user accounts.
integer
agent_notesAgent Notes

Populates the Agent Notes section on the Filing Details page of a Filing Agent/Filing Agency Admin user.

Include only if you want to add other information about the policy not captured in any of the other fields.
varchar (255)
umr_numberLloyd's transaction number

Required in NJ and MS if Lloyd's is a carrier on the policy.
varchar(20)Depends
sla_transaction_numberNJ Transaction Number (Format XXXXX-XX-XXXXX)

Required in NJ
Numeric (12)

XXXXX-XX-XXXXX
Depends
wind_storm_exclusionWindstorm Exclusion Flag

Flag on whether or not windstorm exclusion applies. Only applied to certain property coverages and only applies in TX and FL.

TRUE = 1
FALSE = 0
tinyint(1)Depends
wind_storm_eligible_for_poolEligible For Windstorm Pool?

Only applied to certain property coverages and only applies in FL.

TRUE = 1
FALSE = 0
BooleanDepends
wind_storm_deductionWindstorm/Hurricane Deductible

Amount of windstorm/hurricane deductible related to certain property coverages. Only applies in FL.

If not applicable, leave blank.
decimal(12, 2)Depends
wind_storm_primary_amountWindstorm Primary Amount (Coverage A)

Amount related to certain property coverages. Only applies in FL.

If not applicable, leave blank.
decimal(12, 2)Depends
wind_storm_other_coverages_deductibleAll Other Perils Deductible

Amount related to all other deductibles not mentioned in the other fields above. Only applies in FL.

If not applicable, leave blank.
decimal(12, 2)Depends
lloyds_cover_holder_numberAccording to LLoyd's, Cover Holder is a company or partnership authorized by a Managing Agent to enter into a contract or contracts of insurance to be underwritten by the members of a syndicate managed by it in accordance with the terms of a Binding Authority.

For additional details please see here
varchar (255)
lloyds_cover_holder_nameAccording to LLoyd's, Cover Holder is a company or partnership authorized by a Managing Agent to enter into a contract or contracts of insurance to be underwritten by the members of a syndicate managed by it in accordance with the terms of a Binding Authority.

For additional details please see here
varchar (255)
transaction_documentsSection for uploading transactional documents (Policies, Diligent Effort forms, etc.) during API submission. If omitted, documents will need to be added separately using the document import API. Or they can be added manually to the filing details page for each policy.(see below)Depends
└ codeDocument import code examples can be viewed here.varchar
└ urlFull document URL that can be accessed by our system and downloaded.

For security reasons, many of our clients use a temporary URL (expiring after 120 mins) with a one-time use token.
varchar (255)
└ idThe unique document ID number. This is optional and used for import tracking purposes only.integer(11)

Additional Fields Applicable For Initial Data Migration

📘

Note

We recommend bringing in the current year's transactional data in order for the system to be able to account for what filings have been filed to date. To assist in this process, we have added the following fields to make the data imported contain the correct filing and paid dates.

Field Title (header must be exact on JSON)DescriptionField typeOptional
stamping_fee_invoice_idvarchar
stamping_fee_date_paidStamping Fee Paid Date

If applicable, this value, if imported, designates the data that a filing stamping fee was paid to the state.

Note: this value cannot be forced for Utah/Idaho transactions.Stamping Fee Invoice ID

If applicable, this value, if imported, relates to any state's stamping fee invoice number. Most clients choose to leave this blank during the data migration process.

Note: this value cannot be forced for Utah/Idaho transactions.
date (yyyy-mm-dd)
sl_tax_invoice_idSL Tax Invoice ID

If applicable, this value, if imported, relates to any state's SL Tax invoice number. Most clients choose to leave this blank during the data migration process.

Note: this value cannot be forced for Utah/Idaho transactions.
varchar
sl_tax_paid_dateSL Tax Paid Date

If applicable, this value, if imported, designates the data that a filing's SL Tax was paid to the state.

Note: this value cannot be forced for Utah/Idaho transactions.
date (yyyy-mm-dd)
other_taxes_paid_dateOther Fee Paid Date

If applicable, this value can be used as a catch-all to track the date that any other state tax or fee was paid to the state.
date (yyyy-mm-dd)
unique_idUnique ID

This value is often reserved for certain state-specific ID codes, such as MO's Risk Number, IL's countersignature number, or NY's affidavit number. Import this value during your initial data migration for reference.
varchar (50)
transaction_statusTransaction Status

Value can be a number below representing the corresponding transaction status.

1 = Saved
2 = Submitted
3 = Flagged
4 = Filed
5 = Archived
7 = Void
8 = Ready to File
9 = Unregistered

Note: this value cannot be forced for Utah/Idaho transactions.
Integer (2)
date_filedDate Filed

If applicable, the date that the policy was filed with the state. If the Date Filed is added, the system will auto-default the transaction status to "Filed".

Note: this value cannot be forced for Utah/Idaho transactions.
date (yyyy-mm-dd)
license_numberLicense Number

Only will import if a valid license number exists for the same physical state.

If left blank, the system will default to the "Default License".
varchar
filing_adminFiling Admin Assigned to Filing

Only will import if a valid Filing Agency Admin or Filing Agent user exists in the company account.

If left blank, the system will default to the Filing Task Assignment set by the user settings.
varchar
migratedIndicates whether or not a transaction imported was part of the initial data migration or not

TRUE = 1
FALSE = 0
tinyint(1)

Broker Fees vs Carrier Fees

InsCipher separates fees into two buckets as these fees are taxed and reported differently depending on the state.

  1. Broker Fees - These are an agency, policy, broker, filing, or other revenue-generating or reimbursement fees charged by or retained by the broker that is not mandated by the carrier.

  2. Carrier Fees - These are inspection, audit, underwriting, or other fees charged or mandated by the carrier that is retained by the carrier.

❗️

Please note

It is important that when doing an import into InsCipher, your various fees get mapped to one of these two types so that our system can accurately determine the correct SL Tax calculations.

State Taxes and Fee Titles

InsCipher, by default, has certain state taxes and fees defaulted to these names:

a. sl_tax - Surplus Lines Tax
b. stamping_fee - Stamping Fee
c. sl_service_charge - Surplus Lines Service Charge
d. fm_tax - Fire Marshall Tax
e. empa_tax - EMPA Tax
f. municipal_fee - Municipal Tax

In some instances, we have chosen to rename tax titles for certain states instead of creating several custom fee fields. Here is a list of tax/fee titles that may vary from the default.

How Do Generic Lines of Business Import Codes Work?

InsCipher maintains a list of active coverage lists by state. To simplify the import process, we do not expect you to determine what these codes are on import. Instead, we have created Generic Import codes for you to use which can be found here. On the sheet, the generic codes (GEN-XXXX) are listed with the orange headers on the left side of the sheet. To the right, you will see state-specific codes listed with blue headers. If you import using the generic codes, then our system will automatically associate the transaction to the proper state-specific line of business upon import according to the mapping.

❗️

Generic codes

It is your responsibility to review the mapping and to determine if there are additional generic codes that need to be mapped or altered.

🚧

Note

InsCipher will accommodate adding generic codes for you as part of the implementation process. These need to be requested via email and in one single request for all adjustments needed. If changes to this mapping are requested after implementation, clients will be charged an hourly rate to add these codes as it can be a time-consuming process.

Can I Import Documents In A Separate Step?

Yes, after transactions have been imported successfully, documents can be added in a separate step. To do this, please follow the instructions outlined here.

Immediate Response Format

API automatically returns a list of all policy numbers together with import status.

Success Response

{
"batch_id": "818b1a7f66c0f6f53de2248b8eb417d5",
"transactions": [
{
"id": "20190923002",
"policy_number": "CA20170228-09",
"transaction_id": 34748,
"status": 0,
"status_message": "Processing"
}]
}

Batch Import Status Response

After the policy data has been imported, you can then use the GET request below to get specific results.

GET Import Status (All Clients)