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:
- 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.
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_brand | Brand of the payment card. | Visa |
customer_email | Customer's email address saved with the original payment provider. | customer@example.com |
error_msg | Returned 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_month | Payment card's expiration month. | 12 |
expiration_year | Payment card's 4-digit expiration year. | 2026 |
external_customer_id | Unique ID (from your original provider) to reference a specific customer and their saved payment details. | cus_abc123def456 |
external_token_id | Token ID from your original provider that identifies the customer’s tokenized payment details. | token-abc123 |
finix_application_id | ID of the Application linked to the Finix Payment Instrument . | APdoThHn4jjYUSxQf76txAgg |
finix_identity_id | ID of the Identity linked to the Finix Payment Instrument . | IDcV3F1FzHB5cT9DoGZLJ39Q |
finix_instrument_id | ID of the Finix Payment Instrument created from the tokenized payment data. | PI8uU6wfi6hqBoWmzm9L4F2b |
import_reference_number | Unique ID generated by Finix to reference a specific import. | 221014_TESTIMPORTHERE007 |
instrument_last_four | Last four digits of the payment card. | 4242 |
is_expired | Indicates 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 |
successful | Indicates 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:
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.