@endevops/peppol-schema 0.1.0-beta.4 → 0.1.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -6
- package/dist/constants.d.ts +51 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +48 -0
- package/dist/constants.js.map +1 -0
- package/dist/eas-codes.generated-D8jjHFij.js.map +1 -1
- package/dist/index-CiW698HY.d.ts +3507 -0
- package/dist/index-CiW698HY.d.ts.map +1 -0
- package/dist/index.d.ts +2 -2613
- package/dist/index.js +3122 -1563
- package/dist/index.js.map +1 -1
- package/dist/invoice-response-code-not-needs-schema-p_RKKNLc.js +18 -0
- package/dist/invoice-response-code-not-needs-schema-p_RKKNLc.js.map +1 -0
- package/dist/invoice-response-codes.d.ts +11 -0
- package/dist/invoice-response-codes.d.ts.map +1 -0
- package/dist/invoice-response-codes.js +32 -0
- package/dist/invoice-response-codes.js.map +1 -0
- package/dist/invoice-status-codes.generated-DL-agLdx.d.ts +24 -0
- package/dist/invoice-status-codes.generated-DL-agLdx.d.ts.map +1 -0
- package/dist/message-level-response-profile-id-DBpOW91B.js +9 -0
- package/dist/message-level-response-profile-id-DBpOW91B.js.map +1 -0
- package/dist/peppol-iso-date-string-BXLxzxdz.js +30 -0
- package/dist/peppol-iso-date-string-BXLxzxdz.js.map +1 -0
- package/dist/schematron.d.ts +408 -365
- package/dist/schematron.d.ts.map +1 -1
- package/dist/schematron.js +2040 -1547
- package/dist/schematron.js.map +1 -1
- package/dist/values.d.ts +95 -13218
- package/dist/values.d.ts.map +1 -1
- package/dist/values.js +1 -1
- package/dist/vat-dates.generated-CxFvt7m3.d.ts +68 -0
- package/dist/vat-dates.generated-CxFvt7m3.d.ts.map +1 -0
- package/dist/{vatex-codes.generated-BSgP3n5t.js → vatex-codes.generated-N7wsUrLh.js} +8 -9
- package/dist/vatex-codes.generated-N7wsUrLh.js.map +1 -0
- package/package.json +16 -18
- package/src/constants/transport-profile.ts +5 -1
- package/src/decoders/decode-billing.ts +1 -1
- package/src/decoders/decode-credit-note.ts +2 -4
- package/src/decoders/decode-invoice-response.ts +15 -37
- package/src/decoders/decode-invoice.ts +2 -4
- package/src/decoders/decode-message-level-response.ts +21 -48
- package/src/decoders/encode-credit-note.ts +1 -1
- package/src/decoders/encode-invoice-response.ts +7 -4
- package/src/decoders/encode-invoice.ts +1 -1
- package/src/decoders/encode-message-level-response.ts +4 -10
- package/src/decoders/fields/decode-additional-document-references.ts +1 -1
- package/src/decoders/fields/decode-address.ts +1 -1
- package/src/decoders/fields/decode-allowance-charges.ts +7 -15
- package/src/decoders/fields/decode-amount.ts +2 -2
- package/src/decoders/fields/decode-application-response.ts +21 -0
- package/src/decoders/fields/decode-billing-references.ts +1 -1
- package/src/decoders/fields/decode-contact.ts +1 -1
- package/src/decoders/fields/decode-credit-note-lines.ts +7 -15
- package/src/decoders/fields/decode-delivery.ts +1 -1
- package/src/decoders/fields/decode-electronic-address.ts +1 -1
- package/src/decoders/fields/decode-identifier.ts +1 -1
- package/src/decoders/fields/decode-invoice-line-period.ts +1 -1
- package/src/decoders/fields/decode-invoice-lines.ts +6 -14
- package/src/decoders/fields/decode-invoice-message-document-party.ts +2 -2
- package/src/decoders/fields/decode-invoice-message-party.ts +1 -6
- package/src/decoders/fields/decode-invoice-period.ts +7 -13
- package/src/decoders/fields/decode-legal-monetary-total.ts +1 -1
- package/src/decoders/fields/decode-line-allowance-charges.ts +7 -14
- package/src/decoders/fields/decode-line-price.ts +1 -7
- package/src/decoders/fields/decode-line-shared.ts +2 -4
- package/src/decoders/fields/decode-message-level-party.ts +1 -1
- package/src/decoders/fields/decode-node-list.ts +15 -0
- package/src/decoders/fields/decode-order-reference.ts +1 -1
- package/src/decoders/fields/decode-parties-tax-scheme.ts +1 -1
- package/src/decoders/fields/decode-party-legal-entity.ts +1 -1
- package/src/decoders/fields/decode-party-tax-scheme.ts +1 -1
- package/src/decoders/fields/decode-party.ts +3 -14
- package/src/decoders/fields/decode-payee-party.ts +1 -1
- package/src/decoders/fields/decode-payment-means.ts +2 -2
- package/src/decoders/fields/decode-payment-terms.ts +1 -1
- package/src/decoders/fields/decode-price-allowance-charge.ts +1 -7
- package/src/decoders/fields/decode-quantity.ts +1 -6
- package/src/decoders/fields/decode-simple-identifier.ts +1 -1
- package/src/decoders/fields/decode-tax-category.ts +1 -1
- package/src/decoders/fields/decode-tax-representative-party.ts +1 -1
- package/src/decoders/fields/decode-tax-totals.ts +2 -2
- package/src/decoders/fields/encode-additional-document-references.ts +3 -2
- package/src/decoders/fields/encode-address.ts +1 -1
- package/src/decoders/fields/encode-allowance-charges.ts +3 -2
- package/src/decoders/fields/encode-amount.ts +1 -1
- package/src/decoders/fields/encode-billing-references.ts +2 -2
- package/src/decoders/fields/encode-contact.ts +1 -1
- package/src/decoders/fields/encode-credit-note-lines.ts +2 -2
- package/src/decoders/fields/encode-delivery.ts +1 -1
- package/src/decoders/fields/encode-identifier.ts +1 -1
- package/src/decoders/fields/encode-invoice-line-period.ts +1 -1
- package/src/decoders/fields/encode-invoice-lines.ts +2 -2
- package/src/decoders/fields/encode-invoice-period.ts +1 -1
- package/src/decoders/fields/encode-legal-monetary-total.ts +1 -1
- package/src/decoders/fields/encode-line-allowance-charges.ts +2 -2
- package/src/decoders/fields/encode-line-price.ts +1 -1
- package/src/decoders/fields/encode-line-shared.ts +1 -1
- package/src/decoders/fields/encode-message-party.ts +26 -13
- package/src/decoders/fields/encode-order-reference.ts +1 -1
- package/src/decoders/fields/encode-parties-tax-scheme.ts +1 -1
- package/src/decoders/fields/encode-party-tax-scheme.ts +1 -1
- package/src/decoders/fields/encode-party.ts +1 -1
- package/src/decoders/fields/encode-payee-party.ts +1 -1
- package/src/decoders/fields/encode-payment-means.ts +2 -2
- package/src/decoders/fields/encode-payment-terms.ts +1 -1
- package/src/decoders/fields/encode-price-allowance-charges.ts +1 -1
- package/src/decoders/fields/encode-quantity.ts +1 -1
- package/src/decoders/fields/encode-tax-category.ts +1 -1
- package/src/decoders/fields/encode-tax-representative-party.ts +1 -1
- package/src/decoders/fields/encode-tax-totals.ts +4 -4
- package/src/helpers/bool.ts +9 -12
- package/src/helpers/get-prop.ts +2 -4
- package/src/helpers/str-or-und.ts +3 -4
- package/src/helpers/str.ts +12 -8
- package/src/index.ts +56 -6
- package/src/schemas/fields/peppol-additional-document-reference-schema.ts +123 -0
- package/src/schemas/fields/peppol-address-schema.ts +112 -0
- package/src/schemas/fields/peppol-allowance-charge-schema.ts +104 -0
- package/src/schemas/fields/peppol-amount-schema.ts +23 -0
- package/src/schemas/fields/peppol-base-line-schema.ts +141 -0
- package/src/{effect → schemas}/fields/peppol-billing-reference-schema.ts +25 -20
- package/src/schemas/fields/peppol-binary-object-schema.ts +52 -0
- package/src/schemas/fields/peppol-contact-schema.ts +20 -0
- package/src/schemas/fields/peppol-credit-note-line-schema.ts +44 -0
- package/src/schemas/fields/peppol-delivery-schema.ts +109 -0
- package/src/schemas/fields/peppol-identifier-schema.ts +21 -0
- package/src/schemas/fields/peppol-invoice-line-period-schema.ts +35 -0
- package/src/{effect → schemas}/fields/peppol-invoice-line-schema.ts +10 -10
- package/src/schemas/fields/peppol-invoice-period-schema.ts +31 -0
- package/src/schemas/fields/peppol-item-classification-schema.ts +46 -0
- package/src/schemas/fields/peppol-legal-monetary-total-schema.ts +127 -0
- package/src/schemas/fields/peppol-line-allowance-charge-schema.ts +68 -0
- package/src/schemas/fields/peppol-line-item-schema.ts +196 -0
- package/src/schemas/fields/peppol-line-price-allowance-charge-schema.ts +41 -0
- package/src/schemas/fields/peppol-line-price-schema.ts +32 -0
- package/src/schemas/fields/peppol-order-reference-schema.ts +38 -0
- package/src/schemas/fields/peppol-party-base-schema.ts +145 -0
- package/src/schemas/fields/peppol-party-legal-entity-schema.ts +32 -0
- package/src/schemas/fields/peppol-party-tax-scheme-schema.ts +41 -0
- package/src/schemas/fields/peppol-payee-party-schema.ts +119 -0
- package/src/schemas/fields/peppol-payment-means-schema.ts +224 -0
- package/src/schemas/fields/peppol-payment-terms-schema.ts +25 -0
- package/src/schemas/fields/peppol-quantity-schema.ts +22 -0
- package/src/schemas/fields/peppol-reference-schema.ts +9 -0
- package/src/schemas/fields/peppol-tax-category-schema.ts +47 -0
- package/src/schemas/fields/peppol-tax-representative-schema.ts +26 -0
- package/src/{effect → schemas}/fields/peppol-tax-subtotal-category-schema.ts +7 -6
- package/src/schemas/fields/peppol-tax-subtotal-schema.ts +33 -0
- package/src/schemas/fields/peppol-tax-totals-base-schema.ts +28 -0
- package/src/schemas/peppol-billing-base-schema.ts +366 -0
- package/src/schemas/peppol-credit-note-schema.ts +31 -0
- package/src/schemas/peppol-document-response-document-reference-schema.ts +41 -0
- package/src/schemas/peppol-document-response-document-schema.ts +38 -0
- package/src/schemas/peppol-document-response-line-response-content-schema.ts +49 -0
- package/src/schemas/peppol-document-response-line-response-schema.ts +40 -0
- package/src/schemas/peppol-document-schema.ts +120 -0
- package/src/{effect → schemas}/peppol-invoice-response-document-actual-response-schema.ts +25 -16
- package/src/schemas/peppol-invoice-response-document-actual-response-status-schema.ts +63 -0
- package/src/schemas/peppol-invoice-response-schema.ts +176 -0
- package/src/schemas/peppol-invoice-response-status-reason-code-schema.ts +40 -0
- package/src/schemas/peppol-invoice-schema.ts +45 -0
- package/src/schemas/peppol-iso-date-string.ts +20 -0
- package/src/schemas/peppol-message-level-response-document-response-schema.ts +35 -0
- package/src/schemas/peppol-message-level-response-party-schema.ts +20 -0
- package/src/schemas/peppol-message-level-response-schema.ts +98 -0
- package/src/schemas/utils/format-xsd-time.ts +80 -0
- package/src/{effect → schemas}/utils/index.ts +1 -1
- package/src/schemas/utils/is-valid-process.ts +1 -1
- package/src/schemas/utils/opaque.ts +19 -0
- package/src/{effect → schemas}/utils/peppol-vat-regex-schema.ts +0 -2
- package/src/schemas/utils/peppol-xsd-time-schema.ts +79 -0
- package/src/schemas/utils/quantity-unit-code-to-intl-unit.ts +2 -2
- package/src/schemas/values/credit-note-type-code-schema.ts +3 -5
- package/src/schemas/values/document-type-schemes-schema.ts +3 -5
- package/src/schemas/values/document-type-values-schema.ts +4 -7
- package/src/{effect → schemas}/values/duty-tax-fee-category-schema.ts +3 -3
- package/src/schemas/values/invoice-type-code-schema.ts +4 -8
- package/src/schemas/values/process-from-document-type-schema.ts +10 -12
- package/src/schemas/values/quantity-unit-codes-schema.ts +4 -8
- package/src/schematron/cen/ae/cen-en16931-br-ae-01.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-02.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-03.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-04.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-05.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-06.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-07.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-08.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-09.ts +6 -5
- package/src/schematron/cen/ae/cen-en16931-br-ae-10.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-01.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-02.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-03.ts +6 -10
- package/src/schematron/cen/af/cen-en16931-br-af-04.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-05.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-06.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-07.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-08.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-09.ts +6 -5
- package/src/schematron/cen/af/cen-en16931-br-af-10.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-01.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-02.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-03.ts +6 -10
- package/src/schematron/cen/ag/cen-en16931-br-ag-04.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-05.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-06.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-07.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-08.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-09.ts +6 -5
- package/src/schematron/cen/ag/cen-en16931-br-ag-10.ts +6 -5
- package/src/schematron/cen/b/cen-en16931-br-b-01.ts +6 -5
- package/src/schematron/cen/b/cen-en16931-br-b-02.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-01.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-02.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-03.ts +9 -6
- package/src/schematron/cen/cen-en16931-br-04.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-05.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-06.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-07.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-08.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-09.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-10.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-11.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-12.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-13.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-14.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-15.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-16.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-17.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-18.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-19.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-20.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-21.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-22.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-23.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-24.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-25.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-26.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-27.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-28.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-29.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-30.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-31.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-32.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-33.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-36.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-37.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-38.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-41.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-42.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-43.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-44.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-45.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-46.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-47.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-48.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-49.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-50.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-51.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-52.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-53.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-54.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-55.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-56.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-57.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-61.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-62.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-63.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-64.ts +6 -5
- package/src/schematron/cen/cen-en16931-br-65.ts +6 -5
- package/src/schematron/cen/cl/cen-en16931-br-cl-08.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-03.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-04.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-05.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-06.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-07.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-08.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-09.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-10.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-11.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-12.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-13.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-14.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-15.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-16.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-17.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-18.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-19.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-20.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-21.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-22.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-23.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-24.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-25.ts +6 -5
- package/src/schematron/cen/co/cen-en16931-br-co-26.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-01.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-02.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-05.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-06.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-09.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-10.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-11.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-12.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-13.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-14.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-15.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-16.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-17.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-18.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-19.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-20.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-23.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-24.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-25.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-27.ts +6 -5
- package/src/schematron/cen/dec/cen-en16931-br-dec-28.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-01.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-02.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-03.ts +6 -10
- package/src/schematron/cen/e/cen-en16931-br-e-04.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-05.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-06.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-07.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-08.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-09.ts +6 -5
- package/src/schematron/cen/e/cen-en16931-br-e-10.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-01.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-02.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-03.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-04.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-05.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-06.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-07.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-08.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-09.ts +6 -5
- package/src/schematron/cen/g/cen-en16931-br-g-10.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-01.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-02.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-03.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-04.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-05.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-06.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-07.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-08.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-09.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-10.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-11.ts +6 -5
- package/src/schematron/cen/ic/cen-en16931-br-ic-12.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-01.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-02.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-03.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-04.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-05.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-06.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-07.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-08.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-09.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-10.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-11.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-12.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-13.ts +6 -5
- package/src/schematron/cen/o/cen-en16931-br-o-14.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-01.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-02.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-03.ts +6 -10
- package/src/schematron/cen/s/cen-en16931-br-s-04.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-05.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-06.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-07.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-08.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-09.ts +6 -5
- package/src/schematron/cen/s/cen-en16931-br-s-10.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-01.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-02.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-03.ts +6 -10
- package/src/schematron/cen/z/cen-en16931-br-z-04.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-05.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-06.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-07.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-08.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-09.ts +6 -5
- package/src/schematron/cen/z/cen-en16931-br-z-10.ts +6 -5
- package/src/schematron/de/de-r-001.ts +8 -7
- package/src/schematron/de/de-r-002.ts +8 -7
- package/src/schematron/de/de-r-003.ts +8 -7
- package/src/schematron/de/de-r-004.ts +8 -7
- package/src/schematron/de/de-r-005.ts +8 -7
- package/src/schematron/de/de-r-006.ts +8 -7
- package/src/schematron/de/de-r-007.ts +8 -7
- package/src/schematron/de/de-r-008.ts +8 -7
- package/src/schematron/de/de-r-009.ts +8 -7
- package/src/schematron/de/de-r-010.ts +9 -8
- package/src/schematron/de/de-r-011.ts +9 -8
- package/src/schematron/de/de-r-014.ts +8 -7
- package/src/schematron/de/de-r-015.ts +8 -7
- package/src/schematron/de/de-r-016.ts +9 -8
- package/src/schematron/de/de-r-017.ts +8 -7
- package/src/schematron/de/de-r-018.ts +10 -9
- package/src/schematron/de/de-r-019.ts +8 -7
- package/src/schematron/de/de-r-020.ts +8 -7
- package/src/schematron/de/de-r-022.ts +8 -7
- package/src/schematron/de/de-r-023-1.ts +8 -7
- package/src/schematron/de/de-r-023-2.ts +8 -7
- package/src/schematron/de/de-r-024-1.ts +8 -7
- package/src/schematron/de/de-r-024-2.ts +8 -7
- package/src/schematron/de/de-r-025-1.ts +8 -7
- package/src/schematron/de/de-r-025-2.ts +8 -7
- package/src/schematron/de/de-r-026.ts +9 -8
- package/src/schematron/de/de-r-027.ts +8 -7
- package/src/schematron/de/de-r-028.ts +8 -7
- package/src/schematron/de/de-r-030.ts +9 -8
- package/src/schematron/de/de-r-031.ts +8 -7
- package/src/schematron/dk/dk-r-002.ts +7 -6
- package/src/schematron/dk/dk-r-003.ts +8 -7
- package/src/schematron/dk/dk-r-004.ts +8 -7
- package/src/schematron/dk/dk-r-005.ts +8 -7
- package/src/schematron/dk/dk-r-006.ts +8 -7
- package/src/schematron/dk/dk-r-007.ts +8 -7
- package/src/schematron/dk/dk-r-008.ts +8 -7
- package/src/schematron/dk/dk-r-009.ts +8 -7
- package/src/schematron/dk/dk-r-010.ts +8 -7
- package/src/schematron/dk/dk-r-011.ts +8 -7
- package/src/schematron/dk/dk-r-013.ts +8 -7
- package/src/schematron/dk/dk-r-014.ts +7 -6
- package/src/schematron/dk/dk-r-016.ts +8 -7
- package/src/schematron/dk/dk-r-017.ts +8 -7
- package/src/schematron/errors.ts +17 -0
- package/src/schematron/gr/gr-r-001-1.ts +7 -6
- package/src/schematron/gr/gr-r-001-2.ts +8 -7
- package/src/schematron/gr/gr-r-001-3.ts +14 -9
- package/src/schematron/gr/gr-r-001-4.ts +8 -7
- package/src/schematron/gr/gr-r-001-5.ts +8 -7
- package/src/schematron/gr/gr-r-001-6.ts +7 -6
- package/src/schematron/gr/gr-r-001-7.ts +7 -6
- package/src/schematron/gr/gr-r-002.ts +7 -6
- package/src/schematron/gr/gr-r-003.ts +8 -7
- package/src/schematron/gr/gr-r-004-1.ts +7 -6
- package/src/schematron/gr/gr-r-004-2.ts +7 -6
- package/src/schematron/gr/gr-r-005.ts +7 -6
- package/src/schematron/gr/gr-r-006.ts +12 -11
- package/src/schematron/gr/gr-r-008-2.ts +7 -6
- package/src/schematron/gr/gr-r-008-3.ts +7 -6
- package/src/schematron/gr/gr-r-009.ts +7 -6
- package/src/schematron/gr/gr-r-010.ts +7 -6
- package/src/schematron/gr/gr-s-008-1.ts +7 -6
- package/src/schematron/gr/gr-s-011.ts +8 -7
- package/src/schematron/helpers.ts +46 -23
- package/src/schematron/index.ts +6 -1
- package/src/schematron/is/is-r-001.ts +7 -6
- package/src/schematron/is/is-r-002.ts +7 -6
- package/src/schematron/is/is-r-003.ts +7 -6
- package/src/schematron/is/is-r-004.ts +7 -6
- package/src/schematron/is/is-r-005.ts +7 -6
- package/src/schematron/is/is-r-006.ts +8 -7
- package/src/schematron/is/is-r-007.ts +8 -7
- package/src/schematron/is/is-r-008.ts +8 -7
- package/src/schematron/is/is-r-009.ts +8 -7
- package/src/schematron/is/is-r-010.ts +9 -8
- package/src/schematron/it/it-r-001.ts +7 -6
- package/src/schematron/it/it-r-002.ts +7 -6
- package/src/schematron/it/it-r-003.ts +7 -6
- package/src/schematron/it/it-r-004.ts +7 -6
- package/src/schematron/nl/nl-r-001.ts +7 -6
- package/src/schematron/nl/nl-r-002.ts +7 -6
- package/src/schematron/nl/nl-r-003.ts +8 -7
- package/src/schematron/nl/nl-r-004.ts +7 -6
- package/src/schematron/nl/nl-r-005.ts +8 -7
- package/src/schematron/nl/nl-r-006.ts +8 -7
- package/src/schematron/nl/nl-r-007.ts +8 -7
- package/src/schematron/nl/nl-r-008.ts +7 -6
- package/src/schematron/nl/nl-r-009.ts +8 -7
- package/src/schematron/no/no-r-001.ts +8 -7
- package/src/schematron/no/no-r-002.ts +7 -6
- package/src/schematron/peppol/cl/peppol-en16931-cl001.ts +6 -5
- package/src/schematron/peppol/cl/peppol-en16931-cl002.ts +6 -5
- package/src/schematron/peppol/cl/peppol-en16931-cl003.ts +6 -5
- package/src/schematron/peppol/cl/peppol-en16931-cl006.ts +7 -6
- package/src/schematron/peppol/cl/peppol-en16931-cl007.ts +27 -26
- package/src/schematron/peppol/cl/peppol-en16931-cl008.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r040.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r041.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r042.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r043.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r044.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r045.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r046.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r047.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r049.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r050.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r052.ts +6 -5
- package/src/schematron/peppol/common/peppol-common-r053.ts +6 -5
- package/src/schematron/peppol/f/peppol-en16931-f001.ts +27 -14
- package/src/schematron/peppol/p/peppol-en16931-p0100.ts +8 -7
- package/src/schematron/peppol/p/peppol-en16931-p0101.ts +8 -7
- package/src/schematron/peppol/p/peppol-en16931-p0104.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0105.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0106.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0107.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0108.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0109.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0110.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0111.ts +6 -5
- package/src/schematron/peppol/p/peppol-en16931-p0112.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r001.ts +11 -13
- package/src/schematron/peppol/r/peppol-en16931-r002.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r003.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r004.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r005.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r007.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r008.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r010.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r020.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r040.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r041.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r042.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r043.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r044.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r046.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r051.ts +48 -27
- package/src/schematron/peppol/r/peppol-en16931-r053.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r054.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r055.ts +8 -7
- package/src/schematron/peppol/r/peppol-en16931-r061.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r100.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r101.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r110.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r111.ts +7 -6
- package/src/schematron/peppol/r/peppol-en16931-r120.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r121.ts +6 -5
- package/src/schematron/peppol/r/peppol-en16931-r130.ts +6 -5
- package/src/schematron/run-all-rules.ts +2 -7
- package/src/schematron/schematron.ts +36 -0
- package/src/schematron/se/se-r-001.ts +7 -6
- package/src/schematron/se/se-r-002.ts +7 -6
- package/src/schematron/se/se-r-003.ts +7 -6
- package/src/schematron/se/se-r-004.ts +7 -6
- package/src/schematron/se/se-r-005.ts +8 -7
- package/src/schematron/se/se-r-006.ts +7 -6
- package/src/schematron/se/se-r-007.ts +7 -6
- package/src/schematron/se/se-r-008.ts +7 -6
- package/src/schematron/se/se-r-009.ts +7 -6
- package/src/schematron/se/se-r-010.ts +7 -6
- package/src/schematron/se/se-r-011.ts +7 -6
- package/src/schematron/se/se-r-012.ts +7 -6
- package/src/schematron/se/se-r-013.ts +7 -6
- package/src/values/additional-document-reference-codes.generated.ts +2 -3
- package/src/values/allowance-charge-reason-codes.generated.ts +1 -1
- package/src/values/application-response-type-codes.generated.ts +1 -1
- package/src/values/charge-reason-codes.generated.ts +1 -1
- package/src/values/country-code.generated.ts +1 -1
- package/src/values/credit-notes-type-codes.generated.ts +1 -1
- package/src/values/currency-code.generated.ts +1 -1
- package/src/values/document-type-codes.generated.ts +1 -1
- package/src/values/document-type.generated.ts +2 -2
- package/src/values/duty-tax-fee-categories.generated.ts +1 -1
- package/src/values/eas-codes.generated.ts +1 -1
- package/src/values/icd-codes.generated.ts +7 -7
- package/src/values/invoice-status-codes.generated.ts +1 -1
- package/src/values/invoice-type-codes.generated.ts +1 -1
- package/src/values/item-classification-code.generated.ts +1 -1
- package/src/values/mime-codes.generated.ts +1 -1
- package/src/values/op-status-action.generated.ts +1 -1
- package/src/values/op-status-reason.generated.ts +1 -1
- package/src/values/participant-identifier-schemes.generated.ts +2 -2
- package/src/values/payment-means-codes.generated.ts +1 -1
- package/src/values/processes.generated.ts +1 -1
- package/src/values/quantity-unit-codes.generated.ts +1 -1
- package/src/values/vat-dates.generated.ts +1 -1
- package/src/values/vatex-codes.generated.ts +1 -1
- package/dist/all-union-fields-CxoyKBpI.d.ts +0 -445
- package/dist/all-union-fields-CxoyKBpI.d.ts.map +0 -1
- package/dist/document-DCcObB-a.d.ts +0 -1466
- package/dist/document-DCcObB-a.d.ts.map +0 -1
- package/dist/effect.d.ts +0 -6291
- package/dist/effect.d.ts.map +0 -1
- package/dist/effect.js +0 -3240
- package/dist/effect.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/is-valid-process-CSWL-q9f.js +0 -1590
- package/dist/is-valid-process-CSWL-q9f.js.map +0 -1
- package/dist/quantity-unit-code-to-intl-unit-15EykjMe.d.ts +0 -168
- package/dist/quantity-unit-code-to-intl-unit-15EykjMe.d.ts.map +0 -1
- package/dist/vat-dates.generated-DTVWQAdn.d.ts +0 -4812
- package/dist/vat-dates.generated-DTVWQAdn.d.ts.map +0 -1
- package/dist/vatex-codes.generated-BSgP3n5t.js.map +0 -1
- package/src/decoders/errors.ts +0 -11
- package/src/document-parser.ts +0 -70
- package/src/document.ts +0 -19
- package/src/effect/fields/default-customization-id.ts +0 -1
- package/src/effect/fields/default-profile-id.ts +0 -1
- package/src/effect/fields/peppol-additional-document-reference-schema.ts +0 -114
- package/src/effect/fields/peppol-address-schema.ts +0 -105
- package/src/effect/fields/peppol-allowance-charge-schema.ts +0 -95
- package/src/effect/fields/peppol-amount-schema.ts +0 -22
- package/src/effect/fields/peppol-base-line-schema.ts +0 -138
- package/src/effect/fields/peppol-binary-object-schema.ts +0 -51
- package/src/effect/fields/peppol-contact-schema.ts +0 -18
- package/src/effect/fields/peppol-credit-note-line-schema.ts +0 -42
- package/src/effect/fields/peppol-delivery-schema.ts +0 -100
- package/src/effect/fields/peppol-identifier-schema.ts +0 -19
- package/src/effect/fields/peppol-invoice-line-period-schema.ts +0 -34
- package/src/effect/fields/peppol-invoice-period-schema.ts +0 -30
- package/src/effect/fields/peppol-item-classification-schema.ts +0 -45
- package/src/effect/fields/peppol-legal-monetary-total-schema.ts +0 -126
- package/src/effect/fields/peppol-line-allowance-charge-schema.ts +0 -64
- package/src/effect/fields/peppol-line-item-schema.ts +0 -185
- package/src/effect/fields/peppol-line-price-allowance-charge-schema.ts +0 -38
- package/src/effect/fields/peppol-line-price-schema.ts +0 -31
- package/src/effect/fields/peppol-order-reference-schema.ts +0 -36
- package/src/effect/fields/peppol-party-base-schema.ts +0 -138
- package/src/effect/fields/peppol-party-legal-entity-schema.ts +0 -29
- package/src/effect/fields/peppol-party-tax-scheme-schema.ts +0 -33
- package/src/effect/fields/peppol-payee-party-schema.ts +0 -112
- package/src/effect/fields/peppol-payment-means-schema.ts +0 -210
- package/src/effect/fields/peppol-payment-terms-schema.ts +0 -23
- package/src/effect/fields/peppol-quantity-schema.ts +0 -21
- package/src/effect/fields/peppol-reference-schema.ts +0 -5
- package/src/effect/fields/peppol-tax-category-schema.ts +0 -42
- package/src/effect/fields/peppol-tax-representative-schema.ts +0 -23
- package/src/effect/fields/peppol-tax-subtotal-schema.ts +0 -32
- package/src/effect/fields/peppol-tax-totals-base-schema.ts +0 -25
- package/src/effect/index.ts +0 -56
- package/src/effect/peppol-billing-base-schema.ts +0 -355
- package/src/effect/peppol-credit-note-schema.ts +0 -30
- package/src/effect/peppol-document-response-document-reference-schema.ts +0 -38
- package/src/effect/peppol-document-response-document-schema.ts +0 -35
- package/src/effect/peppol-document-response-line-response-content-schema.ts +0 -44
- package/src/effect/peppol-document-response-line-response-schema.ts +0 -33
- package/src/effect/peppol-document-schema.ts +0 -142
- package/src/effect/peppol-invoice-response-document-actual-response-status-schema.ts +0 -60
- package/src/effect/peppol-invoice-response-schema.ts +0 -168
- package/src/effect/peppol-invoice-response-status-reason-code-schema.ts +0 -31
- package/src/effect/peppol-invoice-schema.ts +0 -42
- package/src/effect/peppol-iso-date-string-schema.ts +0 -19
- package/src/effect/peppol-message-level-response-document-response-schema.ts +0 -33
- package/src/effect/peppol-message-level-response-party-schema.ts +0 -19
- package/src/effect/peppol-message-level-response-schema.ts +0 -97
- package/src/effect/utils/format-quantity-with-unit.ts +0 -1
- package/src/effect/utils/get-credit-note-type-code-description.ts +0 -1
- package/src/effect/utils/get-invoice-type-code-description.ts +0 -1
- package/src/effect/utils/is-valid-credit-note-type-code.ts +0 -1
- package/src/effect/utils/is-valid-invoice-type-code.ts +0 -1
- package/src/effect/utils/is-valid-process.ts +0 -1
- package/src/effect/utils/peppol-xsd-time-schema.ts +0 -13
- package/src/effect/utils/quantity-unit-code-to-intl-unit.ts +0 -2
- package/src/effect/values/credit-note-type-code-schema.ts +0 -23
- package/src/effect/values/document-type-schemes-schema.ts +0 -14
- package/src/effect/values/document-type-values-schema.ts +0 -16
- package/src/effect/values/invoice-type-code-schema.ts +0 -21
- package/src/effect/values/process-from-document-type-schema.ts +0 -26
- package/src/effect/values/quantity-unit-codes-schema.ts +0 -24
- package/src/helpers/errors.ts +0 -6
- package/src/helpers/is-defined.ts +0 -3
- package/src/schemas/billing-base.ts +0 -362
- package/src/schemas/credit-note.ts +0 -28
- package/src/schemas/document-response-document-reference-schema.ts +0 -37
- package/src/schemas/document-response-document-schema.ts +0 -34
- package/src/schemas/document-response-line-response-content.ts +0 -43
- package/src/schemas/document-response-line-response-schema.ts +0 -33
- package/src/schemas/fields/additional-document-reference-schema.ts +0 -112
- package/src/schemas/fields/address-schema.ts +0 -105
- package/src/schemas/fields/allowance-charge-schema.ts +0 -86
- package/src/schemas/fields/amount-schema.ts +0 -21
- package/src/schemas/fields/base-line-schema.ts +0 -136
- package/src/schemas/fields/billing-references-schema.ts +0 -44
- package/src/schemas/fields/binary-object-schema.ts +0 -45
- package/src/schemas/fields/contact-schema.ts +0 -18
- package/src/schemas/fields/credit-note-line-schema.ts +0 -37
- package/src/schemas/fields/date-only-fn.ts +0 -6
- package/src/schemas/fields/date-only-parser.ts +0 -20
- package/src/schemas/fields/delivery-schema.ts +0 -95
- package/src/schemas/fields/identifier-schema.ts +0 -24
- package/src/schemas/fields/invoice-line-period-schema.ts +0 -31
- package/src/schemas/fields/invoice-line-schema.ts +0 -41
- package/src/schemas/fields/invoice-period-schema.ts +0 -27
- package/src/schemas/fields/legal-monetary-total-schema.ts +0 -125
- package/src/schemas/fields/line-allowance-charge-schema.ts +0 -59
- package/src/schemas/fields/line-item-schema.ts +0 -183
- package/src/schemas/fields/line-price-allowance-charge-schema.ts +0 -33
- package/src/schemas/fields/list-identifier-schema.ts +0 -43
- package/src/schemas/fields/order-reference-schema.ts +0 -36
- package/src/schemas/fields/party-base-schema.ts +0 -131
- package/src/schemas/fields/party-legal-entity-schema.ts +0 -29
- package/src/schemas/fields/party-tax-schema.ts +0 -33
- package/src/schemas/fields/payee-party.ts +0 -107
- package/src/schemas/fields/payment-means-schema.ts +0 -209
- package/src/schemas/fields/payment-terms-schema.ts +0 -23
- package/src/schemas/fields/price-schema.ts +0 -31
- package/src/schemas/fields/quantity-schema.ts +0 -21
- package/src/schemas/fields/reference-schema.ts +0 -4
- package/src/schemas/fields/tax-category-schema.ts +0 -41
- package/src/schemas/fields/tax-representative-party-schema.ts +0 -23
- package/src/schemas/fields/tax-subtotal-category-schema.ts +0 -26
- package/src/schemas/fields/tax-subtotal-schema.ts +0 -32
- package/src/schemas/fields/tax-totals.ts +0 -25
- package/src/schemas/fields/time-only.ts +0 -23
- package/src/schemas/invoice-response-document-actual-response-status.ts +0 -58
- package/src/schemas/invoice-response-document-actual-response.ts +0 -73
- package/src/schemas/invoice-response-schema.ts +0 -155
- package/src/schemas/invoice-response-status-reason-code.ts +0 -30
- package/src/schemas/invoice.ts +0 -43
- package/src/schemas/message-level-response-document-response-schema.ts +0 -33
- package/src/schemas/message-level-response-party-schema.ts +0 -18
- package/src/schemas/message-level-response-schema.ts +0 -96
- package/src/schemas/utils/base-64.ts +0 -34
- package/src/schemas/utils/vat-regex.ts +0 -51
- package/src/schemas/utils/xsd-time.ts +0 -9
- package/src/schemas/values/additional-document-reference-code.ts +0 -27
- package/src/schemas/values/allowance-charge-reason-code.ts +0 -29
- package/src/schemas/values/application-response-type-codes.ts +0 -25
- package/src/schemas/values/charge-reason-code.ts +0 -29
- package/src/schemas/values/country-code.ts +0 -36
- package/src/schemas/values/currency-codes.ts +0 -35
- package/src/schemas/values/document-type-codes.ts +0 -25
- package/src/schemas/values/document-type-schema.ts +0 -49
- package/src/schemas/values/duty-tax-fee-cateogries.ts +0 -28
- package/src/schemas/values/eas-codes.ts +0 -35
- package/src/schemas/values/icd-codes.ts +0 -28
- package/src/schemas/values/invoice-status-codes.ts +0 -25
- package/src/schemas/values/item-classification-code-schema.ts +0 -28
- package/src/schemas/values/mime-code.ts +0 -28
- package/src/schemas/values/op-status-action.ts +0 -25
- package/src/schemas/values/op-status-reason.ts +0 -25
- package/src/schemas/values/participant-identifier-code.ts +0 -25
- package/src/schemas/values/payment-means-codes-schema.ts +0 -36
- package/src/schemas/values/process-schema.ts +0 -41
- package/src/schemas/values/process-xml-identifier-schema.ts +0 -27
- package/src/schemas/values/vat-date-code.ts +0 -15
- package/src/schemas/values/vatex-code.ts +0 -28
- package/src/schemas.ts +0 -97
- /package/src/{effect → schemas}/utils/peppol-base-64-schema.ts +0 -0
- /package/src/{effect → schemas}/values/additional-document-reference-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/allowance-charge-reason-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/application-response-type-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/charge-reason-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/currency-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/electronic-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/icd-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/index.ts +0 -0
- /package/src/{effect → schemas}/values/invoice-status-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/item-classification-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/mime-codes-schema.ts +0 -0
- /package/src/{effect → schemas}/values/op-status-action-schema.ts +0 -0
- /package/src/{effect → schemas}/values/op-status-reason-schema.ts +0 -0
- /package/src/{effect → schemas}/values/participant-identifier-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/payment-means-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-country-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-document-type-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-document-type-schema.ts +0 -0
- /package/src/{effect → schemas}/values/peppol-process-schema.ts +0 -0
- /package/src/{effect → schemas}/values/vat-date-code-schema.ts +0 -0
- /package/src/{effect → schemas}/values/vatex-code-schema.ts +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolIdentifier } from '#/schemas/fields/peppol-identifier-schema';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
5
|
+
|
|
6
|
+
export class PeppolPartyLegalEntity extends opaque<PeppolPartyLegalEntity>()(
|
|
7
|
+
Schema.Struct({
|
|
8
|
+
/**
|
|
9
|
+
* @example
|
|
10
|
+
* 987654321;
|
|
11
|
+
*
|
|
12
|
+
* @name cbc:CompanyID (+ @schemeID)
|
|
13
|
+
*/
|
|
14
|
+
companyId: Schema.optional(PeppolIdentifier),
|
|
15
|
+
/**
|
|
16
|
+
* @example
|
|
17
|
+
* Share capital
|
|
18
|
+
*
|
|
19
|
+
* @name cbc:CompanyLegalForm
|
|
20
|
+
*/
|
|
21
|
+
companyLegalForm: Schema.optional(Schema.String),
|
|
22
|
+
/**
|
|
23
|
+
* @example
|
|
24
|
+
* Full Formal Seller Name LTD.
|
|
25
|
+
*
|
|
26
|
+
* @name cbc:RegistrationName
|
|
27
|
+
*/
|
|
28
|
+
registrationName: Schema.String,
|
|
29
|
+
})
|
|
30
|
+
) {}
|
|
31
|
+
|
|
32
|
+
export type PeppolPartyLegalEntitySchema = PeppolPartyLegalEntity;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Effect, Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
|
|
5
|
+
class PeppolTaxSchemeId extends opaque<PeppolTaxSchemeId>()(
|
|
6
|
+
Schema.Struct({
|
|
7
|
+
/**
|
|
8
|
+
* @description Mandatory element. For Seller VAT identifier (BT-31), use value “VAT”, for the seller tax registration identifier (BT-32), use != "VAT"
|
|
9
|
+
*
|
|
10
|
+
* @name cbc:ID
|
|
11
|
+
*/
|
|
12
|
+
id: Schema.String.pipe(Schema.withDecodingDefaultType(Effect.succeed('VAT'))),
|
|
13
|
+
})
|
|
14
|
+
) {}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @name cac:PartyTaxScheme (0..2)
|
|
18
|
+
*/
|
|
19
|
+
export class PeppolPartyTaxScheme extends opaque<PeppolPartyTaxScheme>()(
|
|
20
|
+
Schema.Struct({
|
|
21
|
+
/**
|
|
22
|
+
* @description The Seller's VAT identifier (also known as Seller VAT identification number) or the local identification (defined by the Seller’s address) of
|
|
23
|
+
* the Seller for tax purposes or a reference that enables the Seller to state his registered tax status. In order for the buyer to automatically
|
|
24
|
+
* identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) and/or the Seller VAT identifier (BT-31)
|
|
25
|
+
* shall be present.
|
|
26
|
+
*
|
|
27
|
+
* @summary Seller VAT identifier, Seller tax registration identifier
|
|
28
|
+
*
|
|
29
|
+
* @name `cbc:CompanyID`
|
|
30
|
+
*/
|
|
31
|
+
companyId: Schema.String,
|
|
32
|
+
/**
|
|
33
|
+
* @description Mandatory element. For Seller VAT identifier (BT-31), use value “VAT”, for the seller tax registration identifier (BT-32), use != "VAT"
|
|
34
|
+
*
|
|
35
|
+
* @name `cac:TaxScheme`
|
|
36
|
+
*/
|
|
37
|
+
taxSchemeId: PeppolTaxSchemeId,
|
|
38
|
+
})
|
|
39
|
+
) {}
|
|
40
|
+
|
|
41
|
+
export type PeppolPartyTaxSchema = PeppolPartyTaxScheme;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolIdentifier } from '#/schemas/fields/peppol-identifier-schema';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
5
|
+
import { icdCodesSchema } from '#/schemas/values/icd-codes-schema';
|
|
6
|
+
|
|
7
|
+
class PeppolPartyName extends opaque<PeppolPartyName>()(Schema.Struct({ name: Schema.String })) {}
|
|
8
|
+
|
|
9
|
+
class PeppolPartyLegalEntity extends opaque<PeppolPartyLegalEntity>()(
|
|
10
|
+
Schema.Struct({
|
|
11
|
+
/**
|
|
12
|
+
* @description An identifier issued by an official registrar that identifies the payee as a legal entity or person.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* `FR932874294`;
|
|
16
|
+
*
|
|
17
|
+
* @summary Payee legal registration identifier
|
|
18
|
+
*
|
|
19
|
+
* @name `cbc:CompanyID`
|
|
20
|
+
*/
|
|
21
|
+
companyId: Schema.optional(
|
|
22
|
+
PeppolIdentifier.pipe(
|
|
23
|
+
Schema.fieldsAssign({
|
|
24
|
+
/**
|
|
25
|
+
* @description An identifier issued by an official registrar that identifies the payee as a legal entity or person.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* `FR932874294`;
|
|
29
|
+
*
|
|
30
|
+
* @summary Payee legal registration identifier
|
|
31
|
+
*
|
|
32
|
+
* @name `#text`
|
|
33
|
+
*/
|
|
34
|
+
id: Schema.String,
|
|
35
|
+
/**
|
|
36
|
+
* @description The identification scheme identifier of the Payee legal registration identifier.
|
|
37
|
+
*
|
|
38
|
+
* @summary Payee legal registration identifier identification scheme identifier
|
|
39
|
+
*
|
|
40
|
+
* @name `@schemeID`
|
|
41
|
+
*/
|
|
42
|
+
schemeId: Schema.optional(icdCodesSchema),
|
|
43
|
+
})
|
|
44
|
+
)
|
|
45
|
+
),
|
|
46
|
+
})
|
|
47
|
+
) {}
|
|
48
|
+
|
|
49
|
+
class PeppolPartyIdentification extends opaque<PeppolPartyIdentification>()(
|
|
50
|
+
Schema.Struct({
|
|
51
|
+
/**
|
|
52
|
+
* @description This element is used for both the identification of the Payee, or the unique banking reference identifier of Payee (assigned by the Payee
|
|
53
|
+
* bank.) For payee identification use ICD code list, for SEPA bank assigned creditor reference, use SEPA.
|
|
54
|
+
*
|
|
55
|
+
* @summary Payee identifier or bank assigned crditor identifier
|
|
56
|
+
*
|
|
57
|
+
* @name `cbc:ID`
|
|
58
|
+
*/
|
|
59
|
+
id: Schema.optional(
|
|
60
|
+
PeppolIdentifier.pipe(
|
|
61
|
+
Schema.fieldsAssign({
|
|
62
|
+
/**
|
|
63
|
+
* @description This element is used for both the identification of the Payee, or the unique banking reference identifier of Payee (assigned by the Payee
|
|
64
|
+
* bank.) For payee identification use ICD code list, for SEPA bank assigned creditor reference, use SEPA.
|
|
65
|
+
*
|
|
66
|
+
* @summary Payee identifier or bank assigned crditor identifier
|
|
67
|
+
*
|
|
68
|
+
* @name `#text`
|
|
69
|
+
*/
|
|
70
|
+
id: Schema.String,
|
|
71
|
+
/**
|
|
72
|
+
* @description The identification scheme identifier of the payee identifier. For bank assigned creditor identifier (BT-90), value MUST be "SEPA"
|
|
73
|
+
*
|
|
74
|
+
* @summary Payee or bank assigned creditor identifier identification scheme identifier
|
|
75
|
+
*
|
|
76
|
+
* @name `@schemeID`
|
|
77
|
+
*/
|
|
78
|
+
schemeId: Schema.optional(Schema.String),
|
|
79
|
+
})
|
|
80
|
+
)
|
|
81
|
+
),
|
|
82
|
+
})
|
|
83
|
+
) {}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* @description A group of business terms providing information about the Payee, i.e. the role that received the payment. Shall be used wwhen the payee is
|
|
87
|
+
* different from the seller.
|
|
88
|
+
*
|
|
89
|
+
* @summary PAYEE
|
|
90
|
+
*
|
|
91
|
+
* @name cac:PayeeParty
|
|
92
|
+
*/
|
|
93
|
+
export class PeppolPayeeParty extends opaque<PeppolPayeeParty>()(
|
|
94
|
+
Schema.Struct({
|
|
95
|
+
/**
|
|
96
|
+
* @summary PARTY IDENTIFICATION
|
|
97
|
+
*
|
|
98
|
+
* @name `cac:PartyIdentification`
|
|
99
|
+
*/
|
|
100
|
+
partyIdentification: Schema.optional(PeppolPartyIdentification),
|
|
101
|
+
/**
|
|
102
|
+
* @summary PARTY LEGAL ENTITY
|
|
103
|
+
*
|
|
104
|
+
* @name `cac:PartyLegalEntity`
|
|
105
|
+
*/
|
|
106
|
+
partyLegalEntity: Schema.optional(PeppolPartyLegalEntity),
|
|
107
|
+
/**
|
|
108
|
+
* @description The name of the payee.
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* `Payee Name Ltd`;
|
|
112
|
+
*
|
|
113
|
+
* @summary Payee name
|
|
114
|
+
*
|
|
115
|
+
* @name `cac:PartyName`
|
|
116
|
+
*/
|
|
117
|
+
partyName: PeppolPartyName,
|
|
118
|
+
})
|
|
119
|
+
) {}
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolIsoDateString } from '#/schemas/peppol-iso-date-string';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
5
|
+
import { paymentMeansCodeSchema } from '#/schemas/values/payment-means-code-schema';
|
|
6
|
+
|
|
7
|
+
class PeppolPaymentMandatePayerFinancialAccountId extends opaque<PeppolPaymentMandatePayerFinancialAccountId>()(
|
|
8
|
+
Schema.Struct({
|
|
9
|
+
/**
|
|
10
|
+
* @description The account to be debited by the direct debit.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* `12345676543`;
|
|
14
|
+
*
|
|
15
|
+
* @summary Debited account identifier
|
|
16
|
+
*
|
|
17
|
+
* @name `cbc:ID`
|
|
18
|
+
*/
|
|
19
|
+
id: Schema.String,
|
|
20
|
+
})
|
|
21
|
+
) {}
|
|
22
|
+
|
|
23
|
+
class PeppolPaymentMandate extends opaque<PeppolPaymentMandate>()(
|
|
24
|
+
Schema.Struct({
|
|
25
|
+
/**
|
|
26
|
+
* @description Unique identifier assigned by the Payee for referencing the direct debit mandate. Used in order to pre-notify the Buyer of a SEPA direct debit.
|
|
27
|
+
*
|
|
28
|
+
* @summary Mandate reference identifier
|
|
29
|
+
*
|
|
30
|
+
* @name cbc:ID
|
|
31
|
+
*/
|
|
32
|
+
id: Schema.optional(Schema.String),
|
|
33
|
+
/**
|
|
34
|
+
* @description The account to be debited by the direct debit.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* `12345676543`;
|
|
38
|
+
*
|
|
39
|
+
* @summary Debited account identifier
|
|
40
|
+
*
|
|
41
|
+
* @name `cac:PayerFinancialAccount`
|
|
42
|
+
*/
|
|
43
|
+
payerFinancialAccountId: Schema.optional(PeppolPaymentMandatePayerFinancialAccountId),
|
|
44
|
+
})
|
|
45
|
+
) {}
|
|
46
|
+
|
|
47
|
+
class PeppolPayeeFinancialAccountFinancialInstitutionBranch extends opaque<PeppolPayeeFinancialAccountFinancialInstitutionBranch>()(
|
|
48
|
+
Schema.Struct({
|
|
49
|
+
/**
|
|
50
|
+
* @description An identifier for the payment service provider where a payment account is located. Such as a BIC or a national clearing code where required. No
|
|
51
|
+
* identification scheme Identifier to be used.
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* `9998`;
|
|
55
|
+
*
|
|
56
|
+
* @summary Payment service provider identifier
|
|
57
|
+
*
|
|
58
|
+
* @name `cac:FinancialInstitutionBranch`
|
|
59
|
+
*/
|
|
60
|
+
id: Schema.String,
|
|
61
|
+
})
|
|
62
|
+
) {}
|
|
63
|
+
|
|
64
|
+
class PeppolPayeeFinancialAccount extends opaque<PeppolPayeeFinancialAccount>()(
|
|
65
|
+
Schema.Struct({
|
|
66
|
+
/**
|
|
67
|
+
* @description An identifier for the payment service provider where a payment account is located. Such as a BIC or a national clearing code where required. No
|
|
68
|
+
* identification scheme Identifier to be used.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* `9998`;
|
|
72
|
+
*
|
|
73
|
+
* @summary Payment service provider identifier
|
|
74
|
+
*
|
|
75
|
+
* @name `cac:FinancialInstitutionBranch`
|
|
76
|
+
*/
|
|
77
|
+
financialInstitutionBranch: Schema.optional(PeppolPayeeFinancialAccountFinancialInstitutionBranch),
|
|
78
|
+
/**
|
|
79
|
+
* @description A unique identifier of the financial payment account, at a payment service provider, to which payment should be made. Such as IBAN or BBAN.
|
|
80
|
+
*
|
|
81
|
+
* @summary Payment account identifier
|
|
82
|
+
*
|
|
83
|
+
* @name cbc:ID
|
|
84
|
+
*/
|
|
85
|
+
id: Schema.String,
|
|
86
|
+
/**
|
|
87
|
+
* @description The name of the payment account, at a payment service provider, to which payment should be made.
|
|
88
|
+
*
|
|
89
|
+
* @summary Payment account name
|
|
90
|
+
*
|
|
91
|
+
* @name cbc:Name
|
|
92
|
+
*/
|
|
93
|
+
name: Schema.optional(Schema.String),
|
|
94
|
+
})
|
|
95
|
+
) {}
|
|
96
|
+
|
|
97
|
+
class PeppolCardAccount extends opaque<PeppolCardAccount>()(
|
|
98
|
+
Schema.Struct({
|
|
99
|
+
/**
|
|
100
|
+
* @description The name of the payment card holder.
|
|
101
|
+
*
|
|
102
|
+
* @summary Payment card holder name
|
|
103
|
+
*
|
|
104
|
+
* @name cbc:HolderName
|
|
105
|
+
*/
|
|
106
|
+
holderName: Schema.optional(Schema.String),
|
|
107
|
+
/**
|
|
108
|
+
* @summary Syntax required element not related to a business term.
|
|
109
|
+
*
|
|
110
|
+
* @name cbc:NetworkID
|
|
111
|
+
*/
|
|
112
|
+
networkId: Schema.String,
|
|
113
|
+
/**
|
|
114
|
+
* @description The Primary Account Number (PAN) of the card used for payment. In accordance with card payments security standards, an invoice should never
|
|
115
|
+
* include a full card primary account number.
|
|
116
|
+
*
|
|
117
|
+
* @example
|
|
118
|
+
* `1234`;
|
|
119
|
+
*
|
|
120
|
+
* @summary Payment card primary account number
|
|
121
|
+
*
|
|
122
|
+
* @name cbc:PrimaryAccountNumberID
|
|
123
|
+
*/
|
|
124
|
+
primaryAccountNumberId: Schema.String,
|
|
125
|
+
})
|
|
126
|
+
) {}
|
|
127
|
+
|
|
128
|
+
class PeppolPaymentMeansCode extends opaque<PeppolPaymentMeansCode>()(
|
|
129
|
+
Schema.Struct({
|
|
130
|
+
/**
|
|
131
|
+
* @description The means, expressed as code, for how a payment is expected to be or has been settled.
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* 30;
|
|
135
|
+
*
|
|
136
|
+
* @summary Payment means type code
|
|
137
|
+
*
|
|
138
|
+
* @name `#text`
|
|
139
|
+
*/
|
|
140
|
+
code: paymentMeansCodeSchema,
|
|
141
|
+
/**
|
|
142
|
+
* @description The means, expressed as text, for how a payment is expected to be or has been settled.
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* Credit transfer
|
|
146
|
+
*
|
|
147
|
+
* @summary Payment means text
|
|
148
|
+
*
|
|
149
|
+
* @name `@name`
|
|
150
|
+
*/
|
|
151
|
+
name: Schema.optional(Schema.String),
|
|
152
|
+
})
|
|
153
|
+
) {}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* @description A group of business terms providing information about the payment.
|
|
157
|
+
*
|
|
158
|
+
* @summary Payment means (credit transfer/direct debit/card)
|
|
159
|
+
*
|
|
160
|
+
* @name cac:PaymentMeans
|
|
161
|
+
*/
|
|
162
|
+
export class PeppolPaymentMeans extends opaque<PeppolPaymentMeans>()(
|
|
163
|
+
Schema.Struct({
|
|
164
|
+
/**
|
|
165
|
+
* @description The means, expressed as code, for how a payment is expected to be or has been settled.
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
* 30;
|
|
169
|
+
*
|
|
170
|
+
* @summary Payment means type code
|
|
171
|
+
*
|
|
172
|
+
* @name `cbc:PaymentMeansCode`
|
|
173
|
+
*/
|
|
174
|
+
paymentMeansCode: PeppolPaymentMeansCode,
|
|
175
|
+
/**
|
|
176
|
+
* @description The date when the payment is due.Format "YYYY-MM-DD". In case the Amount due for payment (BT-115) is positive, either the Payment due date
|
|
177
|
+
* (BT-9) or the Payment terms (BT-20) shall be present.
|
|
178
|
+
*
|
|
179
|
+
* @remarks
|
|
180
|
+
* This should only be used with a credit note.
|
|
181
|
+
*
|
|
182
|
+
* @summary Payment due date
|
|
183
|
+
*
|
|
184
|
+
* @name `cbc:PaymentDueDate`
|
|
185
|
+
*/
|
|
186
|
+
paymentDueDate: Schema.optional(PeppolIsoDateString),
|
|
187
|
+
/**
|
|
188
|
+
* @description A textual value used to establish a link between the payment and the Invoice, issued by the Seller. Used for creditor's critical reconciliation
|
|
189
|
+
* information. This information element helps the Seller to assign an incoming payment to the relevant payment process.
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* `432948234234234`;
|
|
193
|
+
*
|
|
194
|
+
* @summary Remittance information
|
|
195
|
+
*
|
|
196
|
+
* @name cbc:PaymentID
|
|
197
|
+
*/
|
|
198
|
+
paymentId: Schema.optional(Schema.String),
|
|
199
|
+
/**
|
|
200
|
+
* @description A group of business terms providing information about card used for payment contemporaneous with invoice issuance.
|
|
201
|
+
*
|
|
202
|
+
* @summary PAYMENT CARD INFORMATION
|
|
203
|
+
*
|
|
204
|
+
* @name cac:CardAccount
|
|
205
|
+
*/
|
|
206
|
+
cardAccount: Schema.optional(PeppolCardAccount),
|
|
207
|
+
/**
|
|
208
|
+
* @description A group of business terms to specify credit transfer payments.
|
|
209
|
+
*
|
|
210
|
+
* @summary CREDIT TRANSFER
|
|
211
|
+
*
|
|
212
|
+
* @name cac:PayeeFinancialAccount
|
|
213
|
+
*/
|
|
214
|
+
payeeFinancialAccount: Schema.optional(PeppolPayeeFinancialAccount),
|
|
215
|
+
/**
|
|
216
|
+
* @description A group of business terms to specify a direct debit.
|
|
217
|
+
*
|
|
218
|
+
* @summary DIRECT DEBIT
|
|
219
|
+
*
|
|
220
|
+
* @name cac:PaymentMandate
|
|
221
|
+
*/
|
|
222
|
+
paymentMandate: Schema.optional(PeppolPaymentMandate),
|
|
223
|
+
})
|
|
224
|
+
) {}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @summary PAYMENT TERMS
|
|
7
|
+
*
|
|
8
|
+
* @name cac:PaymentTerms
|
|
9
|
+
*/
|
|
10
|
+
export class PeppolPaymentTerms extends opaque<PeppolPaymentTerms>()(
|
|
11
|
+
Schema.Struct({
|
|
12
|
+
/**
|
|
13
|
+
* @description A textual description of the payment terms that apply to the amount due for payment (Including description of possible penalties). In case the
|
|
14
|
+
* Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* Net within 30 days
|
|
18
|
+
*
|
|
19
|
+
* @summary Payment terms
|
|
20
|
+
*
|
|
21
|
+
* @name cbc:Note
|
|
22
|
+
*/
|
|
23
|
+
note: Schema.String,
|
|
24
|
+
})
|
|
25
|
+
) {}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
import { quantityUnitCodesSchema } from '#/schemas/values/quantity-unit-codes-schema';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @summary Quantity with optional unit code
|
|
8
|
+
*
|
|
9
|
+
* @name `cbc:* (+ @unitCode)`
|
|
10
|
+
*/
|
|
11
|
+
export class PeppolQuantity extends opaque<PeppolQuantity>()(
|
|
12
|
+
Schema.Struct({
|
|
13
|
+
/**
|
|
14
|
+
* @name `@unitCode`
|
|
15
|
+
*/
|
|
16
|
+
unitCode: Schema.optional(quantityUnitCodesSchema),
|
|
17
|
+
/**
|
|
18
|
+
* @name `#text (value)`
|
|
19
|
+
*/
|
|
20
|
+
value: Schema.Finite,
|
|
21
|
+
})
|
|
22
|
+
) {}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
|
|
5
|
+
class PeppolReferenceId extends opaque<PeppolReferenceId>()(Schema.Struct({ id: Schema.String })) {}
|
|
6
|
+
|
|
7
|
+
export const peppolReferenceSchema = Schema.Union([PeppolReferenceId, Schema.Undefined]);
|
|
8
|
+
|
|
9
|
+
export type PeppolReferenceSchema = typeof peppolReferenceSchema.Type;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Effect, Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
|
+
import { peppolDutyTaxFeeCategorySchema } from '#/schemas/values/duty-tax-fee-category-schema';
|
|
5
|
+
|
|
6
|
+
export class PeppolTaxSchemeId extends opaque<PeppolTaxSchemeId>()(
|
|
7
|
+
Schema.Struct({
|
|
8
|
+
/**
|
|
9
|
+
* @name `cbc:ID`
|
|
10
|
+
*/
|
|
11
|
+
id: Schema.String.pipe(Schema.withDecodingDefaultType(Effect.succeed('VAT'))),
|
|
12
|
+
})
|
|
13
|
+
) {}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @description A group of business terms providing information about the VAT applicable for the goods and services invoiced on the Invoice line.
|
|
17
|
+
*
|
|
18
|
+
* @summary LINE VAT INFORMATION
|
|
19
|
+
*
|
|
20
|
+
* @name `cac:TaxCategory`
|
|
21
|
+
*/
|
|
22
|
+
export class PeppolTaxCategory extends opaque<PeppolTaxCategory>()(
|
|
23
|
+
Schema.Struct({
|
|
24
|
+
/**
|
|
25
|
+
* @description The VAT category code for the invoiced item.
|
|
26
|
+
*
|
|
27
|
+
* @summary Invoiced item VAT category code
|
|
28
|
+
*
|
|
29
|
+
* @name `cbc:ID`
|
|
30
|
+
*/
|
|
31
|
+
id: peppolDutyTaxFeeCategorySchema,
|
|
32
|
+
/**
|
|
33
|
+
* @description The VAT rate, represented as percentage that applies to the invoiced item.
|
|
34
|
+
*
|
|
35
|
+
* @summary Invoiced item VAT rate
|
|
36
|
+
*
|
|
37
|
+
* @name `cbc:Percent`
|
|
38
|
+
*/
|
|
39
|
+
percent: Schema.optional(Schema.Finite),
|
|
40
|
+
/**
|
|
41
|
+
* @default VAT
|
|
42
|
+
*
|
|
43
|
+
* @name `cac:TaxScheme`
|
|
44
|
+
*/
|
|
45
|
+
taxSchemeId: PeppolTaxSchemeId,
|
|
46
|
+
})
|
|
47
|
+
) {}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolAddress } from '#/schemas/fields/peppol-address-schema';
|
|
4
|
+
import { PeppolPartyTaxScheme } from '#/schemas/fields/peppol-party-tax-scheme-schema';
|
|
5
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @summary SELLER TAX REPRESENTATIVE PARTY
|
|
9
|
+
*
|
|
10
|
+
* @name cac:TaxRepresentativeParty
|
|
11
|
+
*/
|
|
12
|
+
export class PeppolTaxRepresentative extends opaque<PeppolTaxRepresentative>()(
|
|
13
|
+
Schema.Struct({
|
|
14
|
+
/**
|
|
15
|
+
* @name cac:PartyName/cbc:Name
|
|
16
|
+
*/
|
|
17
|
+
name: Schema.String,
|
|
18
|
+
/**
|
|
19
|
+
* @name cac:PostalAddress
|
|
20
|
+
*/
|
|
21
|
+
postalAddress: PeppolAddress,
|
|
22
|
+
partyTaxScheme: PeppolPartyTaxScheme,
|
|
23
|
+
})
|
|
24
|
+
) {}
|
|
25
|
+
|
|
26
|
+
export type PeppolTaxRepresentativeParty = PeppolTaxRepresentative;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { PeppolTaxCategory } from '#/schemas/fields/peppol-tax-category-schema';
|
|
4
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* @description This one is specific for TaxSubtotal since it includes more fields.
|
|
@@ -9,8 +10,9 @@ import { peppolTaxCategorySchema } from '#/effect/fields/peppol-tax-category-sch
|
|
|
9
10
|
*
|
|
10
11
|
* @name cac:TaxCategory
|
|
11
12
|
*/
|
|
12
|
-
export
|
|
13
|
-
Schema.
|
|
13
|
+
export class PeppolTaxSubTotalCategory extends opaque<PeppolTaxSubTotalCategory>()(
|
|
14
|
+
Schema.Struct({
|
|
15
|
+
...PeppolTaxCategory.fields,
|
|
14
16
|
/**
|
|
15
17
|
* @description The reason for the tax exemption.
|
|
16
18
|
*
|
|
@@ -24,7 +26,6 @@ export const peppolTaxSubtotalCategorySchema = peppolTaxCategorySchema.pipe(
|
|
|
24
26
|
*/
|
|
25
27
|
taxExemptionReasonCode: Schema.optional(Schema.String),
|
|
26
28
|
})
|
|
27
|
-
)
|
|
29
|
+
) {}
|
|
28
30
|
|
|
29
|
-
export interface
|
|
30
|
-
export interface PeppolTaxSubTotalCategoryEncoded extends Schema.Codec.Encoded<typeof peppolTaxSubtotalCategorySchema> {}
|
|
31
|
+
export interface PeppolTaxSubTotalCategoryEncoded extends Schema.Codec.Encoded<typeof PeppolTaxSubTotalCategory> {}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolAmount } from '#/schemas/fields/peppol-amount-schema';
|
|
4
|
+
import { PeppolTaxSubTotalCategory } from '#/schemas/fields/peppol-tax-subtotal-category-schema';
|
|
5
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @summary VAT breakdown (TaxSubtotal)
|
|
9
|
+
*
|
|
10
|
+
* @name cac:TaxSubtotal
|
|
11
|
+
*/
|
|
12
|
+
export class PeppolTaxSubTotal extends opaque<PeppolTaxSubTotal>()(
|
|
13
|
+
Schema.Struct({
|
|
14
|
+
/**
|
|
15
|
+
* @description The amount of tax for the tax subtotal.
|
|
16
|
+
*
|
|
17
|
+
* @name `cbc:TaxAmount (+ @currencyID)`
|
|
18
|
+
*/
|
|
19
|
+
taxAmount: PeppolAmount,
|
|
20
|
+
/**
|
|
21
|
+
* @description The tax category associated with this tax subtotal.
|
|
22
|
+
*
|
|
23
|
+
* @name cac:TaxCategory
|
|
24
|
+
*/
|
|
25
|
+
taxCategory: PeppolTaxSubTotalCategory,
|
|
26
|
+
/**
|
|
27
|
+
* @description The taxable amount for the tax subtotal.
|
|
28
|
+
*
|
|
29
|
+
* @name `cbc:TaxableAmount (+ @currencyID)`
|
|
30
|
+
*/
|
|
31
|
+
taxableAmount: PeppolAmount,
|
|
32
|
+
})
|
|
33
|
+
) {}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
|
|
3
|
+
import { PeppolAmount } from '#/schemas/fields/peppol-amount-schema';
|
|
4
|
+
import { PeppolTaxSubTotal } from '#/schemas/fields/peppol-tax-subtotal-schema';
|
|
5
|
+
import { opaque } from '#/schemas/utils/opaque';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @summary TAX TOTAL
|
|
9
|
+
*
|
|
10
|
+
* @name cac:TaxTotal (1..2)
|
|
11
|
+
*/
|
|
12
|
+
export class PeppolTaxTotalsBase extends opaque<PeppolTaxTotalsBase>()(
|
|
13
|
+
Schema.Struct({
|
|
14
|
+
/**
|
|
15
|
+
* @example
|
|
16
|
+
* 200;
|
|
17
|
+
*
|
|
18
|
+
* @name cbc:TaxAmount (+ @currencyID)
|
|
19
|
+
*/
|
|
20
|
+
taxAmount: PeppolAmount,
|
|
21
|
+
/**
|
|
22
|
+
* @name cac:TaxSubtotal (0..n)
|
|
23
|
+
*/
|
|
24
|
+
taxSubtotals: Schema.optional(Schema.Array(PeppolTaxSubTotal)),
|
|
25
|
+
})
|
|
26
|
+
) {}
|
|
27
|
+
|
|
28
|
+
export type PeppolTaxTotal = PeppolTaxTotalsBase;
|