pub enum Profile {
En16931,
PeppolBis3,
Pint,
PintMy,
Unknown,
}Expand description
Usage specification (BT-24). Not a ladder: Peppol BIS and PINT are siblings.
Variants§
En16931
CEN EN 16931-1 core (2017+A1 until 2026 artefacts exist).
PeppolBis3
Peppol BIS Billing 3.0 (EU VAT CIUS).
Pint
Peppol International base (tax is not only VAT).
PintMy
PINT-MY specialisation (SST, TIN/BRN schemes).
Unknown
Parsed BT-24 did not match a shipped billing profile. Do not invent En16931.
Implementations§
Source§impl Profile
impl Profile
pub const PEPPOL_BIS3_PREFIX: &'static str = "urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0"
pub fn slug(self) -> &'static str
pub fn parse(s: &str) -> Option<Self>
pub fn specification_id(self) -> &'static str
Sourcepub fn process_id(self) -> Option<&'static str>
pub fn process_id(self) -> Option<&'static str>
BT-23 / ProfileID required by this profile. EN 16931 has none (omit, do not invent).
Sourcepub fn tax_systems(self) -> &'static [TaxSystem]
pub fn tax_systems(self) -> &'static [TaxSystem]
Tax systems this profile accepts.
pub fn allows(self, system: TaxSystem) -> bool
pub fn known_slugs() -> &'static str
pub fn edition(self) -> Edition
Sourcepub fn is_conformant_cius(self) -> bool
pub fn is_conformant_cius(self) -> bool
Peppol BIS 3.0 is a CIUS of EN 16931. PINT is not.
Sourcepub fn extra_rules(self) -> &'static [Rule]
pub fn extra_rules(self) -> &'static [Rule]
Peppol extra_rules. PINT / PINT-MY / EN core do not inherit them.
Sourcepub fn for_specification_id(id: &str) -> ProfileLookup
pub fn for_specification_id(id: &str) -> ProfileLookup
Prefix match for BT-24. Never contains("pint").
Trait Implementations§
impl Copy for Profile
impl Eq for Profile
impl StructuralPartialEq for Profile
Auto Trait Implementations§
impl Freeze for Profile
impl RefUnwindSafe for Profile
impl Send for Profile
impl Sync for Profile
impl Unpin for Profile
impl UnsafeUnpin for Profile
impl UnwindSafe for Profile
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more