---
title: "reprocessRecurringDonationPlanTransaction"
method: POST
path: "/recurring-donation-plans/{id}/transactions/{transaction_id}/reprocess"
tags: ["Transaction"]
---

# reprocessRecurringDonationPlanTransaction

`POST /recurring-donation-plans/{id}/transactions/{transaction_id}/reprocess`

## Request

- Base URL: `https://pro.gofundme.com/api/2.0`
- URL: `https://pro.gofundme.com/api/2.0/recurring-donation-plans/{id}/transactions/{transaction_id}/reprocess`
- Auth: OAuth 2
  - Password
  - Token URL: `/oauth2/auth`

Reprocess a Transactions for a Recurring Donation Plan

## Path parameters

- `id` integer, required
- `transaction_id` integer, required

## Request body

- TransactionFillable
  - `billing_address1` string, nullable: Line one of Billing address
  - `billing_address2` string, nullable: Line two of Billing address
  - `billing_city` string, nullable: Billing city
  - `billing_country` string, nullable: Billing country. Must be a valid ISO 3166-1 alpha-2 country code
  - `billing_first_name` string, nullable: Billing first name
  - `billing_last_name` string, nullable: Billing last name
  - `billing_postal_code` string, nullable: Billing zip/postal code
  - `billing_state` string, nullable: Billing state/province
  - `browser_info` string, nullable: Browser information
  - `comment` string, nullable: Organization comment
  - `company_name` string, nullable: Name of company this Transaction has ties to
  - `hide_amount` boolean, nullable: Whether purchaser indicated if Transaction amount should be hidden
  - `is_anonymous` boolean, nullable: Whether purchaser indicated if transaction should be anonymous
  - `is_gift_aid` boolean, nullable: Flag whether the donor opted into gift aid used by the UK or not. Can only be set if the organization allows it
  - `is_reprocess` boolean, nullable: If it is a reprocessed transaction or not. On an existing (persisted) reprocess row, when payment_type is 'ACH' or 'Credit Card' and the asserted method's own identifying field (account_number for ACH, card_last_four for Credit Card) already holds a value, writing any of payment_type/card_last_four/card_type/card_expiration/account_number/account_type/institution nulls the group NOT matching payment_type (PRO-7938). Setting is_reprocess=true in the same write does not itself arm this -- only an already-persisted reprocess row does. On an update, fields supplied in the same write are never cleared; on create, the group not matching payment_type is always cleared, even if supplied in the same request. Both groups can be transiently populated across a multi-step patch (e.g. instrument fields written in one save, payment_type flipped in a later one) until a save observes the mismatch. Flipping this field's value on an update requires the 'update_admin' Cerberus ability (an org/campaign admin) -- a caller with only 'update' access gets a 403 (PRO-7938).
  - `member_country` string, nullable: Country of the Member
  - `member_email_address` string, nullable: Email address of purchaser GoFundMe Pro Member
  - `member_name` string, nullable: Name of purchaser GoFundMe Pro Member
  - `member_phone` string, nullable: Phone number of purchaser GoFundMe Pro Member
  - `member_cell_phone` string, nullable: Cell phone number of purchaser GoFundMe Pro Member. Also forwarded to the supporter record (cell_phone) on supporter creation — the SMS consent target when collected.
  - `metadata` string, nullable: An optional set of unstructured metadata to be stored with a Transaction
  - `raw_currency_code` string, nullable: Currency Code of the Transaction before normalization
  - `status` 'test' | 'canceled' | 'incomplete' | 'success' | 'refunded' | 'cb_lost' | 'cb_initiated' | 'voided' | 'pending' | 'failed', nullable: The status of the Transaction
  - `reprocess_attempt_info` ReprocessAttemptInfoFillable
    - `original_transaction_id` integer: ID of the original Transaction
    - `reprocess_transaction_id` integer: ID of Reprocess Transaction
    - `initiated_by_id` integer: The ID of the member initiating the reprocess
    - `pp_transaction_id` string: Transaction ID for the payment provider (e.g. Classy Pay)
    - `state` 'completed' | 'pending' | 'failed': Reprocess status
  - `fundraising_tracking_code` string: Fundraising Tracking Code to improve accuracy and efficiency in fundraising reporting

## Response `200`

Success

- ReprocessAttemptInfo
  - `created_at` string, date-time: Date/Time ReprocessAttemptInfo was created
  - `initiated_by_id` integer: The ID of the member initiating the reprocess
  - `original_transaction_id` integer: ID of the original Transaction
  - `reprocess_transaction_id` integer: ID of Reprocess Transaction
  - `state` 'completed' | 'pending' | 'failed': Reprocess status
  - `updated_at` string, date-time: Date/Time ReprocessAttemptInfo was updated

## Other responses

- `403`: Requester is not authorized to perform action
- `404`: Recurring Donation Plan or Transaction not found

---

[API](https://skmtc.dev/gofundme/apis/gofundme-pro-api.md) - [All operations](https://skmtc.dev/gofundme/apis/gofundme-pro-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gofundme/apis/gofundme-pro-api/revisions/094a1e510fe9?raw)
