Affirm is a Buy Now Pay Later platform offering customer financing for online purchases. This new integration brings Affirm's smart pay-over-time technology to Miva, giving you more tools for increasing online sales and reaching new customers.
This integration delivers enhanced analytics, promotional messaging support, and provides in-admin support for Void/Capture/Refund transactions.
When a customer pays with Affirm, they complete the loan application, get approved in real-time and can complete checkout in Miva. Merchants are paid in full up front for the item by Affirm and Customers pay for the item over installments (sometimes monthly, sometimes more frequent) which include interest payments. Affirm handles all the collection of payments from the customer and any collecting for any defaults on the loan, if applicable.
Affirm can be found under Payment Modules. Click Settings -> Modules -> then filter by Payment. Click Install for Affirm to install it to your store.
Once installed you'll be taken to the admin setting screen where you can add your API key and configure the Affirm Settings:
Enable/Disable – This is a toggle that allows someone to easily turn on or turn off the module. This toggle should control the payment method showing up during checkout on OSEL as well as the output of the "As Low As" JS throughout the site.
Mode (Drop Down) – There are two options in this drop down: Sandbox & Production. Changing this will change the API endpoint URLs
Checkout Type (Drop Down) : There are two options in this list:
Public Key (text input) – This is the Public API key which the merchant will get from their Affirm account.
Private Key (text input) – This is the private API key which the Merchant will get from their Affirm account. This value should be stored encrypted in Miva and not reflected back in the admin.
Payment Mode (Drop Down) – Two options, Auth Only or Auth+Capture.
Important: Under Domain Settings in Miva, ensure you have "Link to All Pages using HTTPS" checked. This is default for all new stores but if this is unchecked, the call back Affirm makes to create the order will fail.
Affirm leverages promotional messaging banners across the site to let the customer know Affirm is accepted as a payment method and give them a preview of the monthly payments.
When clicked additional details are brought up in a modal. This is all purely informational. You cannot purchase with Affirm on the product or basket pages.
It's recommended to show the Promotional Messaging always directly below the product price and as many places as possible.
Below are the recommended placements of the promotional messaging for best conversion rates.
Anytime you use the promotional messaging on a page, there are admin UI controls to allow you to control the look and feel of the promotional messaging.
Note: These controls are specific to each page so the display of the messaging can be customized depending on which page it appears on.
Settings Configuration Options
Page Type (drop down) - Values: homepage, landing, search, category, product, cart, payment, banner
Logo Type (drop down)- Values: default, text, symbol
Color (Drop Down) – Values: default, black, white
Show "Learn More" link (Checkbox) – If Check "Learn More" Text is output after price messaging.
For new stores created on 10.03.00 or later, there are no template changes required. Shadows has all the default code to show the Affirm Promotional Messaging on Storefront, Category, Product, Search, Product List and Basket pages.
For stores upgrading to 10.03.00, you will need to manually make the template changes.
Step 1 – Create the Affirm ReadyTheme Content Section. Under User Interface -> Theme Components -> Content Sections. The purpose of this content section is to centralize the promotional messaging logic into a single location.
Name: Affirm Configuration
Step 2 – Add the content section to each pageEach page you wish the promotional message to show will need to get the content section added to it as well as the mvaffirm_aslowas item assigned.
The ReadyTheme item tag should be placed right below the price fields on storefront, category, search, product list and product pages. On Basket its recommended is be placed near the checkout button
Note: If you wish to see the default placements in Shadows its recommended you create a template branch and apply the latest version of Shadows to that branch. This will allow you to see the default placement for any of the pages.
The component feature of the Affirm module is what controls the output of the As Low As Promotional Messaging. There are two values for the param field you can pass into it:
Sometimes its required to prevent Affirm's "As Low As" messaging to show for a product because it's a product type Affirm does not allow. If you sell products that you need to prevent someone to use Affirm as a payment method, you can use Miva's product level shipping method rules to prevent Affirm from being used as a payment method if this product is in the cart.
Under the product details page in the Miva admin there is a Tab Group for Payment Rules
Here you can select "Limit Payment Methods" and check all the payment methods you wish to allow for this product. In this case, Affirm should be unchecked to prevent it from showing up as a payment method for this product.
In this case, the Affirm Promotional Messaging will automatically be disabled for this product and if this item is in the basket, Affirm will not be presented as a payment method.
These product level setting can also be imported & exported under Data Management
When the affirm module is installed a new Payment Method of Affirm is created under Setting -> Payment Rules.
This allows you to do things such as set a minimum basket subtotal to use Affirm, change the order in which is shows during checkout or change the display name the customer sees during checkout.
It's common for each merchant to have a minimum basket subtotal required for customers to use Affirm. If you have a minimum basket sub-total it can be set under Shipping Method Rules
The default method name a customer will see for Affirm during checkout is "Affirm"
You can use Shipping Method Rules to update this to whatever text you wish to use:
Affim has some requirements to use it as a payment method.
US Only – Today Affirm is limited to customers with a US Shipping or Billing Address. If a customer has a non-US bill to or Ship to, Affirm will not show up as an available payment method.
Note: Affirm is working on supporting Canada in a future release.
No Gift Cards – You cannot use Affirm to purchase gift cards. If your site sells gift cards you need to restrict these products from being purchased with Affirm.
Currencies Supported – Currently only USD is supported but CAD is planned for a future release of Affirm.
Affirm acts like a regular credit card payment method in admin and you can perform operations on Affirm orders including:
Affirm does not yet support partial captures. If you attempt to do a partial capture in Miva you will get the following error:
If desired, you can use Miva Order Workflows Payment Actions to auto capture Affirm orders when they get marked as shipped.
Enhanced analytics is a setting that is on by default but can be disabled in the module's settings. If enabled, the following data is sent to Affirm for every order:
This Affirm integration will cause the old Affirm integration/module to be depreciated. If you are currently using the existing Affirm module it is recommended, you update to this built in version as soon as possible.
Here are the steps to migrate:
<mvt:item name="affirm" param="showmonthly" > and remove it from the page templates.
<mvt:item name="affirm" param="confirm" /> (should be on INVC page) and remove it.