Shipit DokumentationShipit Dokumentation
API
Webhooks
Shopify Delivery Checkout
  • English
  • Suomi
  • Svenska
  • Eesti
  • Dansk
  • Norsk
API
Webhooks
Shopify Delivery Checkout
  • English
  • Suomi
  • Svenska
  • Eesti
  • Dansk
  • Norsk
  • API

    • API

API

Denne side beskriver, hvordan identifikatorfelter i shipment request bliver normaliseret før validering og booking. Adfærden her er baseret på den nuværende pipeline i api-repoet.

Rækkefølge

Shipment requests bliver normaliseret i denne rækkefølge:

  1. organizationId kan skifte tenant-kontekst til en underorganisation.
  2. senderId og receiverId forsøger at udfylde sender og receiver.
  3. organizationId kan udfylde sender fra den valgte organisations profil, når sender og senderId mangler.
  4. consignmentTemplateId eller auto-apply-template merges ind i requesten.
  5. en servicespecifik pickup-adresse kan udfylde pickupAddress.
  6. senderAddressId og receiverAddressId kan sent i pipelinen overskrive sender og receiver.
  7. freightPayerId eller freightPayer.customerNumber kan udfylde freightPayer og carrier contract-kontekst.

Senere resolvers vinder over tidligere.

Oversigt

FeltAcceptererResolverOverwrite-adfærd
organizationIdunderorganisations ulid eller quick_idtenant-kontekst, nogle gange senderudfylder ikke sender, hvis senderId eller sender allerede findes
senderIdi praksis en sender-adresses quick_idsenderhvis den findes, erstatter den inline sender
receiverIdi praksis en receiver-adresses quick_idreceiverhvis den findes, erstatter den inline receiver
consignmentTemplateIdtemplate id eller quick_idtemplate-payloadrequest vinder i normal mode, template vinder i override mode
senderAddressIdaddress book id eller quick_idsenderkører sent og overstyrer derfor også senderId og organization sender fill
receiverAddressIdaddress book id eller quick_idreceiverkører sent og overstyrer derfor også receiverId
freightPayerIdaddress book id eller quick_idfreightPayer og contract-kontekstvirker kun hvis adressen har contract for det givne serviceId
organizationMemberIdeksisterende organization_members.idingentingvalideres kun i øjeblikket

Vigtige kombinationer

  • kun organizationId: tenant skifter, og sender udfyldes fra organisationsprofilen
  • organizationId + senderId: tenant skifter, derefter bestemmer senderId værdien af sender
  • senderId + sender: en vellykket lookup via senderId erstatter hele sender
  • ugyldig senderId + sender: senderId bliver null, og den eksplicitte sender bliver stående
  • senderId + senderAddressId: den endelige sender kommer fra senderAddressId

senderId og receiverId

senderId og receiverId kører før consignment templates. Hvis lookupen lykkes, bliver hele party-payloaden skrevet om.

  • den nuværende fill-pipe resolver disse felter via quick_id
  • uløste værdier normaliseres til null
  • en vellykket lookup vinder over tidligere inline-data

Bemærk

Valideringsreglen accepterer numerisk adresse-id eller quick_id for senderId og receiverId, men den nuværende fill-pipe resolver dem via quick_id. I praksis bør disse felter bruge quick_id.

senderAddressId og receiverAddressId

Disse felter er adskilt fra senderId og receiverId.

  • lookup sker i tenantens address book
  • lookup accepterer numerisk adresse-id eller quick_id
  • en vellykket lookup erstatter hele sender eller receiver
  • receiverAddressId kan også udfylde preNoticeEmail, preNoticeSMS og deliveryInstructions
  • senderAddressId kan også udfylde pickupInstructions

Fordi de kører senere i pipelinen, vinder de over tidligere party-resolve.

consignmentTemplateId

consignmentTemplateId accepterer template id eller quick_id. Når en template bliver resolved, normaliseres requesten til template'ens rigtige id.

  • normal mode: request-værdier vinder, og templaten udfylder huller
  • override mode: template-værdier vinder
  • items og parcels merges per indeks med samme logik
  • templaten kan udfylde manglende serviceId

freightPayerId

freightPayerId udfylder ikke sender eller receiver. Det resolver third-party betalingskontrakt-kontekst.

  • kræver serviceId
  • slår op i tenantens address book via id eller quick_id
  • udfylder kun freightPayer, hvis adressen har contract for tjenesten
  • bygger i praksis freightPayer ud fra receiver-data plus det resolvede customer number

Anbefaling

  • brug organisationens ulid eller quick_id i organizationId
  • brug quick_id i senderId og receiverId
  • brug senderAddressId og receiverAddressId, når address book-posten eksplicit skal vinde sent i pipelinen
  • brug consignmentTemplateId til defaults eller kontrolleret override
  • undgå at sende flere resolvers for samme part, medmindre du bevidst vil bruge prioriteringsrækkefølgen ovenfor
Last Updated: 13.06.2026, 07.25
Contributors: Brian Faust