Migrate recurring payments
  • 16 Jun 2025
  • 6 minute read
  • Dark
    Light
  • PDF

Migrate recurring payments

  • Dark
    Light
  • PDF

Article summary

Note: when we talk about migrating recurring payments we are exclusively referring to Slate Payments functionality! At present, the recurring payments functionality is enabled for Advancement clients in the recurring donations / gifts feature-set.

Overview

Migrating recurring payments to Slate ultimately depends on the 2 payment processors being able to transfer payment method data directly to each other in a PCI compliant manner.

If your gift or subscription service is already using Stripe as the actual back-end payment processor, the migration process is more direct. There is a "semi self-service tool" that you will use and we should be able to finish the copying of data in a fairly quick manner (you can skip the following section and continue below).

Migration from a non-Stripe processor

There is a specialized data migration Support team at Stripe. Technolutions as the owner of the Slate Payments platform will initiate an 'import migration request' on behalf of a specific connected account (i.e. you). Stripe will review the data and reach back out to us with further instructions, which will vary depending on the source payment processor.

We have worked with clients on various migrations (e.g. BBMS, Cybersource, AuthorizeNet, Elavon). In general, these types of transactions should be a "follow-the-task-list" exercise for the Support team at your current payment provider (most of them do these things all the time; it’s just you who is new to it). However, many payment processors may charge an extra fee for their migration services, so please check on this well in advance!

General Steps

  1. Gather initial information (see items 1-3 below)

  2. Open a Support ticket … Technolutions will initiate a data import request with Stripe

  3. Await further instructions from Technolutions and Stripe

  4. Prepare and Upload data to Stripe as instructed.

  5. Receive mapping files post-import.

Gather initial information

In order to complete the initial import migration request form with Stripe, we need a few additional data/information from you:

  1. Have you already reached out to your account contact that you want to export your data?

    1. Is someone aware that this is coming?

    2. Do you already have a specific technical PoC?

    3. Do extra contracts have to be signed by you for this service?

  2. Can you estimate how many records will be included in your payment import?

  3. What payment types would you like to import? Only cards or also ACH data?

    1. If ACH data is included, we will need to get some additional data from you. To improve Fraud Detection Standards, Nacha's Web Debit Account Validation rule now specifically requires that businesses initiating customer ACH debits via the internet first validate the customer's account prior to the first debit transaction. However, this rule will not be enforced when the debit account number has been successfully used for a prior payment to the business prior to March 19, 2022, such as through processing of the debit account for WEB payment by your prior payment service provider.

When you have assembled this data, please open a Support ticket with us!

Encrypting and uploading

The instructions from Stripe will vary depending on your old payment processor, but in general they will follow a well-established sequence.

Once your current processor has a list of relevant payments/customers/subscriptions prepared, data from them must be encrypted with Stripe's PGP key and then uploaded securely to the Stripe SFTP server. Stripe will create an SFTP account specific to this import. For the encryption of your data, Stripe's PGP key can be found here: https://stripe.com/docs/account/data-migrations/pan-import#migration-pgp-key . Please share this with your technical contacts.

Some processors share the file directly with the merchant (i.e. you), for them to upload to Stripe; others will insist on dealing with Stripe directly. When the time comes, make sure you know or verify the expectations.

To securely share the SFTP account credentials, Stripe will need the uploader's (i.e. your) PGP key or a preferred mobile phone number. Please be prepared to provide a link to the PGP key or the mobile phone number that you want to use in the Support ticket.  

Stripe can only import payment data and customer details, and cannot import Apple Pay cards.

Please let us know if the file is not UTF-8 encoded. This is important to ensure that all characters in the data are readable.

Stripe typically states guidance that it takes up to 10 business days to import data, which starts once they receive valid data from your current processor. The time to import will vary based on the number of records and whether any tooling updates are required to process the data Stripe receives. In most cases, these will be known import sources, but it is import to remember this caveat!

Migrating from an existing Stripe account

If you have a recurring payment solution that already utilizes either:

  • an existing stand-alone Stripe account (where you access the account dashboard directly),

  • or some other Stripe-enabled setup via a payment facilitator (e.g. GiveCampus)

… you will use a "semi self-service tool" (either directly or indirectly) which allows for the copying of customer objects and payment methods in a PCI-compliant manner.

Despite the more ‘self-service’ nature, please open a Service ticket with us, so we can prepare for the final tasks (post Step #6 below) and coordinate the sending of the mapping files and outlining the next steps for you. Since you are copying customer data to a connect account on the Technolutions platform, we will still need to approve the copy/import request and complete the process on our end.

Here is Stripe's more technical (and comprehensive) write-up on this particular process: https://docs.stripe.com/get-started/data-migrations/pan-copy-self-serve?copy-method=full#full-or-partial ).

GiveCampus customers

Note for existing GiveCampus customers: GiveCampus uses Stripe to process recurring payments using their subscription/billing functionality. They appear to be charging an ‘Integration Fee’ to their existing customers to prepare the relevant filtered customer data export for your particular client account. You will want to reach out to them well in advance to make sure all the relevant contracts are signed, invoices paid, and they can accommodate your desired timeline.

You will need to note your own Slate Payments deposit account ID (acct_******) and let GiveCampus know that this will be the “recipient account”.

Copy Customer data

The following section assumes you are using an existing stand-alone Stripe account where you have full access to the account dashboard.

Before you get started, note your own Slate Payments deposit account ID (the relevant acct_****** from your Slate database, if you have multiple). That will be the “recipient account”.

We need to complete three steps for a full data copy:

  1. The sender (you) shares their customer data with the recipient (Slate).

  2. The recipient (Slate) authorizes import and accepts the customer data from the sender.

  3. The copying process finishes and mapping files are generated.

To Share customer data with the recipient (Slate):

  1. The sender (you) logs into their Stripe account and navigates to the Customers page.

  2. Click Copy customers.

  3. In the Copy Method field, click Copy all customers.

  4. Enter the account ID (acct_xxxx) of the recipient account (i.e. the Slate Payments deposit account ID from your database and click Continue.
    If you haven’t previously shared customers with this recipient account, we receive a message stating that the recipient needs to authorize your request before the copy occurs.

  5. They/we click Confirm.

  6. After successfully sharing the data with the recipient, the sender (i.e. you) can see the pending copy request at the top of the Customers page.

Once you are done with step 5&6, please let us know (via the Support ticket) and we will "Authorize and Accept" the data import.

After these steps are done, we will create the relevant mapping files (to correlate old vs new customer_IDs) and share instructions / next steps for setting up the new recurring gifts in Slate. Typically, this will follow the steps outlined in this separate article.


Was this article helpful?