Business::CPI::Util::Types - Basic types for Business::CPI
Moo types for isa checks and coercions.
Most gateways require the money amount to be provided with two decimal places. This method coerces the value into number, and then to a string as expected by the gateways.
Phone numbers should contain an optional + sign in the beginning, indicating whether it contains the country code or not, and numbers only. Non-alphanumerical characters are allowed, such as parenthesis and spaces, but will be removed.
Examples of accepted phone numbers, and their coerced values are:
- "+55 11 12345678" becomes "+551112345678"
- "+55 (11) 12345678" becomes "+551112345678"
- "+551112345678" remains the same
- "1234-5678" becomes "12345678"
- "(11)1234-5678" becomes "1112345678"
- "1234567890123" remains the same
Lowercase two-letter code for countries, according to ISO 3166-1. See:
The type is somewhat flexible, coercing to the alpha-2 code if the English name is provided. But the recommended way is to set it as expected, the lowercase alpha-2 code.
A valid DateTime object. No coercions here.
André Walker <firstname.lastname@example.org>
This software is copyright (c) 2015 by André Walker.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.