Skip to content

FA(3) builder: Third party

Add a third-party subject from address, identity, and role fields.

Called on builder
Source src/ksef2/services/builders/fa3/root.py:380 Authored source
builder.third_party
builder.third_party(*, name: Annotated[str, builder_param('Third-party name shown in the FA(3) party section.', examples=['Logistics Partner sp. z o.o.'])], tax_id: Annotated[str | None, builder_param('Third-party tax identifier.', examples=[1234567890])] = None, internal_id: Annotated[str | None, builder_param('Internal identifier assigned to the third party.', examples=['TP-001'], priority=advanced)] = None, eu_vat_id: Annotated[str | None, builder_param('EU VAT identifier for the third party.', examples=[PL1234567890], priority=advanced)] = None, identity_country_code: Annotated[str | None, builder_param('Country code attached to the third-party identity data.', examples=[PL, DE], format=(country - code), priority=advanced)] = None, other_id: Annotated[str | None, builder_param('Alternative third-party identifier.', examples=[ALT - 7788], priority=advanced)] = None, no_id: Annotated[bool, builder_param('Set to true when the third party is intentionally recorded without an identifier.', examples=[False], priority=advanced)] = False, address_country_code: Annotated[str | None, builder_param('Country code for the third-party address.', examples=[PL], format=(country - code), priority=advanced)] = None, address_line_1: Annotated[str | None, builder_param('First line of the third-party address.', examples=['ul. Partnera 1'], priority=advanced)] = None, address_line_2: Annotated[str | None, builder_param('Second line of the third-party address.', examples=['00-100 Warszawa'], priority=advanced)] = None, gln: Annotated[str | None, builder_param('GLN assigned to the third-party address.', examples=[5901234123457], priority=advanced)] = None, correspondence_country_code: Annotated[str | None, builder_param('Country code for the correspondence address.', examples=[PL], format=(country - code), priority=advanced)] = None, correspondence_address_line_1: Annotated[str | None, builder_param('First line of the third-party correspondence address.', examples=['ul. Korespondencyjna 7'], priority=advanced)] = None, correspondence_address_line_2: Annotated[str | None, builder_param('Second line of the third-party correspondence address.', examples=['00-120 Warszawa'], priority=advanced)] = None, correspondence_gln: Annotated[str | None, builder_param('GLN assigned to the correspondence address.', examples=[5901234123457], priority=advanced)] = None, contacts: Annotated[Sequence[ContactInfoTuple] | None, builder_param('Contact entries for the third party, such as email and phone.', examples=[], priority=advanced, schema_ref=(ksef2.domain.models.fa3.party.ContactInfoTuple))] = None, role: Annotated[ThirdPartyRole | None, builder_param('Role of the third party in the invoice context.', examples=[factor], format=(enum - string), priority=advanced)] = None, other_role: Annotated[bool, builder_param('Set to true when the role is described manually instead of using the predefined role enum.', examples=[False], priority=advanced)] = False, role_description: Annotated[str | None, builder_param('Free-text description of the third-party role.', examples=['Customs representative'], priority=advanced)] = None, share_percentage: Annotated[Decimal | None, builder_param('Share percentage assigned to the third party when the invoice scenario requires it.', examples=[50.0], format=(decimal - string), priority=advanced)] = None, customer_number: Annotated[str | None, builder_param('Customer number assigned to the third party.', examples=[TP - CUST - 1], priority=advanced)] = None, eori_number: Annotated[str | None, builder_param('Third-party EORI number.', examples=[PL123456789000000], priority=advanced)] = None, buyer_id: Annotated[str | None, builder_param('Buyer identifier linked to the third party when required.', examples=[buyer - 42], priority=advanced)] = None) -> Self

Returns

Self

Parameters

name str

Third-party name shown in the FA(3) party section.

required / keyword-only
tax_id str | None

Third-party tax identifier.

default None / keyword-only
internal_id str | None

Internal identifier assigned to the third party.

default None / keyword-only
eu_vat_id str | None

EU VAT identifier for the third party.

default None / keyword-only
identity_country_code str | None

Country code attached to the third-party identity data.

default None / keyword-only
other_id str | None

Alternative third-party identifier.

default None / keyword-only
no_id bool

Set to true when the third party is intentionally recorded without an identifier.

default False / keyword-only
address_country_code str | None

Country code for the third-party address.

default None / keyword-only
address_line_1 str | None

First line of the third-party address.

default None / keyword-only
address_line_2 str | None

Second line of the third-party address.

default None / keyword-only
gln str | None

GLN assigned to the third-party address.

default None / keyword-only
correspondence_country_code str | None

Country code for the correspondence address.

default None / keyword-only
correspondence_address_line_1 str | None

First line of the third-party correspondence address.

default None / keyword-only
correspondence_address_line_2 str | None

Second line of the third-party correspondence address.

default None / keyword-only
correspondence_gln str | None

GLN assigned to the correspondence address.

default None / keyword-only
contacts Sequence[ContactInfoTuple] | None

Contact entries for the third party, such as email and phone.

default None / keyword-only
role ThirdPartyRole | None

Role of the third party in the invoice context.

default None / keyword-only
other_role bool

Set to true when the role is described manually instead of using the predefined role enum.

default False / keyword-only
role_description str | None

Free-text description of the third-party role.

default None / keyword-only
share_percentage Decimal | None

Share percentage assigned to the third party when the invoice scenario requires it.

default None / keyword-only
customer_number str | None

Customer number assigned to the third party.

default None / keyword-only
eori_number str | None

Third-party EORI number.

default None / keyword-only
buyer_id str | None

Buyer identifier linked to the third party when required.

default None / keyword-only