Skip to main content

Merchant Help

 

Affirm Merchant Help

Oracle Commerce Multiple Financing Programs

Overview

Multiple Financing Programs (MFPs) in Oracle Commerce (ATG) enables you to selectively offer a specific custom financing program to consumers based on product or category attributes in your catalog, and site-wide, time-based programs. 

Financing programs are defined by the following inputs:

Interest rate (APR) range

APR, or Annual Percentage Rate, is the cost of credit (i.e., interest) as a yearly rate.

Range of loan term lengths

The loan term length is the number of months that a customer has to repay the loan.

Merchant fee (MDR)

The merchant fee is a percentage of the purchase price that gets deducted from the settlements made to the merchant. 

How do I start using Multiple Financing Programs?

Financing programs are built by the Affirm Client Success team, and are specific to each merchant. If you'd like to start offering custom financing programs, please reach out to the Merchant Success team at merchanthelpmerchanthelp@affirm.com. Not all merchants qualify for custom financing programs.

Once your financing program has been created, you will be provided with an ID by the Affirm Merchant Success team for your financing program(s). That ID is utilized later in the sections below regarding the implementation of MFP.

Get started with MFP

Once you have received your financing program name from our Client Success team, you can setup the Oracle Commerce BCC rules to apply that program when certain conditions are met. There are some common examples illustrated below show for a given promotion which fields need to be populated and the possible outcomes.

How are different rules ranked?

This chart illustrates the relative ranking of the financing programs that are defined in Oracle ATG BCC:

Ranking Type of financing program Options
1 Product-level Inclusive
2 Product-level Exclusive
3 Category-level Inclusive
4 Category-level Exclusive
5 Cart-size  
6 Date  
7 Default  

 

Offer a financing program only for specific products
Scenarios

These are some common scenarios that illustrate which financing program would be chosen based on the products that are in cart.

Scenario Cart item 1 Cart item 2 Program selected

Consumer picks out two products, one with an inclusive product-level program and one without a financing program.

Product 1

  • financing program = "zero_percent"
  • inclusive
  • priority 1

Product 3

  • has no financing program

zero_percent

 

Consumer picks out one product, one with an exclusive product-level program.

This is the only scenario where this exclusive program is applied.

Product 2

  • financing program = "zero_percent"
  • exclusive
  • priority 1

No product

 

zero_percent

 

Consumer picks out two products, one with an exclusive product-level program, and one without a financing program.

Product 2

  • financing program = "zero_percent"
  • exclusive
  • priority 1

Product 8

  • has no financing program

none

 

 

Offer a financing program for a weekend
Scenarios
Scenario Cart item 1 Cart item 2 Financing program selected

Consumer picks out products with no financing programs.

Current date is inside the financing program's date range.

(financing program = "zero_percent")

Product 1

  • no financing programs

Product 3

  • no financing programs

zero_percent

 

Consumer picks out products with no financing programs.

Current date is outside the financing program's date range.

(financing program = "zero_percent")

Product 2

  • no financing programs

Product 2

  • no financing programs

none

 

Offer financing program on a weekend in addition to product-specific financing programs
Scenarios

These are some common scenarios that illustrate which financing program would be chosen based on the products that are in the cart.

Consumer picks out two category, one with an inclusive product-level program, and one no financing programs.

Current date is inside the financing program's date range.

(financing program = "zero_percent")

Product 2

  • financing_program = "zero_percent_plus"
  • inclusive
  • priority 1

Product 8

  • no financing programs

zero_percent_plus

 

Customer selects two products,  with an inclusive product-level program, and one no financing programs.

Current date is inside the financing program's date range.

(financing program = "zero_percent")

Product 2

  • financing_program = "zero_percent_plus"
  • exclusive
  • priority 1

Product 8

  • no financing programs

zero_percent

 

Customer selects one product with an exclusive product-level program.

Current date is inside the financing program's date range.

(financing program = "zero_percent")

Product 2

  • financing_program = "zero_percent_plus"
  • exclusive
  • priority 1

No product

zero_percent_plus

Offer a financing program for an entire category of products
Scenarios
Scenario Cart item 1 Cart item 2 Financing program selected

Consumer picks out products from two categories, one with an inclusive category-level program and one without a financing program.

Product 1

  • no financing program

Category 1

  • financing program = "zero_percent"
  • inclusive
  • priority 1

Product 3

  • no financing program

Category 1

  • no financing program

zero_percent

 

Consumer picks out one category, one with an exclusive category-level program.

This is the only scenario where this exclusive program is applied.

Product 2

  • no financing program

Category 1

  • financing program = "zero_percent"
  • exclusive
  • priority 1

No product

 

zero_percent

 

Consumer picks out two category, one with an exclusive category-level program, and one without a financing program.

Product 2

  • no financing program

Category 1

  • financing program = "zero_percent"
  • exclusive
  • priority 1

Product 8

  • no financing program

Category 2

  • financing program = "zero_percent"
  • exclusive
  • priority 1

none

 

Consumer picks out two category, one with an exclusive category-level program, and one without a financing program.

Product 2

  • no financing program

Category 1

  • financing program = "zero_percent"
  • exclusive
  • priority 1

Product 8

  • no financing program

Category 2

  • financing program = "zero_percent"
  • exclusive
  • priority 1

zero_percent

 

Offer a financing program only for large carts, or for specific products
Scenario Cart item 1 Cart item 2 Financing program selected

Consumer picks out products with no financing programs.

Total cart amount is higher than the financing programs threshold.

(financing program = "zero_percent")

Product 1

  • no financing programs

Product 3

  • no financing programs

zero_percent

 

Consumer picks out products with no financing programs.

Total cart amount is lower than the financing programs threshold.

(financing program = "zero_percent")

Product 2

  • no financing programs

Product 2

  • no financing programs

none


Tutorial

Get the latest cartridge

  1. Installation instructions 
  2. Create Rules

Create rules

Affirm Rules can be managed in the Oracle Commerce application. These are set up in the ProductCatalog repository. Affirm Rules can be created or edited in Oracle Commerce BCC: BCC -> Project_Name -> Affirm Rules. Depending on what the conditions are for a particular financing program, you will need to make edits to these areas of the Affirm Rules. 

Note: this assumes you already have been provided with a Financing Program ID and Promo ID. If you haven't received one, please contact merchanthelpmerchanthelp@affirm.comFinancing programs cannot be based on any other term or condition at this time.

Rule properties - The BCC-managed rules have the following properties:

Property Name Type Description
Rule ID string Used internally by ATG and auto-generated. All items must have a unique ID.
Display Name string All rules are queried, and sorted by priority, and then evaluated one at a time. The first rule to match is used
Priority int This is the value that is passed as the "data-promo-id" in the Javascript call to Affirm
Data promo ID string This is the Financing program id sent during checkout
Rule Type enumerated This determines how the rule is evaluated. See below for details
Dollar Amount double This can be used with either product_amount or cart_total rule types, and sets the threshold for the rule to apply
Products List The list of product repository items that a rule applies to. If "exclusive=true" then this option only applies if all products in the cart are in the list.
Category RepositoryItem The category that a rule applies to. If "exclusive=true", then all items in cart must also be in this category.
Exclusive boolean If this is true, then a product must be the only item in the cart. If this is set on a category rule, then all other items in the cart must be children of that category. Default is set to "No"
Start Date timestamp For a time-based rule, the current date must be after the end date. 
End Date timestamp For a time-based rule, the current date must be before the end date. If this is left blank, then there is no end date and the rule is assumed to remain valid indefinitely.

 

Rule types - The following table shows the rule types:

Type Description
cart_total This type requires the Dollar amount field to be entered. A cart with a value higher than the "Dollar Amount" will qualify for this rule.
product_amount This type requires the Dollar amount field to be entered. A product with a sale price higher than the "Dollar Amount" will qualify for this rule.
Product If the product passed in matches this product, and the rule is "inclusive", then the rule matches. If the rule is "exclusive" then there can not be any other products in the cart.
Category If the product passed in is a child of this category, and the rule has exclusive="false", then the rule matches. If the rule has exclusive="true", then the all items in the cart must also be children of this category.
Time The current time needs to be between the start and end date properties. If no end date is specified, the date only needs to be after the start date.
Site-wide financing programs:
  1. Visit BCC -> Project_Name -> Affirm Rules
  2. Add Affirm Rule and enter the properties:
    • Display Name (Ex: Site-wide Rules)
    • Affirm Program ID (financing_program ID provided by Affirm)
    • Data Promo ID (data-promo-id provided by Affirm)
    • Rule Type - product_amount
    • Dollar Amount - 50
    •  
  3. Click Save

oracle-mfp-default.png

Date-range financing programs:
  1. Visit BCC -> Project_Name -> Affirm Rules
  2. Add Affirm Rule and enter the properties:
    • Display Name (Ex: Date between 10/4/2017 and 12/31/2017)
    • Affirm Program ID (financing_program ID provided by Affirm)
    • Data Promo ID (data-promo-id provided by Affirm)
    • Rule Type - time
    • Start Date
    • End Date
  3. Click Save
oracle-mfp-time.jpg
Cart-size financing programs:
  1. Visit BCC -> Project_Name -> Affirm Rules
  2. Add Affirm Rule and enter the properties:
    • Display Name (Ex: Zero percent when cart is over $300)
    • Affirm Program ID (financing_program/MFP ID provided by Affirm)
    • Data Promo ID (data-promo-id provided by Affirm)
    • Rule Type - cart_total
    • Dollar Amount (Ex: 300)
  3. Click Save
oracle-mfp-cart.jpg
Category-level financing programs

Category-level financing programs will apply a financing program to a customer's cart when one or more items are from that category. The financing program could apply to the customer's entire cart, even items in the cart which may not qualify for a financing program on their own.

  1. Visit BCC -> Project_Name -> Affirm Rules
  2. Add Affirm Rule and enter the properties:
    • Display Name (Ex: Products in Accessories category)
    • Affirm Program ID (financing_program provided by Affirm)
    • Data Promo ID (data-promo-id provided by Affirm)
    • Rule Type - Category
    • Category - Select categories from the list
  3. Click Save
oracle-mfp-category.jpg
Product-level financing programs:

Product-level financing programs will apply a financing program to a customer's cart when the product is included in the cart. The financing program will apply to the customer's entire cart, even items in the cart which may not qualify for a financing program on their own.

  1. Visit BCC -> Project_Name -> Affirm Rules
  2. Add Affirm Rule and enter the properties:
    • Display Name (Ex: Date between 10/4/2017 and 12/31/2017)
    • Affirm Program ID (financing_program provided by Affirm)
    • Data Promo ID (data-promo-id provided by Affirm)
    • Rule Type - Product
    • Product - Select products from the list
  3. Click Save

oracle-mfp-product.jpg

If you have any questions about offering financing programs, please contact merchanthelp@affirm.com for guidance.


Compliance with Consumer Protection Laws and Requirements

MFPs must comply with applicable federal, state, and local fair lending laws, regulations, and regulatory guidance. The purpose of fair lending standards is to ensure that individuals seeking financing are treated fairly and consistently. Generally, financing options must be offered to all qualified consumers without discrimination on the basis of race, color, religion, national origin, sex, marital status, age (provided that the applicant has the capacity to enter into a binding contract), the applicant’s receipt of income through a public assistance program, the applicant’s good faith exercise of a right under the federal Consumer Credit Protection Act, military status, sexual orientation, and other factors that may be prohibited under applicable state and local requirements. For example, merchants whose MFPs exclusively provide promotional pricing on items that appeal more to female customers than male customers may be found to be in non-compliance with fair lending requirements.

MFPs must also comply with the prohibitions in Title X of the Dodd-Frank Act and Section 5 of the Federal Trade Commission Act relating to unfair, deceptive, and abusive acts or practices. In essence, terms and conditions of financing programs must be clearly and accurately communicated to consumers.

Affirm reserves the right to request modifications to a financing program if it determines that the program may run afoul with applicable consumer protection requirements. Violating any applicable consumer protection requirement is a breach of your agreement with Affirm and can be grounds for termination as an Affirm merchant (and may result in legal action).
 

Reporting

In your settlement reports, we will include the financing program name that was active for a given transaction.