Migrating Payments Data

Learn what's required to migrate your data from another payment provider over to Finix.


Transmitting payment details of any kind requires extra PCI considerations.

Finix has several resources available to take on those PCI considerations and help platforms bring their customer’s payment details over to Finix from any payment provider.


Migration Overview

To migrate your platform’s tokenized payment data to Finix, you’ll need to:

  1. Reach out to Finix and let us know you’d like to migrate tokens and payment data from your original payment provider.
  2. Reach out and notify the original processor that you’d like to migrate your tokens and payment data to Finix.
  3. Finix will work with you and the original processor to receive the encrypted Primary Account Numbers (PANs) and other payment details. Once received, Finix will work with you to import the tokens and other payment details into your Finix account.
  4. When the import process is complete, Finix will follow up with a file that contains the new Finix payment tokens and how they map to the tokens of the original processor.

Step 1: Reach Out to Finix

Reach out to Finix and let us know you’d like to migrate payment data from your original provider into Finix. You can reach out to your Finix point of contact or the Finix support team.

Once the migration request is made, Finix will begin making the needed technical preparations.


Step 2: Notify Your Original Processor

Reach out to the original processor and let them know you’d like to migrate your tokens to Finix. These requests can often be submitted through your original provider's support channels.

Include Finix on the request to keep us in the loop. Reaching out helps give the processor permission to begin working on the migration with Finix.

In your request, ask the original processor to provide the encrypted tokens and other payment details in the following file format:

  • Stripe: CSV
  • Braintree: CSV
  • BluePay: CSV

If your processor isn't listed, follow up with them and ask for a sample file or possible formats.

Reach out to your Finix point of contact or the Finix support team with any information your original processor provided, and we'll work on developing a solution to prepare for your migration.


Step 3: Finix Receives Encrypted PANs

Finix will work with you and the original processor to receive the encrypted Primary Account Numbers (PANs) and other payment details.

The original processor will need to use a PGP key provided by Finix to encrypt data before transmitting it to Finix. See Finix PGP Key for Finix's PGP key.

  • Some processors have policies that limit where they can transmit tokenized data. In these cases, you may need to communicate with the processor directly to ensure Finix receives the required data.
  • If requested, Finix's most recent PCI DSS Attestation of Compliance (AoC) is available by request under a signed non-disclosure agreement with Finix.

It can take anywhere from a few days to several weeks for your original processor to transfer your payment data to Finix, so be sure to accommodate this transition time in your migration plan.


Step 4: Finix Completes Importing Your Tokens

When Finix receives the file from the original processor, we’ll begin decrypting the data in a PCI-compliant environment and importing the tokens. If there's any reason the data can't be used, we'll outline what's wrong and work with you and the original processor to resolve the issue.


CSV Output

When the import is complete, Finix will reach out with a CSV that contains the new Finix payment tokens and how they map to the tokens of the original processor.

The import process maps the originals processor’s token IDs to new Finix token IDs, identities, and custom fields. You can then use the newly created Payment Instruments and other data in your Finix integration.

CSV Fields

Field Description Example
card_brandBrand of the payment card.Visa
customer_emailCustomer's email address saved with the original payment provider.customer@example.com
error_msgReturned when there’s an issue locating an account. Use the details in error_msg to reach out to the cardholder and confirm their payment information. After confirmingonfirming, create a Payment Instrument with the updated details.null, Account not found
expiration_monthPayment card's expiration month.12
expiration_yearPayment card's 4-digit expiration year.2026
external_customer_idUnique ID (from your original provider) to reference a specific customer and their saved payment details.cus_abc123def456
external_token_idToken ID from your original provider that identifies the customer’s tokenized payment details.token-abc123
finix_application_idID of the Application linked to the Finix Payment Instrument.APdoThHn4jjYUSxQf76txAgg
finix_identity_idID of the Identity linked to the Finix Payment Instrument.IDcV3F1FzHB5cT9DoGZLJ39Q
finix_instrument_idID of the Finix Payment Instrument created from the tokenized payment data.PI8uU6wfi6hqBoWmzm9L4F2b
import_reference_numberUnique ID generated by Finix to reference a specific import.221014_TESTIMPORTHERE007
instrument_last_fourLast four digits of the payment card.4242
is_expiredIndicates whether the payment card is expired.

When true, it means the card is expired and cannot be used. Use the Account Updater to get updated information.
true, false
successfulIndicates if a Finix Payment Instrument was created successfully using the tokenized payment data.

When false, it indicates Finix couldn’t create a Payment Instrument. Review the details in external_customer_id and try creating a Payment Instrument directly using Finix's API.
true, false

CSV Example

The CSV will look like this:

Example Payment Migration CSV
import_reference_number,finix_instrument_id,finix_identity_id,finix_application_id,successful,external_customer_id,external_token_id,customer_email,instrument_last_four,card_brand,expiration_month,expiration_year,error_msg,is_expired
221014_TESTIMPORTHERE007,PImch9imuQDLamPY1LCRmpsG,IDouBD8vwBFEjV5HvmyWsw2A,APaPLggMvZ6bYCLhbr65MUZ9,True,cus_abc123def456,expiredTokenID,jenny.rosen@example.com,4242,UNKNOWN,1,2020,,true
221014_TESTIMPORTHERE007,PIm1QR8aF2a3NH8cmPgQ5x2o,IDrHeCSZ4ss4f2HjuKFaGqiM,APaPLggMvZ6bYCLhbr65MUZ9,True,cus_abc123def459,card_edf214abc789,johnny.rosen@example.com,4242,UNKNOWN,1,2024,,false
221014_TESTIMPORTHERE007,PIwi2m5TRh26ZVBXA4DLmSZM,IDrHeCSZ4ss4f2HjuKFaGqiM,APaPLggMvZ6bYCLhbr65MUZ9,True,cus_abc123def459,card_123,johnny.rosen@example.com,4242,UNKNOWN,1,2024,,false
221014_TESTIMPORTHERE007,PI85kuV5ySHF4GUDLC9wden7,IDrHeCSZ4ss4f2HjuKFaGqiM,APaPLggMvZ6bYCLhbr65MUZ9,True,cus_abc123def459,card_456,johnny.rosen@example.com,4242,UNKNOWN,1,2024,,false
221014_TESTIMPORTHERE007,PI6mfsXjJfHK9z89NNmoZWS1,IDrHeCSZ4ss4f2HjuKFaGqiM,APaPLggMvZ6bYCLhbr65MUZ9,True,cus_abc123def459,card_edf214abd789,johnny.rosen@example.com,4242,UNKNOWN,1,2024,,false
221014_TESTIMPORTHERE007,PIrmDHqhYuW1gQXSVV3CxB8H,IDrHeCSZ4ss4f2HjuKFaGqiM,APaPLggMvZ6bYCLhbr65MUZ9,True,cus_abc123def459,card_edf214abc789,johnny.rosen@example.com,4242,UNKNOWN,1,2024,,false
221014_TESTIMPORTHERE007,PI4UNNgggfwqZ4eqpHCZHqat,IDrHeCSZ4ss4f2HjuKFaGqiM,APaPLggMvZ6bYCLhbr65MUZ9,True,cus_abc123def459,card_nodatafound,johnny.rosen@example.com,4242,UNKNOWN,1,2024,,false
221014_TESTIMPORTHERE007,,IDouBD8vwBFEjV5HvmyWsw2A,APaPLggMvZ6bYCLhbr65MUZ9,False,cus_abc123def456,badTokenID,jenny.rosen@example.com,,,1,2024,Not a valid card number,false

With the CSV, you can make the necessary changes to get customers started processing payments on Finix.

Finix’s support team is also available to help guide you through the migration process and help make the changes that need to get made to your platform.