Tufy
"Pronounced as T-U-fy" Helper gem to convert any raw data into TU-readable format.
More Information
See the TUDF ver. 11 Guide and the TUDF ver. 11 Walkthrough
Installation
$ gem install tufy
Usage
1. Tufy.transform_raw_data_array(header_data, raw_data_array)
transform_raw_data_array_result =
Tufy.transform_raw_data_array(
{
# for the header segment
member_reference_number: member_reference_number,
processor_name: processor_name,
user_id: user_id,
},
[
{
# for the name segment
first_name: first_name,
last_name: last_name,
civil_status: civil_status,
date_of_birth: date_of_birth,
gender: gender,
ac_holder_type: ac_holder_type,
# for the id segment
id_number: id_number,
id_type: id_type,
# for the address segment
address_line_1: address_line_1,
address_line_2: address_line_2,
address_type: address_type,
# for contact number segment
contact_number: contact_number,
contact_number_format: contact_number_format,
# for email address segment
email_address: email_address,
# for account segment
account_number: account_number,
restructured_account_number: restructured_account_number,
account_status: account_status,
account_type: account_type,
currency_code: currency_code,
opened_date: opened_date,
payment_amount: payment_amount,
closed_date: closed_date,
credit_limit_or_loan_amount: credit_limit_or_loan_amount,
shared_by: shared_by,
outstanding_balance: outstanding_balance,
interest_and_fees: interest_and_fees,
unbilled_balance: unbilled_balance,
cash_advance_balance: cash_advance_balance,
number_of_days_past_due: number_of_days_past_due,
past_due_amount: past_due_amount,
installment_amount: installment_amount,
number_of_installments: number_of_installments,
payment_frequency: payment_frequency,
expiry_date: expiry_date,
consumer_or_commercial: consumer_or_commercial,
legal_action: legal_action,
partial_payment: partial_payment,
fresh_cash_advance: fresh_cash_advance,
},
]
)
2. Tufy.transform_raw_data(raw_data)
transform_raw_data_result =
Tufy.transform_raw_data(
{
# for the name segment
first_name: first_name,
last_name: last_name,
civil_status: civil_status,
date_of_birth: date_of_birth,
gender: gender,
ac_holder_type: ac_holder_type,
# for the id segment
id_number: id_number,
id_type: id_type,
# for the address segment
address_line_1: address_line_1,
address_line_2: address_line_2,
address_type: address_type,
# for contact number segment
contact_number: contact_number,
contact_number_format: contact_number_format,
# for email address segment
email_address: email_address,
# for account segment
account_number: account_number,
restructured_account_number: restructured_account_number,
account_status: account_status,
account_type: account_type,
currency_code: currency_code,
opened_date: opened_date,
payment_amount: payment_amount,
closed_date: closed_date,
credit_limit_or_loan_amount: credit_limit_or_loan_amount,
shared_by: shared_by,
outstanding_balance: outstanding_balance,
interest_and_fees: interest_and_fees,
unbilled_balance: unbilled_balance,
cash_advance_balance: cash_advance_balance,
number_of_days_past_due: number_of_days_past_due,
past_due_amount: past_due_amount,
installment_amount: installment_amount,
number_of_installments: number_of_installments,
payment_frequency: payment_frequency,
expiry_date: expiry_date,
consumer_or_commercial: consumer_or_commercial,
legal_action: legal_action,
partial_payment: partial_payment,
fresh_cash_advance: fresh_cash_advance,
}
)
Supported Data
| Segment | Field | Supported? |
|---|---|---|
| Header | MEMBER REFERENCE NUMBER | ✓ |
| PROCESSOR NAME | ✓ | |
| USER ID | ✓ | |
| Name | Multiple Entries | |
| FIRST NAME | ✓ | |
| MIDDLE NAME | ||
| LAST NAME | ✓ | |
| MOTHER'S MAIDEN FULL NAME | ||
| CIVIL STATUS | ✓ | |
| DATE OF BIRTH | ✓ | |
| GENDER | ✓ | |
| NATIONALITY | ||
| NUMBER OF DEPENDENTS | ||
| HOME OWNERSHIP | ||
| CAR OWNERSHIP | ||
| A/C HOLDER TYPE | ✓ | |
| DISPUTE | ||
| Id | Multiple Entries | |
| ID NUMBER | ✓ | |
| ID TYPE | ✓ | |
| Alias | Multiple Entries | |
| FIRST NAME | ||
| MIDDLE NAME | ||
| LAST NAME | ||
| MOTHER'S MAIDEN FULL NAME | ||
| Address | Multiple Entries | |
| ADDRESS LINE 1 | ✓ | |
| ADDRESS LINE 2 | ✓ | |
| ZIP CODE | ||
| TYPE | ✓ | |
| Contact Number | Multiple Entries | |
| COUNTRY CODE | ||
| AREA CODE | ||
| CONTACT NUMBER | ✓ | |
| EXT/CALL | ||
| FORMAT | ✓ | |
| Email Address | Multiple Entries | |
| EMAIL ADDRESS | ✓ | |
| Employment | COMPANY NAME | |
| NATURE OF BUSINESS | ||
| EMPLOYMENT TYPE | ||
| OCCUPATION | ||
| LENGTH OF EMPLOYMENT IN YEARS | ||
| LENGTH OF EMPLOYMENT IN MONTHS | ||
| CURRENCY CODE | ||
| CONSUMER ANNUAL INCOME | ||
| Education | EDUCATION LEVEL | |
| Account | ACCOUNT NUMBER | ✓ |
| RESTRUCTURED ACCOUNT NUMBER | ✓ | |
| USER ID | ✓ | |
| ACCOUNT STATUS | ✓ | |
| ACCOUT TYPE | ✓ | |
| CURRENCY CODE | ✓ | |
| OPENED DATE | ✓ | |
| PAYMENT AMOUNT | ✓ | |
| CLOSED DATE | ✓ | |
| CREDIT LIMIT OR LOAN AMOUNT | ✓ | |
| SHARED BY | ✓ | |
| OUTSTANDING BALANCE | ✓ | |
| INTEREST AND FEES | ✓ | |
| UNBILLED BALANCE | ✓ | |
| CASH ADVANCE BALANCE | ✓ | |
| NUMBER OF DAYS PAST DUE | ✓ | |
| PAST DUE AMOUNT | ✓ | |
| INSTALLMENT AMOUNT | ✓ | |
| NUMBER OF INSTALLMENTS | ✓ | |
| PAYMENT FREQUENCY | ✓ | |
| EXPIRY DATE | ✓ | |
| CONSUMER OR COMMERCIAL | ✓ | |
| LEGAL ACTION | ✓ | |
| PARTIAL PAYMENT | ✓ | |
| FRESH CASH ADVANCE | ✓ |
License
The gem is available as open source under the terms of the MIT License.
