How To set Up Carrier to TMS.doc
New TMS carrier setup.
SupplyStream UAT: https://ss-ihub-uat-web.azurewebsites.net/
SupplyStream Live: https://www.supplystream.com/
Log into SupplyStream using an admin account.
Select Admin>Carriers>Carrier List
Click Create New button.
Enter the Carrier Code and Description/Carrier Name then click Save button.
Now add the carrier to all relevant customers.
Select Admin>Carriers>Carrier Company Access.
Click Create New button.
Select the company who need access to the carrier then click Add & Close button.
Next step is need to be done back end.
- Create a CarrierService for the carrier.
- Create to CarrierProviderCarrierServiceTypeMapping.
- Create to CarrierProviderCarrierMapping.
Notes:
Change the below parameter:
INSERT INTO @Temp SELECT 'TESTINTERNATIONAL', 'TESTINTERNATIONAL' = Enter the Carrier Service Name and Carrier Service Code.
@CarrierCompanyCode = CompanyCode/CarrierCode
@CarrierCompanyName = CompanyDescription/CarrierName
@CarrierProvider = Indigina TMS
@ReleaseProfile int = 0
If value is 0, This is QA
If value is 1, This is Live
Run the below script.
SET NOCOUNT ON
DECLARE @Temp TABLE(ServiceName nvarchar(max), ServiceCode nvarchar(max))
INSERT INTO @Temp SELECT 'TESTINTERNATIONAL', 'TESTINTERNATIONAL'
DECLARE @CarrierCompanyName nvarchar(max), @CarrierCompanyCode nvarchar(max), @CarrierCompanyID uniqueidentifier, @CarrierProvider nvarchar(max), @CarrierProviderID uniqueidentifier, @CarrierServiceTypeID uniqueidentifier, @ReleaseProfile int, @NEWID1 uniqueidentifier, @NEWID2 uniqueidentifier, @NEWID3 uniqueidentifier, @UserID uniqueidentifier
SET @CarrierCompanyCode = 'TESTNL'
SET @CarrierCompanyName = 'TEST NL'
SET @CarrierProvider = 'Indigina TMS'
SET @ReleaseProfile = 0 --0-QA/UAT 1-Live
SELECT @NEWID1 = NEWID()
SELECT @NEWID2 = NEWID()
SELECT @NEWID3 = NEWID()
SELECT TOP 1 @CarrierCompanyID = CompanyID FROM Company WHERE CompanyDescription = @CarrierCompanyName AND OwnerCompanyID = CompanyID AND DisableLevel = 0 ORDER BY CreateDate
SELECT TOP 1 @CarrierProviderID = CarrierProviderID FROM CarrierProvider WHERE Name = @CarrierProvider
SELECT TOP 1 @UserID = UserID FROM Users WHERE UserName = 'SystemDefault' AND DisableLevel = 0 ORDER BY CreateDate
IF NOT EXISTS(SELECT * FROM CarrierServiceType WHERE ServiceCode IN (SELECT ServiceCode FROM @Temp))
BEGIN
INSERT INTO CarrierServiceType(CarrierServiceTypeID, CarrierID, ServiceCode, ServiceName, CreateDate, CreateUserID, DisableLevel, LastModifiedDate, LastModifiedUserID)
SELECT @NEWID1, @CarrierCompanyID, ServiceCode, ServiceName, GETUTCDATE(), @UserID, 0, GETUTCDATE(), @UserID FROM @Temp
SELECT TOP 1 @CarrierServiceTypeID = CarrierServiceTypeID FROM CarrierServiceType WHERE ServiceName IN (SELECT ServiceName FROM @Temp)
INSERT INTO CarrierProviderCarrierServiceTypeMapping (CarrierProviderCarrierServiceTypeMappingID, CarrierProviderID, CarrierServiceTypeID, MappedID, MappedCode, CreateDate, CreateUserID, DisableLevel, ReleaseProfile, LastModifiedDate, LastModifiedUserID)
SELECT @NEWID2, @CarrierProviderID, @CarrierServiceTypeID, NULL, ServiceCode, GETUTCDATE(), @UserID, 0, @ReleaseProfile, GETUTCDATE(), @UserID FROM @Temp
INSERT INTO CarrierProviderCarrierMapping (CarrierProviderCarrierMappingID, CarrierProviderID, CarrierID, CreateDate, CreateUserID, DisableLevel, MappedCode, ReleaseProfile, LastModifiedDate, LastModifiedUserID)
SELECT @NEWID3, @CarrierProviderID, @CarrierCompanyID, GETUTCDATE(), @UserID, 0, @CarrierCompanyCode, @ReleaseProfile, GETUTCDATE(), @UserID
END
ELSE
BEGIN
SELECT 'ServiceCodes already exist!!!'
END
MANUAL ADD PROVIDER SETTING / RULES
Notes: This is just an optional if customer requested for carrier.
DECLARE @CarrierProviderID uniqueidentifier, @CarrierID uniqueidentifier, @NEWID uniqueidentifier, @CarrierName nvarchar(max), @CarrierProvider nvarchar(max),
@Setting nvarchar(max), @Value nvarchar(max)
SET @CarrierName = 'P2P NL'
SET @CarrierProvider = 'Indigina TMS'
SET @Setting = 'SendParcelContent'
SET @Value = 'All'
SET @NEWID = NEWID()
SELECT TOP 1 @CarrierProviderID = CarrierProviderID FROM CarrierProvider WHERE Name = @CarrierProvider
SELECT TOP 1 @CarrierID = CompanyID FROM Company WHERE CompanyDescription = @CarrierName AND OwnerCompanyID = CompanyID AND DisableLevel = 0 ORDER BY CreateDate
INSERT INTO CarrierProviderSetting (CarrierProviderSettingID, CarrierProviderID, CustomerID, DCID, CarrierID, Setting, Value, CreateDate)
VALUES (@NEWID, @CarrierProviderID, NULL, NULL, @CarrierID, @Setting, @Value, GETUTCDATE())
Now move on to the TMS site.
URL_UAT: https://tmsuat.supplystream.com
URL Live: https://tms.supplystream.com
Notes: Each client normally has their own set identifiers with the carrier.
Example:
For Interpost each client has their own "Authentication Key"
Hermes has a Child Client ID
Royal Mail has a username / password / service occurrence per client
This will identify the client when creating labels with the carrier.
To Set Up Carrier into TMS for customer:
Log into TMS site
My Account -> Default Integration Partner -> Select Indigina iHub
Select client: Ex. Heist Studios
System Admin -> Security -> Client Entitlements
Click on customer (ex. Heist Studios)
Tick Carrier (Ex. Hermes)
Click the Save button
Entity Setup -> Carrier Setup -> Maintain Carriers
Ex. Click on Hermes
Click the Edit icon next to Heist Studios – enter details on the child client ID for Hermes and Authentication key for Interpost (screenshot below is an example for Hermes)
Child Client ID: 018
Child Client Name: Heist Studios
Click the tick icon
click the save button
NOTES:
These identify Hermes, (Don't change this)
but you can view this at
System Admin -> Settings -> Carrier Provider Settings
Click on Hermes
you will see client id etc. here.