Migration of data to a new PSP
This guide is intended for merchants who are currently operating with Fabrick's Open Payments and are interested in migrating to another PSP (Payment Service Provider). The purpose of this documentation is to provide information on the shared file formats and the methods of data sharing.
Key concepts
Card token
A card token is a unique identifier that replaces the PAN (Primary Account Number), i.e., the number printed on the payment card. Tokenization allows transactions to be performed without directly using the PAN, improving security against fraud and data theft.
See the article: "Tokenization in e-commerce payments: what it is and why it is useful".
Recurring payments
Recurring payments are transactions carried out at regular intervals (e.g., monthly subscriptions, installment plans) without the customer having to enter their card details each time. In MIT (Merchant Initiated Transaction) payments, the merchant initiates the payment independently, based on a previously completed authentication.
Migration objective
To provide all the data necessary for the new payment processor to continue existing recurring payments, and for the merchant to benefit from freedom of choice with operational continuity.
Examples of files provided
File format:
- CSV format with UTF-8 encoding
- All rows must have the same number of columns
PayPal token migration
File example
Example header and first row:
TOKENVALUE;CREATEDATE;DELETED;DELETEDATE;REFERENCEID;AGREEMENTDESC
PPPXOEXXXXX8CBO3;1/17/2017 9:04 AM;0;;B-0C311XXXXXX344154M;edicola1@mail.com
Field descriptions
| Field | Description |
|---|---|
| TOKENVALUE | PayPal token identifier |
| CREATEDATE | Token creation date |
| DELETED | Binary value: 0/1 |
| DELETEDATE | Deletion date, if applicable. Can be empty |
| REFERENCEID | Reference to the PayPal transaction |
| AGREEMENTDESC | Text description of the agreement between the merchant and the customer. Often used to indicate a user reference (e.g., email address) |
Card token migration
File example
Example header and first row:
IDTOKEN;IDSHOP;TOKENVALUE;TOKENTYPE;CARDNUMBER;EXPIRYMONTH;EXPIRYYEAR;CREATEDATE;DELETED;DELETEDATE;WITHAUTHORIZATION;WITHCVV;THREEDLEVEL;ONLYMASKEDPAN;IDGROUP;LASTABUUPDATEDATE
325XX397;160817;52MUOMYXXXEY4375;STD;522694XXXXX74375;09;26;4/2/2022 7:41 AM;0;;1;1;2;0;1864;
Field descriptions
| Field | Description |
|---|---|
| IDTOKEN | Unique token identifier in Fabrick |
| IDSHOP | Associated Fabrick shop code |
| TOKENVALUE | Token used in place of the PAN |
| TOKENTYPE | Token type |
| CARDNUMBER | Card PAN |
| EXPIRYMONTH | Expiry month (MM) |
| EXPIRYYEAR | Expiry year (YY) |
| CREATEDATE | Creation date (YYYY-MM-DD HH:MM:SS) |
| DELETED | Binary value: 0/1 |
| DELETEDATE | Deletion date |
| WITHAUTHORIZATION | Binary value: 0/1 |
| WITHCVV | Allowed values: Y / N |
| THREEDLEVEL | 3DS authentication level |
| ONLYMASKEDPAN | Binary value |
| IDGROUP | Fabrick token group |
| LASTABUUPDATEDATE | Automatic Billing Updater last update date in format (YYYY-MM-DD HH:MM:SS) |
Recurring payment chain migration
File example
Example header and first row:
ID;IDSHOP;IDTOKEN;AUTH_DATA;AUTH_METHOD;AUTH_TIMESTAMP;ACS_TRANS_ID;BANKTRANSACTIONID;GLOBALPAYID;XID;FIRST_PAYMENT_ID;GATEWAY_FIRST;IDTRANSACTION_FIRST;IDCREDITCARDTRANSACTION_FIRST;RECOVERY;CREATED_DATE;RECURRING_TYPE;LAST_NEXT_DATE
234345;160817;9856927;;;;;-100;0;;f01c4eec-xxxx-4f29-b9e2-ea458286648b;I;689047016;1340432970;0;10/6/2022 2:04 PM;01;
Field descriptions
| Field | Description |
|---|---|
| ID | Recurring chain identifier |
| IDSHOP | Fabrick Store ID |
| IDTOKEN | Associated token |
| AUTH_DATA | Authentication data (if present) |
| AUTH_METHOD | Authentication method |
| AUTH_TIMESTAMP | Authentication timestamp |
| ACS_TRANS_ID | 3DS ACS identifier |
| BANKTRANSACTIONID | Fabrick shop-side ID |
| GLOBALPAYID | Fabrick global transaction ID |
| XID | GUID identifier of the chain |
| FIRST_PAYMENT_ID | ID of the first payment in the chain |
| GATEWAY_FIRST | Transaction entry point |
| IDTRANSACTION_FIRST | Unique ID of the transaction that originated the chain |
| IDCREDITCARDTRANSACTION_FIRST | Credit card transaction reference |
| RECOVERY | true / false / Y / N / empty |
| CREATED_DATE | Creation date (YYYY-MM-DD HH:MM:SS) |
| RECURRING_TYPE | 01 or 03 |
| LAST_NEXT_DATE | Date of the last MIT executed. Can be empty |
Security and file submission
The CSV file must be encrypted using the public key provided by the destination Payment Service Provider, which must also provide the sFTP server address details and credentials to allow Fabrick to deposit the files directly.
The connection details required are:
- server name
- port
- username
Expected timelines
Once the data indicated in the "Security and submission" section has been received, Fabrick commits to providing the data to the new PSP as quickly as possible. Depending on the quantity and type of data to be exported, the process may take from a few days to several weeks.
Contacts
For assistance in preparing the data or configuring the secure submission, please contact the Fabrick technical support team.