Skip to main content

Merchant Help Center

 

Affirm Merchant Help Center

Email Service Providers

Overview

Email Service Providers can include Affirm Monthly Payment Prices for those merchants that already have Affirm Monthly Payment Messaging on their site. This document is intended to instruct an ESP on what an integration with Affirm looks like, how to complete that integration, and how to best highlight those benefits for their merchant clients.

Integrate Affirm into your ESP platform

  1. Create a proof of concept (POC) using the Integration instructions below.
  2. Verify which Monthly Payment Messaging embed method the merchant is using (current or legacy).
  3. Implement Affirm tags that pull from the the Monthly Payment Price displayed on the page.
  4. Test the implementation.
  5. Become certified as an Affirm Marketing Partner (AMP).

Develop marketing collateral

Affirm is a natural compliment to ESPs, as both businesses can bolster the success of our mutual merchant clients. Affirm increases the value that an ESP can offer by providing additional incentives that can be presented to the customer. These benefits are best articulated through marketing collateral, such as white papers or solution designs, that is developed as a joint effort between Affirm and your team.

Integration

  1. Load the example page that has Affirm On-Site Marketing embedded. This displays both ways that a merchant might have Affirm Monthly Payment Messaging integrated.
  2. Select the rendered Monthly Payment Messaging HTML element.
  3. Parse out the Monthly Payment Price.
  4. Include that Monthly Payment Price in your email template to consumers.

How Merchants embed Monthly Payment Messaging

Full example page

This example page demonstrates both the current and legacy embed methods for Monthly Payment Messaging

HTML

Click here to download the HTML example page

JSFiddle

Current

HTML placeholder:

<span class="affirm-as-low-as" data-amount="CART_OR_PRODUCT_PRICE" data-affirm-type="text" data-affirm-color="blue">

JavaScript:

Promotional Messaging JS

Legacy

Example HTML placeholder:

<a id="learn-more" href="#"></a>

Example JavaScript:

<script>
  affirm.ui.ready( function() { updateAffirmAsLowAs( CART_OR_PRODUCT_PRICE ) } );
  function updateAffirmAsLowAs( amount ){
    if ( ( amount == null ) || ( amount < 1000 ) ) { return; }
    var options = {
      apr: "0.10",
      months: 12,
      amount: amount
    };
    try {typeof affirm.ui.payments.get_estimate;}
    catch (e) {return;}
    function handleEstimateResponse (payment_estimate) {
      var dollars = payment_estimate.payment_string;
      var a = document.getElementById('learn-more');
      var iText = ('innerText' in a)? 'innerText' : 'textContent';
      a[iText] = "Starting at $" + dollars + " a month. Learn More";
      a.onclick = payment_estimate.open_modal;
      a.style.visibility = "visible";
    };
    affirm.ui.payments.get_estimate(options, handleEstimateResponse);
  }
</script>

Selecting the Monthly Payment Messaging Placeholder

The Affirm monthly payment messaging on the product or cart page will only render after the page loads. Therefore, you will want to extract the monthly payment price from the DOM. You can select the element containing the monthly price in the following ways:

Current integration
  • Standard
    • Fixed class name of 'affirm-as-low-as'.
    • e.g., <div class="affirm-as-low-as"></div>
    • document.getElementsByClassName('affirm-as-low-as')[0];
      
  • Custom
    • Custom element class names are not supported. Element may have a merchant-defined ID.
       
Legacy integration
  • Standard
    • Fixed <a> element with ID of 'learn-more'.
    • e.g., <a id="learn-more"></a>
    • document.getElementbyId('learn-more')
      
  • Custom
    • Merchant-defined element ID that's also defined in the handleEstimateResponse() function.
    • e.g., <a id="affirm-monthly-price"></a>

Extracting the Monthly Payment Price

  • For all integration variations, the monthly price will be shown as a string, inside the placeholder element.
  • For legacy integrations, there will be a JavaScript variable that the payment estimate response is assigned to. 

Extracting terms and disclosure information

  • There is no way for third-parties to programatically retrieve terms and disclosures for a given monthly payment price returned from Affirm at this time
  • Terms and disclosures should be mapped to a merchant's available financing programs, assuming the lowest possible APR for a given range
  • Examples:
    • A merchant offers only standard terms of 10-30% APR, then monthly prices can assumed to be calculated at 10% APR at 12 months. (6 months if between $50-100)
    • A merchant offers 0% APR, then monthly prices can assumed to be calculated at 0% APR at 12 months when the corresponding 'data-promo-id' parameter value is detected.

Tracking Affirm promotions

If you find that you are wanting to track what those financing programs or types of promotions are (and not just pulling in the rendered monthly price), that can be handled exclusively between you and the merchant. 

Merchants will be aware of what promo IDs they're using at a given time, and what messaging or financing programs those correlate to. Therefore, you should be able to maintain a mapping as part of the merchant's integration, such as:

  • 'data-promo-id'='ABC123' = zero-percent promotion
  • 'data-promo-id'=[blank] = standard 10-30% APR
  • 'data-promo-id'='something_else' = standard 10-30% APR

In addition, you should provide an ability to add tracking parameters to all the outgoing links that have Affirm branded messaging within the email template. Below is the list of parameters that can be appended as query parameters to the outgoing links (Ex: Affirm promotional messaging sends the customers to a cart page, the string used within the email template should add these parameters, https://www.example.com/cart?aff_cid=unique_value&aff_fm=t)

  • aff_cid="unique_value" (Required) - Unique value, either already available or created, which provides tracking information about the email service provider and/or the merchant
  • aff_fm="t" (Optional) - Forces the Affirm educational modal to open when a customer lands on the page where Affirm promotional messaging is available

Compliance

Any time a monthly price is communicated to users, it must have accompanying disclosures or information that explain how that monthly price was calculated.

As a result, any monthly price should also include in-line descriptions or a link to descriptions of the price calculation, such as:

"Starting at $44 a month with Affirm for a product price of $500 and 10% APR over 12 months."

Monthly Payment Messaging Disclosures
  • Interest rate in APR
  • Length of loan term
  • Given product/cart price
  • Explanation that not all applicants will qualify for the advertised interest rate.

Marketing to merchants

Benefits of combining Affirm and your Email Service

  • Monthly price for the customer's product or shopping cart lowers barriers for purchase
  • Existing Affirm customers can checkout more quickly
  • Bundling products and showing a monthly price for the entire shopping cart leads to higher AOV

Requirements

  • Sign-up as an Affirm merchant (sales@affirm.com)
  • Integrate Affirm Monthly Payment Messaging onto your product and/or cart pages
  • Coordinate with your Email Service Provider to extract the Affirm Monthly Payment Price on the page
  • Update your abandonment/retargeting emails to include the Affirm Monthly Payment Price

Examples

Coming soon

Whitepaper

Coming soon