Migrating Data with Finix
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:
- Reach out to Finix and let us know you’d like to migrate tokens and payment data from your original payment provider.
- Reach out and notify the original processor that you’d like to migrate your tokens and payment data to Finix.
- 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.
- 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.
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.
The CSV will contain the following fields:
Field | Description |
---|---|
import_reference_number |
ID generated by Finix that you can use to refer to a specific import. |
finix_instrument_id |
The ID of the new Finix Payment Instrument that got created from the tokenized payment data. |
finix_identity_id |
The ID of the Identity linked to the Finix Payment Instrument . |
finix_application_id |
The ID of the Application linked to the Finix Payment Instrument . |
successful |
Details if a Finix Payment Instrument got created successfully using the tokenized payment data in external_customer_id .Available values include: Payment Instrument got created successfully using the tokenized payment data.Payment Instrument with the provided details. Review the payment details saved in external_customer_id for accuracy. Once confirmed, try creating a Payment Instrument with the details again directly with Finix's API. |
external_customer_id |
A unique ID (generated by your original provider) that you can use to refer to this specific customer and the payment details they had saved with your original payment provider. |
external_token_id |
The token ID that your original payment provider created to identify the customer's tokenized payment details. |
customer_email |
The email address saved for the customer with the original payment provider. |
instrument_last_four |
Last four digits of the payment card. |
card_brand |
The brand of the payment card. |
expiration_month |
Expiration month (e.g. 12 for December). |
expiration_year |
4-digit expiration year. |
error_msg |
An error_msg gets returned when there's an issue locating an account with the details provided by the original provider. If an error_msg gets returned, reach out to the cardholder with the details in the error_msg and confirm their payment details. Once verified, create a Payment Instrument with the corrected information. |
is_expired |
Details if a payment card has expired. Available values include: |
The CSV will look something like this:
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.