RIF (Registro de Informacion Fiscal) in english Fiscal Information Registry is a number provided by a Venezuelan entity SAIME used to identify multiple entities for taxable purposes.
The RIF is composed by a kind which could be:
An identifier number followed by a hyphen symbol and finally a checksum digit, as well followed by a hyphen symbol.
Implement a crate to help create instances of valid RIF numbers
Creating a new Rif
instance providing each of its parts values
such as Kind
(J; V; P; G; C), identifier (tax payer ID), check number.
The following code, creates an instance of Rif
for a RIF string which
looks like J-07013380-5
:
```rust use rifven::{Kind, Rif};
let rif = Rif::new(Kind::Legal, 07013380, 5).unwrap();
asserteq!(rif.kind(), Kind::Legal); asserteq!(rif.identifier(), 7013380); asserteq!(rif.checksumdigit(), 5); ```
You can also create instances of Rif
from its string representation
```rust use rifven::{Kind, Rif}; use std::str::FromStr;
let myrif = Rif::from_str("J-07013380-5").unwrap();
assert_eq!(Rif::new(Kind::Legal, 07013380, 5).unwrap(), myrif); ```
Licensed under the Apache 2.0 and MIT licenses
Every contribution to this project is welcome, feel free to either open a Pull Request or issue