---
title: "Migrate card to different program [beta]"
method: PATCH
path: "/wallet/v2/cards/{cardId}/program-migration"
tags: ["Migration"]
---

# Migrate card to different program [beta]

`PATCH /wallet/v2/cards/{cardId}/program-migration`

Migrate a card to a different program. It is possible to migrate from a Zero balance program to a Full balance program and vice-versa.
        
This endpoint generates two events:

  * [Card can be added to next scheduled embossing](https://developers.pismo.io/events/docs/cards-embossing-card-ingress-1) event containing the field `operation_type` = `CARD_PROGRAM_MIGRATION` if the card has not yet been embossed.

  * [Card migrated](https://developers.pismo.io/events/docs/cards-migration-1) event. 

**Notes:** 

   * This endpoint **REQUIRES** an account token - an access token encoded with a Pismo account ID.

   * For combination cards, this endpoint migrates the [card mode](https://developers.pismo.io/pismo-docs/docs/cards-overview-1#create-a-combination-card-with-card-modes) the card was originally created with. To migrate the secondary mode, call the [Migrate card mode](https://developers.pismo.io/pismo-docs/reference/patch-migrate-card-mode) endpoint.

## Path parameters

- `cardId` string, required

## Headers

- `x-customer-id` integer, required

## Request body

- MigrateCardToProgramRequest — Migrate card to different program object
  - `new_program_id` number, required — Pismo program ID.

## Response `202`

Success

## Other responses

- `400` — Bad Request, missing customer ID or program ID
- `401` — Access token is missing or invalid
- `403` — The request has been lost
- `404` — Not Found
- `406` — Not accepetable
- `500` — Internal server error

---

[API](https://skmtc.net/pismo/apis/platform-authentication.md) · [All operations](https://skmtc.net/pismo/apis/platform-authentication/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pismo/platform-authentication/revisions/935b62e16de4/schema)
