2. Creating a new suspension with footnotes

A tariff suspension or tariff relief is where the normal import duty is removed or reduced (“suspended”) for imports. Suspensions are often time-limited whereas reliefs are often more permanent. Read more about suspensions and reliefs.

As with a Most Favoured Nation rate, a suspension is implemented using a measure attached to a specific commodity. The two main differences are that a suspension uses a different measure type and that suspension measures often have explanatory footnotes attached.

A “footnote” is a short explanatory text that can be attached to a measure or commodity code. Footnotes are to advise traders about special conditions associated with a measure or code. Read more about footnotes.

Footnotes are grouped into different types – e.g. footnotes to do with sanctions, or footnotes to do with export control. Most footnotes that are applied to suspensions are of the “duty suspension” type. The types are just for grouping and don’t serve any special purpose.

Creating a new suspension will often involve creating a new duty suspension footnote as well. The footnote has to be created first and then the suspension measure is created next.

In places where the suspension only covers part of a commodity code they are sometimes implemented using additional codes. That advanced scenario will be covered later.

Scenario: Creating a footnote using the Tariff Editor

Tagged: ui

You have been asked to create a new duty suspension which requires a footnote to provide information on how the new suspension is to be used.

The duty suspension you create will be to allow butene to be imported without incurring any fees to do so.

You will create the footnote first to explain the suspension it is to read: “This suspension does not apply to mixtures falling under this commodity code”.

You will then create the duty suspension and add the footnote to it.

  1. Given I am on the training environment

  2. And there is a duty suspension (DS) footnote type

  3. When I visit the homepage

  4. And I select "Create a new footnote"

  5. Then I am taken to the next page

  6. When I am on the "Create a new footnote" page

  7. And I select "DS - Duty suspension" as the footnote type

  8. And I enter today as the start date

  9. And I enter "This suspension does not apply to mixtures falling under this commodity code" as the description

  10. And I press "Save"

  11. Then I see the confirmation message

Scenario: Creating a suspension measure using the Tariff Editor

Tagged: ui

You will now create a suspension measure to remove the duty. The relevant commodity code is 290123.

This measure looks similar to the Most Favoured Nation duty measure, but now you are using a different measure type and regulation. You will also attach the footnote you created in the last scenario.

  1. Given I am on the training environment

  2. And there is a DS footnote

  3. When I visit the home page

  4. And I select "Create a new measure"

  5. And I press "Start now"

  6. Then I am taken to the next page

  7. When I am on the "Enter the basic data" page

  8. And I select "Autonomous tariff suspension" as the measure type

  9. And I select "C2100003" as the regulation ID

  10. And I select "All countries (erga omnes)" as the geographical area

  11. And I leave the quota order number blank

  12. And I select today as the start date

  13. And I leave the end date blank

  14. And I press "Continue"

  15. Then I am taken to the next step

  16. When I am on the "Select commodities and enter the duties" page

  17. And I select "2901230000" as the commodity code

  18. And I enter "0.00%" as the duties

  19. And I press "Continue"

  20. Then I am taken to the next step

  21. When I am on the "Assign an additional code" page

  22. And I leave the additional code blank

  23. And I press "Continue"

  24. Then I am taken to the next step

  25. When I am on the "Add any condition codes" page

  26. And I leave the condition code blank

  27. And I press "Continue"

  28. Then I am taken to the next step

  29. When I am on the "Add any footnotes" page

  30. And I select "DS001" as the footnote

  31. And I press "Continue"

  32. Then I am taken to the next step

  33. When I am on the "Review your measure" page

  34. And I press "Create"

  35. Then I see the confirmation message

Scenario: Creating a footnote using a Jupyter notebook

Tagged: notebook

This scenario is the first demonstration of creating a “described object” in a notebook. Footnotes, additional codes, certificates, geographical areas and commodity codes are all described objects, and all have the same rules and structure associated with their descriptions.

This scenario also demonstrates an error condition being found using business rules. In this case, a described object is not allowed to exist without a description. Note that in order to fix this, the description we create must be in the same transaction as the footnote, because all business rules must pass after every transaction.

  1. Given a migration notebook

  2. And there is a duty suspension (DS) footnote type

  3. When I create a Footnote called DS001 with the following arguments

    argument

    value

    footnote_type

    FootnoteType.current_objects.get(footnote_type_id="DS")

    footnote_id

    "001"

    valid_between

    TaricDateRange(date.today(), None)

    transaction

    workbasket.new_transaction()

    update_type

    UpdateType.CREATE

  4. And I validate the workbasket

  5. Then I get errors

  6. When I create a FootnoteDescription with the following arguments

    argument

    value

    described_footnote

    DS001

    description

    "This suspension only applies to mixtures falling under this commodity code"

    validity_start

    DS001.valid_between.lower

    transaction

    DS001.transaction

    update_type

    UpdateType.CREATE

  7. And I validate the workbasket

  8. Then I get no errors

Scenario: Creating a suspension measure using a Jupyter notebook

Tagged: notebook

This scenario demonstrates that defaults can be given to the MeasureCreationPattern, which removes the need to specify them with every call.

  1. Given a migration notebook

  2. And there is a commodity code

  3. When I create a MeasureCreationPattern with defaults

    argument

    value

    measure_type

    MeasureType.current_objects.get(description="Autonomous tariff suspension")

    generating_regulation

    Regulation.current_objects.get(regulation_id="C2100003")

    geographical_area

    GeographicalArea.current_objects.get(area_id="1011")

  4. And I call create with the following arguments

    argument

    value

    duty_sentence

    "0.00%"

    goods_nomenclature

    GoodsNomenclature.current_objects.get(item_id="2901230000", suffix="80")

    validity_start

    date.today()

    validity_end

    None

  5. And I validate the workbasket

  6. Then I get no errors