Back to Blog
Archive Duplicate Subscriptions After a Migration
Billing

Archive Duplicate Subscriptions After a Migration

Review duplicate subscriptions after a migration with a survivor ledger. Separate record cleanup from old-system billing, open invoices and refunds.

October 11, 20265 min read
P
PayRequest Team
Product Workflow Editors

After a subscription migration, identify the record that should continue billing before archiving any apparent duplicate. Match the customer, service and billing period, resolve the old record's invoices, and confirm that the previous system will not charge again. Two records with the same customer name are not enough evidence of duplication.

This guide is for billing administrators reviewing a completed import. Its survivor ledger is an original example, not an automatic deduplication feature or a tested customer migration.

Choose the Survivor by Service Identity

For every suspected pair, write down the source-system ID, PayRequest subscription ID, customer, product, actual service identifier, currency, billing interval and paid-through period. “Hosting monthly” can describe two legitimate websites. A matching email can also belong to an organization buying several services.

The survivor is the record you intend to manage and bill going forward. Preserve a reference to the other record so someone can reconstruct the decision later. Do not pick the survivor simply because its creation timestamp is newer.

Use a Three-Record Decision Ledger

Illustrative example: one customer has a managed website subscription. A repeated import appears to have created a second record, while another record covers a genuinely different website.

RecordService and periodEvidenceDecision
S-401Site A, OctoberIntended live record; next billing verifiedKeep as survivor
S-402Site A, OctoberSame source service ID; duplicate import confirmedCandidate for cancellation, then archive
S-403Site B, OctoberDifferent service ID and separate agreementKeep; not a duplicate

Add columns for open invoice IDs, provider subscription IDs, last successful payment and reviewer. If those fields conflict, stop the cleanup until the conflict has an owner and resolution. Do not merge payment histories or infer that two invoice numbers mean two valid charges.

Clear Three Separate Stop Conditions

  1. Record identity: the candidate truly represents the same service and obligation as the survivor. Confirm it with the source data and service owner.
  2. Billing authority: verify which system and provider can still create or collect the next payment. Archiving a PayRequest record is not evidence that an external legacy subscription was canceled.
  3. Invoice disposition: classify each open invoice as valid, duplicated or disputed. Record the approved billing correction separately. If a duplicate was paid, investigate the payment and refund decision; hiding the subscription does not return money.

An unresolved invoice is a reason to keep the cleanup pending, not to make the record harder for a customer to find. Explain the chosen continuing record to the customer when the migration changes what they see.

Cancel, Archive and Verify the Preserved Record

PayRequest's archiving documentation requires cancellation before archiving. An archived subscription moves to the Archived tab, disappears from the customer portal and retains linked invoices, transactions and history. Open invoices are not automatically canceled by the UI archive action.

After the three checks pass, tag the candidate with the migration reference, cancel it through the documented workflow and confirm its canceled status. Open its detail page, choose Archive Subscription and confirm. Verify it is in Archived, the preserved documents are still accessible to the administrator, and the survivor's next billing details match the handoff.

Then inspect the next expected billing cycle in both systems. A clean list is only one acceptance criterion; the other is that the intended obligation is collected once.

Keep Reactivation Out of Routine Cleanup

The documented recovery path is to open the archived record and reactivate it with billing details such as the next date and mandate. Review the survivor first. Reactivating the old duplicate without checking the continuing service can recreate the original problem.

Use PayRequest subscription archiving after the ledger is decision-ready. For migration planning before import, use the separate WHMCS migration checklist.

For temporary interruptions rather than duplicate cleanup, use the separate pause-and-resume checklist.

Ready to configure your workflow? Create a PayRequest account.

Prepared by the PayRequest Team with AI assistance. Documentation reviewed on 11 October 2026. Record IDs, service names and the ledger are illustrative; no customer test or financial result is claimed.

Frequently asked questions

Does archiving cancel an open invoice?

No. The documented UI archive action does not automatically cancel open invoices. Review and resolve them separately before cleanup.

Are two subscriptions for one customer necessarily duplicates?

No. Compare the actual service, source identifier and billing period. The same customer may have several legitimate services.

Does archiving stop billing in my previous system?

Do not assume it does. Verify and resolve the old system’s billing authority separately; a PayRequest archive status is not evidence of external cancellation.

Share this article