Migrating subscriptions to Frisbii Billing

Prev Next

When switching to Frisbii Billing from your existing subscription platform, it’s possible to import all key components: saved payment methods, customers, and subscriptions. This ensures a seamless transition for your end users, without forcing them to re-enter payment details.

This guide walks you through how to import:

  • Credit card tokens (via Frisbii and your PSP)

  • Vipps/MobilePay agreements

  • SEPA Direct Debit mandates

  • PayPal vault or billing agreements

And how to create customers and subscriptions linked to those payment methods.


Before you start: Route all new signups through Frisbii

Before migrating existing subscriptions and payment methods, make sure that all new customer signups and subscriptions are processed via Frisbii.

This ensures you only have a fixed set of existing data to migrate, avoiding the need for multiple rounds of import later. If you're still using your old subscription platform or payment gateway for new signups, you'll continuously generate new data that also needs to be migrated.

✅ We recommend switching fully to Frisbii for all new subscriptions before you begin the migration.
You can onboard new users through:

  • Frisbii Hosted Pages

  • Our official plugins

  • Directly via the Frisbii API

Once this is in place, you can safely begin the migration of existing data without risk of overlap.


Import of payment methods


Credit card import

If your current PSP stores your customers’ saved card details, Frisbii can import those tokens securely to ensure uninterrupted billing during the migration.

⚠️ Only PCI Level 1 certified companies like Frisbii may handle and exchange card data.

Steps for importing credit card payment methods

1. Switch all new transactions to Frisbii
Ensure that all new subscriptions and card registrations are processed via Frisbii. So you only have existing subscriptions left

2. Request export from your current PSP

  • Email your current PSP requesting the export of all stored card data to Frisbii

  • CC support@frisbii.com in the email

  • 🛑 Ask the PSP to retain existing card data until migration is complete. This ensures you can continue charging through the old PSP if anything goes wrong during testing or cutover

3. Frisbii and PSP coordinate the transfer
Frisbii will handle the secure key exchange, encryption, and scheduling with your PSP.

4. Receive the token mapping file
Frisbii will provide a .csv file with the following format:

The output file contains all the imported cards.
The output file is using semicolon as a delimiter. 
It consists of the following columns:

<id1>;<id2>;<frisbii_temporary_token>
"Id1" is the card identifier from the old PSP 
"Id2" is the second card identifier from the old PSP. 

This column will be omitted if the old PSP only supplies asingle identifier.
"frisbii_temporary_token" is the one-time token referencing an imported card.

Example:
12345677;42441;ct_ca7b393ebb0ab1b59ea075b55adae344
12345671;42442;ct_c6e16fd3f3c01cd1e92137ca0bb5b0e8
12345672;42443;ct_4940286230dbda172c391153034bd6c2
12345673;42444;ct_b38c72778b97986f19fbda396c31c231
12345674;42445;ct_b75e50c5bcd6a41f19f20f36d19367e1
123456715;42446;ct_3563d85177e2389af67e979ba2fbe7b1
123456718;412447;ct_34a4191f637f9b97b7f05cecbb911ec6
123456719;987448;ct_105d4994a19350b7924291e24c11ee5e
  • id1: Primary card reference from the PSP

  • id2: Optional second ID (may be omitted)

  • frisbii_temporary_token: One-time-use card token issued by Frisbii

5. Attach the card using Add Payment Method API

You can either attach the imported card token to an existing customer or create the customer inline in the same request.

Option A: Attach to existing customer

Required fields:

  • source: The one-time-use Frisbii card token
    → Example: "ct_ca7b393ebb0ab1b59ea075b55adae344"

  • customer_handle: The handle of the already created customer
    → Example: "cust_0022"

Request example:

{
  "source": "ct_ca7b393ebb0ab1b59ea075b55adae344",
  "customer_handle": "cust_0022"
}

Option B: Create customer inline

Required fields:

  • source: The Frisbii card token

  • customer: Object with customer data:

    • handle: Unique customer identifier → "customer_001"

    • email: Customer’s email address → "jane.doe@example.com"

    • first_name: First name → "Jane"

    • last_name: Last name → "Doe"

Request example:

{
  "source": "ct_ca7b393ebb0ab1b59ea075b55adae344",
  "customer": {
    "handle": "customer_001",
    "email": "jane.doe@example.com",
    "first_name": "Jane",
    "last_name": "Doe"
  }
}

✅ If successful, you will receive a Frisbii payment method ID (e.g. ca_fcfac2016614418f969fa5697383e47c).
Store this ID and use it as the source when creating subscriptions.

Use the Frisbii payment method reference when creating new subscriptions.

6. Close your old PSP account (optional)
Once you’ve verified that everything works:

  • ✅ You may ask the PSP to delete old card data and terminate your agreement

  • ⏳ We recommend keeping the account active for a short time to allow for refunds on old transactions


Vipps / MobilePay Recurring

Frisbii supports importing existing Vipps or MobilePay Subscriptions into the VippsMobilePay Recurring system, part of VippsMobilePay’s unified Nordic platform. This allows you to retain customer mandates (also called agreements or payment methods) without requiring re-authorization.

📘 Requires that your VippsMobilePay merchant agreement is set up in Frisbii and properly linked via your Merchant Serial Number (MSN).

Steps for importing VippsMobilePay Recurring payment methods

  1. Get mandate references from your old provider

    • Retrieve a list of recurring agreement IDs (mandates) from your current PSP

    • Contact the PSP if you're unsure how to export these

  2. Create the customer in Frisbii
    You have two options:

    • Option A: Create the customer in advance using:
      POST /v1/customer

    • Option B: Create the customer inline during the import call using the customer object

  3. Import the Vipps/MobilePay mandate

    Example:

    {
      "vipps_agreement_id": "vipps-789123",
      "currency": "NOK",
      "customer": {
        "handle": "cust_001",
        "email": "mail@example.com",
        "first_name": "Olav",
        "last_name": "Nordmann"
      }
    }
    

✅ If successful, you’ll receive a Frisbii payment method reference.

Use the Frisbii payment method reference when creating new subscriptions.

Important considerations

  • MSN binding: You must import under the correct Merchant Serial Number (MSN). If you’re using a new MSN, VippsMobilePay support must move existing mandates to it before import.

  • Partner exclusivity: Only one integration partner can be active. When Frisbii is registered, your previous PSP immediately loses access.

  • MobilePay compatibility: MobilePay subscriptions follow the same flow and endpoint as Vipps.

  • Portal setup: Be sure to select Frisbii as your integration partner in the VippsMobilePay portal.


SEPA Direct Debit

Frisbii allows you to import existing SEPA Direct Debit mandates to continue charging IBANs without reauthorization from the customer.

📘 This flow is for already signed mandates from your old provider. Frisbii auto-generates and stores signed PDFs for new mandates created through our platform.

Steps for importing SEPA mandates

  1. Gather customer and mandate data

    • Collect: creditor_country, debtor_iban, and debtor_name from your existing platform

  2. Create the customer in Frisbii
    You can:

    • Option A: Create the customer in advance using:
      POST /v1/customer

    • Option B: Create the customer inline using the customer object in the import request

  3. Import the SEPA mandate

    Example:

    {
      "creditor_country": "DE",
      "debtor_iban": "DE60680512070012345678",
      "debtor_name": "Anna Schmidt",
      "customer": {
        "handle": "cust_001",
        "email": "anna@example.com",
        "first_name": "Anna",
        "last_name": "Schmidt"
      }
    }
    

✅ If successful, you’ll receive a Frisbii payment method reference.

Use the Frisbii payment method reference when creating new subscriptions.

Important limitations

  • 🛑 Frisbii cannot import original mandate PDFs

  • ✅ You are responsible for securely storing original SEPA mandate documents from previous providers, as they may be required for audit or compliance purposes. For new SEPA mandates created in Frisbii, a digitally signed mandate is automatically generated, stored securely, and can be retrieved at any time via API or through the admin interface.


PayPal (Vault or Billing Agreement)

Frisbii supports importing stored PayPal Vault tokens and Billing Agreements so you can continue charging customers seamlessly.

Steps for importing PayPal payment methods

  1. Collect PayPal token information

    • Identify the token_id (Vault ID or Billing Agreement ID)

    • Determine token_type: VAULT or BILLING_AGREEMENT

  2. Create the customer in Frisbii
    Choose one of the two:

    • Option A: Use POST /v1/customer to pre-create the customer

    • Option B: Include the customer object inline in the import call

  3. Import the PayPal agreement

    Example:

    {
      "token_id": "EC-1ABC234DEF567890G",
      "token_type": "BILLING_AGREEMENT",
      "customer": {
        "handle": "paypal_cust_001",
        "email": "paypal@example.com",
        "first_name": "Maria",
        "last_name": "Anders"
      }
    }
    

✅ If successful, you’ll receive a Frisbii payment method reference.

Use the Frisbii payment method reference when creating new subscriptions.


Creating subscriptions

Once all customers and payment methods are in place, the final step is to create subscriptions in Frisbii for each customer.

1. Temporarily disable email notifications

Before creating subscriptions in bulk:

  • Go to Settings → Email Templates

  • Disable Signup emails and other relevant emails.

  • Set a reminder to re-enable them at the end of the process.

This helps prevent accidental customer-facing communication during the migration.

2. Create subscriptions

Use the Create Subscription API to set up each subscription in Frisbii.

Required fields:

  • customer_handle: The customer’s unique identifier in Frisbii

  • plan: The plan handle

  • source: The Frisbii payment method reference (e.g. ca_xxx)

  • start_date: The date when the subscription should generate its next invoice, typically the subscription’s next renewal date.

Example:

{
  "customer_handle": "customer_001",
  "plan": "monthly_plan_001",
  "start_date": "2025-07-01",
  "source": "ca_fcfac2016614418f969fa5697383e47c"
}

Make sure to match each customer to the correct plan and payment method using the mapping from your previous system.


Conclusion

By following this guide, you can successfully migrate payment methods and subscriptions into Frisbii Billing with minimal disruption. Whether importing credit cards, PayPal, SEPA, or Vipps MobilePay mandates, Frisbii supports a structured and secure migration flow.

For assistance with coordination or troubleshooting, contact support@frisbii.com.