Skip to main content

FiscalError

Enum FiscalError 

Source
#[non_exhaustive]
pub enum FiscalError {
Show 14 variants InvalidTaxData(String), UnsupportedIcmsCst(String), UnsupportedIcmsCsosn(String), MissingRequiredField { field: String, }, InvalidGtin(String), XmlGeneration(String), XmlParsing(String), SefazRejection { code: String, message: String, }, Certificate(String), InvalidStateCode(String), Contingency(String), InvalidTxt(String), WrongDocument(String), Network(String),
}
Expand description

The primary error type returned by all public functions in fiscal-core, fiscal-crypto, and fiscal-sefaz.

All variants are #[non_exhaustive] so new error cases can be added in future releases without breaking downstream match arms.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

InvalidTaxData(String)

A tax data field contains an illegal value (e.g. malformed CNPJ, wrong field length, invalid access-key format).

§

UnsupportedIcmsCst(String)

An ICMS CST code is not recognised by the current tax computation module.

§

UnsupportedIcmsCsosn(String)

An ICMS CSOSN code is not recognised by the current tax computation module.

§

MissingRequiredField

A required XML field is absent. The field member names the missing tag.

Fields

§field: String

Name of the required XML tag or parameter that was absent.

§

InvalidGtin(String)

A GTIN barcode value is malformed or has an invalid check digit.

§

XmlGeneration(String)

An error occurred while building or serialising an XML document.

§

XmlParsing(String)

An error occurred while parsing an XML document.

§

SefazRejection

SEFAZ returned a rejection status code for a submitted document or event.

Fields

§code: String

SEFAZ status code (cStat), e.g. "301".

§message: String

Human-readable rejection message (xMotivo).

§

Certificate(String)

An error occurred while loading, parsing, or using a PKCS#12 certificate.

§

InvalidStateCode(String)

A two-letter state abbreviation (UF) or IBGE numeric code was not found in the lookup table.

§

Contingency(String)

An error occurred while activating, loading, or applying contingency mode.

§

InvalidTxt(String)

A TXT document is structurally invalid or references an unsupported layout.

§

WrongDocument(String)

The supplied document is not of the expected type (e.g. not a valid NFe TXT header).

§

Network(String)

An HTTP or network-level error occurred during SEFAZ communication.

Trait Implementations§

Source§

impl Debug for FiscalError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for FiscalError

Source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Error for FiscalError

1.30.0 · Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0:

use the Display impl or to_string()

1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Source§

impl PartialEq for FiscalError

Source§

fn eq(&self, other: &FiscalError) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for FiscalError

Source§

impl StructuralPartialEq for FiscalError

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.