Skip to content

feat: add EU regulatory customs item IDs and tax identifier address - #602

Merged
Justin Hammond (Justintime50) merged 6 commits into
masterfrom
DOCS-947-eu-regulatory-fields
Oct 29, 2026
Merged

Justin Hammond (Justintime50) merged 6 commits into
masterfrom
DOCS-947-eu-regulatory-fields

Conversation

@Justintime50

@Justintime50 Justin Hammond (Justintime50) commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

Description

Exposes the new EU regulatory fields in the Node typings for DOCS-947 and bumps the version to v9.1.0.

  • Adds manufacturer_product_id (NS-PID) and standardized_product_id (S-PID such as a GTIN/EAN) declares to the CustomsItem model and to CustomsItemCreateParameters, and types the customs_items nested in CustomsInfoCreateParameters as CustomsItemCreateParameters | CustomsItem. CustomsInfo.customs_items on the model is now typed as CustomsItem[].
  • Adds address to the shipment ShipmentTaxIdentifier create params, typed as AddressCreateParameters | Address (inline fields or an { id: 'adr_...' } reference; the API rejects a bare string).
  • Adds a TaxIdentifier model (entity, tax_id, tax_id_type, issuing_country, address) following the Surcharge precedent, and declares tax_identifiers on the Shipment model, matching the C#, Go and Java models.
  • Shipment options is already Record<string, unknown>-loose, so UPS carrier_options.shipper_type/consignee_type already passes through.
  • Comment-only cleanup in src/services/shipment_service.ts: removes a stray static async createAndBuyLuma(params: ShipmentCreateParameters): Promise<unknown> { line that a bad merge in TSM-06: convert Group A services to TypeScript #563 left inside the JSDoc above create(), and restores the original Create a {@link Shipment shipment}. summary it replaced. No code changes.
  • Bumps the version to 9.1.0 in package.json and the two top-level version fields of package-lock.json (no dependency changes), and adds the CHANGELOG entry.

Testing

No new tests or cassettes. This only adds model and parameter typings and changes a comment. tsc -p tsconfig.build.json --noEmit, eslint and prettier --check on the changed files pass locally. CI covers the rest.

Pull Request Type

Please select the option(s) that are relevant to this PR.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Improvement (fixing a typo, updating readme, renaming a variable name, etc)

@Justintime50
Justin Hammond (Justintime50) marked this pull request as ready for review October 29, 2026 19:23
@Justintime50 Justin Hammond (Justintime50) changed the title feat: add EU regulatory product IDs to CustomsItem model feat: add EU regulatory customs item IDs and tax identifier address Oct 29, 2026
@Justintime50
Justin Hammond (Justintime50) merged commit 01c5699 into master Oct 29, 2026
13 checks passed
@Justintime50
Justin Hammond (Justintime50) deleted the DOCS-947-eu-regulatory-fields branch October 29, 2026 21:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants