Migrating Customer Data to Finix
Learn what's required to migrate your customer data from another payment provider over to Finix.
Along with migrating payment data, you can also migrate the merchant data of your customers (name, email, address, MCC, etc.).
Migrating your merchants' data helps avoid disruptions and gets those sellers onboarded to Finix as quickly as possible.
Required Data
To migrate and underwrite sellers, Finix needs the info listed under Required Onboarding Data.
- If you have the onboarding data listed saved for your sellers, see Migrating Customers using the Finix API .
- If you don’t have the required information, or it’s incomplete, see Migrating Customers using Onboarding Forms .
Migrating Customers using the Finix API
If you have all the required data listed available in your database, you can programmatically onboard sellers and create the Merchant
account they need to process payments with Finix.
Follow these steps to migrate and onboard customers using the Finix API:
Step 1: Confirm Required Data Availability
Confirm that you have all the information listed under Required Onboarding Data available for the sellers you want to migrate.
Step 2: Build a Modal on Your Platform
Build a modal on your platform that informs sellers about the upcoming changes with Finix.
- The modal should also present any of the platform's updated Terms of Service or Privacy Policies.
- Make sure the modal can also record the seller's consent to the changes on your platform.
Step 3: Create an Identity Request
Using Python or your preferred programming language, create a script that programmatically submits a Create an Identity (Merchant) request each time a seller consents to the changes on your platform.
Use the information you have on file to complete entity
and the information collected by the modal to complete additional_underwriting_data
.
Step 4: Create a Merchant Request
As seller Identities
get created, programmatically create a Merchant
record using the new Identity
resource to submit the seller for underwriting.
-
If a seller is
approved
, a
Merchant
is created, and you can use themerchant_ID
( MUXXXX ) to create payments and process transactions on behalf of the seller. -
If a seller is
rejected
, Finix will return a response with a
failed
state
. See Onboarding Rejections for details on how to handle rejectedMerchants
.
Example - Finix API
For example, let's consider a music equipment reseller that signs up to process payments with Finix. The platform offers sellers a dashboard where they can log in to manage their account.
To migrate their customer's data, the platform creates a three-screen modal that pops up for every seller when they login to their dashboard for the first time after the change. The screens of the modal are as follows:
- Explanation: The first screen explains that the platform is changing payment processors.
- Platform Terms of Service and Privacy Policy: The second screen presents the platform's updated Terms of Service and Privacy Policy.
- Finix's Terms of Service: The third screen presents Finix's Terms of Service to sellers.
To close the modal, the seller marks their consent to the presented terms, via their signature, a checkbox, or any other method.
When the seller marks their consent, the platform programmatically submits a Create an Identity
request to Finix. The platform uses the information on file to complete the entity
and utilizes information collected by the modal and anything else on file to complete additional_underwriting_data
.
Finix responds to the platform's Create an Identity
request with the seller's Identity
resource.
When the platform receives the response with the Identity
resource, it programmatically creates and submits a Create a Merchant
request to Finix.
-
If the seller is
approved
, a
Merchant
resource is created, and the platform can use it to create and process payments for the seller. - If the seller is rejected , the platform programmatically sends an automated email to the seller requesting the missing information.
Migrating Customers using Onboarding Forms
If you don't have the required information for your sellers or it's incomplete, you can migrate customers and collect the missing information using Finix Onboarding Forms.
Follow these steps to migrate customers using Finix Onboarding Forms:
Step 1: Export Seller Data
For existing sellers, export their data into a CSV file. Make sure that in the CSV:
- The required data is separated by commas.
- The order of the data fields is the same and consistent for all sellers.
Step 2: Send CSV Data to Finix
Send the CSV file to the Finix support team. The Finix support team will use internal tools and scripts to migrate the data and create onboarding forms for each individual seller. Additionally, ensure that Finix has the latest version of the following information:
- Fee URL: A web page that describes your platform/customer's fee structure to the seller.
- Return URL: The web page the seller is taken to after they submit the onboarding form.
- Terms of Service URL: A link to your platform's terms of service.
- Expired Session URL: The web page the seller is taken to if the form link expires.
Step 3: Receive Onboarding Form Information
Finix support will send you a new CSV file with two new columns:
- Column 1: Onboarding Form ID
- Column 2: Onboarding Form link
Step 4: Send Onboarding Form Link to Merchants/Sellers
Send the pre-filled onboarding form link to your merchants/sellers. They will use the onboarding form to confirm the pre-filled information, fill out any missing information, and consent to your platform's terms of service and privacy policy, Finix's terms of service and privacy policy, and your platform's pricing terms.
Step 5: Seller Submits Form
The seller fills out any missing information, marks their consent, and submits the onboarding form.
Step 6: Finix Underwriting
Finix will then proceed with the underwriting process for the migrated merchants/sellers.
-
If the seller is
approved
, a
Merchant
resource is created, and the platform can use it to create and process payments for the seller. -
If the seller is
rejected
, Finix will return a response with a
failed
state
. See Onboarding Rejections for details on how to handle rejectedMerchants
.
Example - Onboarding Forms
- Finix Customer uses SQL to pull required fields from their database and places those required fields into a CSV file.
- The Finix Customer sends the CSV file to Finix Support.
- Finix Support uses the information provided to programmatically create Onboarding Forms unique to each seller.
-
Finix Support updates the CSV with two new columns; one with a link to the seller's onboarding form and the ID of the
onboarding_form
that was created. - When the customer receives the updated CSV, they run a Python script (or the language of their choice) to create and send individual emails to each seller that includes the link to their unique onboarding form.
The Finix customer uses the Finix dashboard to track approved, provisioned, and rejected sellers. The Finix customer also uses the dashboard to resend links and track onboarding forms not yet submitted.
Required Onboarding Data
The following data is required to migrate and onboard a seller with Finix.
Required Onboarding Data
-
business_name
-
doing_business_as
-
url
-
business_phone
-
business_type
-
ownership_type
-
incorporation_day
-
incorporation_month
-
incorporation_year
-
business_tax_id
-
business_address_line1
-
business_address_line2
-
business_address_city
-
business_address_region
-
business_address_postal_code
-
business_address_country
-
first_name
-
last_name
-
title
-
dob_day
-
dob_month
-
dob_year
-
phone
-
email
-
tax_id
-
personal_address_line1
-
personal_address_line_2
-
personal_address_city
-
personal_address_region
-
personal_address_postal_code
-
personal_address_country
-
principal_percentage_ownership
-
annual_card_volume
-
mcc
-
default_statement_descriptor
-
max_transaction_amount
-
account_name
-
account_type
-
bank_code
-
account_number
-
has_accepted_credit_cards_previously
-
amex_mid
-
discover_mid
-
annual_ach_volume
-
average_ach_transfer_amount
-
average_card_transfer_amount
-
business_description
-
card_present_percentage
-
ecommerce_percentage
-
mail_order_telephone_order_percentage
-
business_to_business_volume_percentage
-
business_to_consumer_volume_percentage
-
consumer_to_consumer_volume_percentage
-
other_volume_percentage
-
person_to_person_volume_percentage
The information required is the same data needed to Create an Identity
(Merchant).