Carrier with Rate Table

Skip to main content

Carrier with Rate Table

You are here:

This example demonstrates a possible solution for integrating a carrier that does not have an API to return rates and instead uses a static rate table. This can also be used to avoid an API that may not be consistent. The example implementation is available here.

Functionality

You must import a complete list of shipping zones by Postal/Zip Code for each shipping location to the IW External Carrier Zone table.

You must also set up an up-to-date rate price list in the IW External Carrier Zone Rate table. When rate shopping, you can find a match in the IW External Carrier Zone table by matching the Origin and Destination Codes (mapped to Postal/ZIP codes) of the shipment; this determines the zone a shipment is for. For each package in the shipment, it then filters the IW External Carrier Zone Rate table by the zone and the weight of the package. The shipping costs of all packages are added together and displayed on the Rate List page.

Setup Instructions

  1. Navigate to the Freight Integration Providers List page.
  2. Create a new record for Codeunit 66270.
  3. Fill in the following fields:
    • Code: Assign any unique identifier.
    • Name: Enter a descriptive name.
    • Execution Order: Set the processing priority.
    • Enabled: Set to true to activate.
    • API Key: Optional; can be left blank.
    • API Username: Optional; can be left blank.
    • API Password: Optional; can be left blank.
    • API URL: Optional; can be left blank.
  4. Set up Carriers and Carrier Services on the:
    1. Base Business Central on the Shipping Agents page.
    2. Dynamic Ship Carrier List page.
  1. Open a configuration package or Excel table to import freight rate data with.
  2. Populate the following tables with rate data from your carrier (each location shipping out using this carrier must have its set of defined zones).
    1. IW External Carrier Zone:
      • Origin Code: Use the first three digits of the shipping location’s Postal/ZIP Code.
      • Destination Code: Use the first three digits of the destination location’s Postal/ZIP Code (you can use full Postal/ZIP code for codes with exceptions; the system defaults to the first three digits of the ZIP/Postal Code if an exact match is not found.
      • Zone: determined by your carrier.
    2. IW External Carrier Zone Rate:
      • Zone
      • Carrier
      • Carrier Service
      • Maximum Weight
      • Rate
  3. Modify these tables as needed to fit your specific shipping rules and rate structures.

Potential Changes

The changes listed here may be necessary for your specific carrier. They are suggestions and your partner can implement these using the example project.

  • This extension was built with the intention of supporting one carrier. If there are multiple carriers with different zoning systems, we recommend duplicating the External Carrier Zone table.
  • Add more fields to the IW External Carrier Zone Rate table as necessary.
  • Add the country code to the IW External Carrier Zone table to handle international shipping to avoid postal code overlap.
  • Add another table to handle any charges that are above and beyond the base shipping rate. Pull in the package options during the GetRates procedure for the order, and map those options to its applicable charge from the new the table.
Was this article helpful?
0 out Of 5 Stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
5
How can we improve this article?
Please submit the reason for your vote so that we can improve the article.
Need help?

Leave A Comment

Table of Contents
Go to Top