Skip to content

Revolving credit product – Invoicing process

Enfuce provides the issuer invoice data (“statement”) on account level once per month. You can use the provided data for creating and sending invoices to your customers.

How does the revolving credit invoicing process work?

When the Enfuce invoicing process starts, it will pick all the accounts that have the invoicing date in question. The system controls whether the account has balance or new transactions from the last invoicing cycle and starts the invoice calculation.

If an account does not have any debt and the balance is zero, and there are no transactions within the billing period, the statement will not be created and will be moved to the next invoicing date.

The Enfuce system…

  • checks if the end-user has paid the expected amount from the previous invoice before the due date. If not, the system will calculate overdue interest based on the remaining amount and days delayed. Overdue interest will be generated once a month.
  • checks if there are any fees to be generated during the invoicing process and posts the possible fee transactions on the account.
  • books the generated capital, overdue interest, interest, and fee to the due account.
  • generates the invoice data for each end-user affected at the end of the invoicing process.

The invoice process flow

The invoice process flow

Rules and exceptions to the revolving credit invoicing process

There are rules for when the accounts are included in the statement exports:

  • If the balance is not equal to zero
  • If the balance equals zero but there are transactions in the cycle

 

The accounts are not included in the statement exports if…

  • The balance is zero and there are no transactions
  • The credit limit is zero (a credit limit set to zero is not a credit product)
  • The account has status Sent to Collection

Statement number in a revolving credit invoice

The statement number is created from the account number and the billing date.

An example: The statement number for an account with account number 12345 which gets a statement on 2023-04-01 would be 12345230401.
Statement numbers also help in tracking payments and managing overdue interests which is why each invoice number needs to be unique.

Statement reference number in a revolving credit invoice

The reference number used for statements is set/updated in Account Details API in the paymentReference field (Optional). The possible types are:

  • Customer-specific
  • Finnish 7-3-1 checksum generation method (Account number as a base)
  • MOD10 checksum generation method (Account number as a base)

Invoicing dates for revolving credit invoices

Every account will have one mandatory invoicing date in a month (also known as the billing cycle end date). There will be a default invoice date set up on the institution level but these can be changed into whichever calendar date per account through the Account Update API in the field invoiceDayOfMonth.For further details, please see the ‘Update a credit account’ guide.

For example, when an account is created it will have the invoice date set as the last day of the month as default. If you would like to set the invoice date on any other day of the month, this can be changed or added with the Account Update API.

The minimum billing cycle length is 14 days, which means that if an account is created closer than two weeks to the billing cycle end date, the first billing cycle end date is pushed one month forward. The same will happen if the invoice date is changed for the account in the middle of the invoicing cycle.

In conclusion:

  1. If the account is created between the 1st – 15th, it will have the statement on the last day of the same month
  2. If the account is created between 16th – 31st then the first invoicing will be on the last day of the next month

Invoice due date in a revolving credit invoice

The invoice due date can be adjusted with the Payment Terms API, which is available for credit products. The maximum length of the payment term can only be as long as the billing cycle, which is the length of the calendar month (28-31 days). If the month in question is 28 days long, it is the maximum length of the payment term even if 30 days would have been configured in the settings.

The due date has to pass before the next billing cycle closes. There cannot be two invoices open at the same time. The invoice due dates are always on banking days and cannot take place on Saturdays and Sundays by system default. Country-specific bank holidays can be added and maintained, so that the system skips due dates in case they fall on Christmas day, for example.

Minimum to pay in a revolving credit product

Minimum to pay (MTP) is the lowest amount that needs to be paid by the account holder every month by the due date so that the account balance doesn’t go overdue and start the reminder process.

A minimum-to-pay percentage can be set on an account level. The MTP is calculated as a flat percentage that can be set anything from 0-100 % of the account principal balance including interests and fees. If it is set for 100 % then all un-invoiced debt is always invoiced. The MTP percentage cannot be changed for the invoices that are already created. Any overdue balance will be added on top of the MTP.

You can also set thresholds for the MTP amount that will be rounded up if the percentage amount is less than the threshold.

For example, if the MTP percentage is 10% and the MTP amount is £20, then for an open balance of £100 the interest would be 100 x 0,10 = £10 which is rounded up to £20 based on the threshold rule. You can also set a minimum amount for delinquency, in this example, £5. If MTP is less than that, the balance will not age.

There are two options for the MTP calculations.

  1. In the default configuration, the MTP is calculated from the whole amount, including balance, fees, and interests.Default as an example:
    £100 balance, £3 fee, £2 interest with 10% MTP = £(100+3+2) * 0,1 = £10,5 MTP (+ possible overdue balance)
  2. The other possible configuration for the MTP goes like this: Interest + fees + % of the principal balance + the amount of overdue balance.An example for this option: £100 balance, £3 fee, £2 interest with 10 % MTP = £100 * 0,1 + £3 + £2 = £15 (+ possible overdue balance)

Statement printing and delivery methods for revolving credit

Enfuce generates XML files for you to use when invoicing customers. The statement XML file contains all the relevant information for you to create invoice print-outs. The statement information includes account details, invoice due amount, and recipient information, for example. The details of these are included in the ‘Statement XML file content’ section below. In addition, card and account transactions that have occurred during the invoice period are included in the invoice files.

Enfuce sends these files to you for further processing. You, as the issuer, handle the actual creation of invoice print-outs and the distribution of them and add possible additional information from other systems.
Enfuce supports adding information for the invoicing method based on your customers’ preferences. They can choose to receive paper, e-mail, or e-invoices.

Management of the invoice delivery method is managed by you. You can update invoice delivery methods for different accounts via Enfuce Update a credit account API with the invoiceDeliveryMethod option. The different invoicing methods are stored on the end-customer level and the information is forwarded to you in the statement file under the classifier information STMT_DELIVERY_TYPE.

Statement XML file naming for a revolving credit product

Enfuce_statement_institution_yyyy-mm-dd_X_yyyymmdd_hhmmss.xml

  • Institution
    • Issuer number
  • yyyy-mm-dd
    • Reporting date to identify for which date the content was generated
  • X – running number to indicate the consisting
    • File splitting is used for statements to avoid big files with high volumes
    • The maximum amount of records: 99 per file
  • yyyymmdd_hhmmss
    • Timestamp of the file generation time in the Enfuce system

These sections and fields are included in the XML file, but only if there are values to be presented.

 

Section Field Name Details Values
file fileDate File creation date YYYY-MM-DD
file fileId Running number sequence (file split)
file institutionId Issuer number
file institutionName Issuer name (Company Ltd)
file NumberOfRecords Number of records in the file max is 99 (will be split into new file if more)
file receiver Receiver where the file will be sent
records record recordId Record sequence number in the file
account accountNumber Customer account number
account accountName Customer name
account addInfo (type&value) Additional field containing the product configuration data (see values) FUNCTIONAL_DATES GL_PLAN MTP_OPTION TARIFF_PLAN TARIFF_PLAN_INST PAYREF_TYPE
account – classifiers classifier (code,name,valueCode, valueName) Additional field containing miscellaneous data of the account’s classifiers DLQ_LEVEL, Delinquency Level
account – classifiers classifier (code,name,valueCode, valueName) Additional field containing miscellaneous data of the account’s classifiers LTY_ENROLMENT, Loyalty Enrolment
account – classifiers classifier (code,name,valueCode, valueName) Additional field containing miscellaneous data of the account’s classifiers PRODUCT_COMMERCIAL_CODE, Product Commercial Codes
account – classifiers classifier (code,name,valueCode, valueName) Additional field containing miscellaneous data of the account’s classifiers STMT_DELIVERY_TYPE, Statement Delivery
account – classifiers classifier (code,name,valueCode, valueName) Additional field containing miscellaneous data of the account’s classifiers PRODUCT_COMMERCIAL_NAME, Product Commercial Names
account – classifiers classifier (code,name,valueCode, valueName) Additional field containing miscellaneous data of the account’s classifiers CONTR_STATUS, Contract Status, 00 = Account OK
account productName Product name Revolving Credit
account productCode Product code CREDIT
account status See further information see account statuses eg. 00 -Account OK
transactions accountNumber Customer account number (private or company)
transactions addInfo (type, value) Additional field containing miscellaneous data of transaction FILENAME PAYER_NAME PAYMENT_DATE SENDER FROM_SOURCE OSRC_MEMBER R_REQ_RBS_NUMBER FPLP_SOURCE_CONTRACT FPLP_TARGET_CONTRACT T_USG
transactions exchangeRate Exchange rate presented with 5 decimals 1.00000
transactions fees (amount, currency, name) Left blank if no fees attached to the transaction
transactions linkId Transaction record ID
transactions mccCode Merchant Category Code
transactions direction Describing if the transaction is debiting or crediting 1 = credit -1 = debit
transactions postingDate Transaction posting date YYYY-MM-DD
transactions settlementAmount Settlement amount
transactions settlementCurrency Currency code 208 = DKK 578 = NOK 752 = SEK 826 = GBP 840 = USD 978 = EUR
transactions transactionAmount Transaction amount
transactions transactionCurrency Currency code 978 = EUR
transactions transactionDate Transaction date YYYY-MM-DD
transactions transactionTime Not available so default value 0:00:00
transactions transactionTypeCode Transaction type code for account level transactions Eg. PT-P Payments ILR3 Revolving interest
transactions transactionTypeName Transaction type name Payment To Client Contract Revolving Interest
balances amount Balance amount
balances type Type of balance TOTAL_DUE DUE PAST_DUE OVD_01 OVD_02 TOTAL_BALANCE OPENING_BALANCE
records billingDate Billing date YYYY-MM-DD
records billingPeriodEndDate Billing period end date YYYY-MM-DD
records billingPeriodStartDate Billing period start date YYYY-MM-DD
cards cardHolderFirstName Cardholder first name
cards cardHolderLastName Cardholder last name
cards cardId Card ID (linked to contract)
cards maskedCardNumber Card numbers are masked in the file
cards productName Institution + product name (eg. Visa, MC)
cards status Card status 00 = Card Ok
cards: transactions addInfos (type,value) Additional field containing miscellaneous data of transactions
cards: transactions cardId Card ID (linked to contract)
cards: transactions exchangeRate Default? 1.00000
cards: transactions fees (amount, currency, name) Left blank if no fees attached to the transaction ATM Fee Marku-Up Fee
cards: transactions linkId Transaction record ID
cards: transactions maskedCardNumber Card numbers are masked in the file
cards: transactions mccCode Merchant Category Code
cards: transactions direction Credit or debit card -1 = debit
cards: transactions postingDate Transaction posting date YYYY-MM-DD
cards: transactions settlementAmount Settlement amount
cards: transactions settlementCurrency Currency code 978 = EUR
cards: transactions site
cards: transactions transactionAmount Transaction amount
cards: transactions transactionCity Transaction city
cards: transactions transactionCountry Transaction country
cards: transactions transactionCurrency Transaction currency 978 = EUR
cards: transactions transactionDate Transaction date YYYY-MM-DD
cards: transactions transactionDetails Eg. retailer/online shop name
cards: transactions transactionRetRefNumber Transaction reference number
cards: transactions transactionTime Time when transaction happened HH:MM:SS
cards: transactions transactionTypeCode Transaction code for card level transactions eg. R1-P R1-R
cards: transactions transactionTypeName Transaction name Retail
client addInfo (type,value) Additional field containing miscellaneous data of the customer EXT_ID
client clientNumber Customer number
client email Customer email address
client firstName Customer first name
client lastName Customer last name
client locale Customer country location sv_SE
records creditLimit Account credit limit
deliveryAddress addressLine1 Street address
deliveryAddress city City
deliveryAddress countryCode ISO alpha-3 code eg. SWE
deliveryAddress countryName Country name in letters eg. Sweden
deliveryAddress zipCode Postal code
records dueDate Invoice due date
interestRates code Interest rate code INT_BASE INT_CASH_BILLED INT_CASH_OVD INT_FEE_BILLED INT_RETAIL_BILLED INT_RETAIL_OVD INT_FEE_OVD
interestRates effectiveDate The date the interest rate is valid from
interestRates name Interest rate name Interest Base Rate Interest Rate – Cash Billed Interest Rate – Cash Overdue Interest Rate – Fee Billed Interest Rate – Retail Billed Interest Rate – Retail Overdue Interest Rate – Fee Overdue
interestRates value Interest rate percentage
records minimumToPayAmount MTP Value
records minimumToPayPercentage MTP Percentage
records recordId Record sequence number in the file
records recordNumber Statement number
records referenceNumber Statement reference number
records selectedDueDate Statement due date
file slipReceiverCompanyName Bank name
file slipReceiverIBAN1 Bank code