> ## Documentation Index
> Fetch the complete documentation index at: https://docs.synctera.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update an internal transfer

> Update an internal transfer.

This is only relevant when committing or cancelling an internal transfer authorization (created with `capture_mode` = `MANUAL`) that hasn't already been completed.



## OpenAPI

````yaml openapi.json patch /transactions/internal_transfer/{id}
openapi: 3.0.3
info:
  description: >-
    This is the official reference documentation for Synctera APIs. If you need
    something specific or have a question, <a class='text-blue-600'
    href='https://synctera.com/contact-us' target='_blank'
    rel='noreferrer'>contact us</a>.</p>
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  title: Synctera API
  version: 0.208.0
servers:
  - description: Sandbox (no real world financial impact)
    url: https://api-sandbox.synctera.com/v0
  - description: Production
    url: https://api.synctera.com/v0
security:
  - bearerAuth: []
tags:
  - description: Lookup merchant information
    name: Merchants
  - description: Requests to generate simulated webhooks
    name: Card Webhook Simulations
  - description: >-
      Account programs define configurations for payment rails and transaction
      capabilities across different account types.
    name: Account Programs
  - description: Simulate receiving ACH transactions and returns
    name: ACH Transaction Simulations
  - description: Requests for risk evaluation and decisioning
    name: Risk Evaluations
  - description: Requests to link and manage External Cards
    name: External Cards
  - description: |
      The disclosures resource is used to track the status of disclosures and
      ensure that all parties have been shown the necessary disclosures to meet
      regulatory obligations.
    name: Disclosures
  - description: Create and manage Cash Order and Cash Deposit transfers
    name: Cash Orders and Deposits (alpha)
  - description: Requests to initiate customer verification.
    name: KYC Verification (deprecated)
  - description: Request to create and manage users
    name: Users
  - description: See balance history
    name: BalanceHistory
  - description: >-
      Migration mappings associate resources from an old tenant identity with a
      new tenant identity.
    name: Migration Mappings
  - description: |
      The External Account resource is used for managing links to accounts
      that operate outside of the Synctera ecosystem.
    name: External Accounts
  - description: Requests to create and manage account products, including fees, interest.
    name: Account Products
  - description: Requests to create and manage webhooks
    name: Webhooks
  - description: Create and manage documents.
    name: Documents
  - description: >-
      Create and manage same currency and multi-currency international wire
      transfers
    name: International Wires (alpha)
  - description: Requests for transaction risk detection
    name: Transaction risk
  - description: >-
      Used to configure bank accounts for which synctera accounts are considered
      a "subledger" to
    name: Bank Account
  - description: Request to create and manage party groups and party group members
    name: Party Groups
  - description: Requests to manage addresses
    name: Addresses
  - description: Requests to manage monitoring subscriptions and alerts for customers.
    name: Monitoring
  - description: Requests to search and manage compliance searches
    name: Compliance Searches
  - description: Requests to create and manage customers
    name: Customers
  - description: |
      The internal account resource is used for managing links to internal
      accounts where the funds are managed by integrators.
    name: Internal Accounts
  - description: Create and manage spending controls
    name: Spend Controls
  - description: Retrieve user identity information
    name: Identity
  - description: Requests to manage banks
    name: Banks
  - description: |
      The Disclosures resource is used to track the status of disclosures and
      ensure that customers have been shown the necessary disclosures to meet
      regulatory obligations.
    name: Disclosures (deprecated)
  - description: Create and manage wire transfers
    name: Wires
  - description: Requests to issue and manage Cards
    name: Cards
  - description: Request to create and manage edd
    name: Trust
  - description: Request to enroll, renew, or cancel watchlist monitors
    name: Watchlist (deprecated)
  - description: Endpoints for modifying or fetching posting dates
    name: Posting Dates
  - description: Transaction lines API
    name: transactions
  - description: Request to create and manage accounts
    name: Accounts
  - description: Requests to create and manage notes
    name: Notes
  - description: Account Template
    name: Account Templates
  - description: API for effective balances
    name: effective_balances
  - description: Requests to create and manage personal ID configurations
    name: Personal ID Configuration
  - description: >
      A natural person (individual human) that is relevant to the Synctera
      platform in some way: e.g. a personal customer or a director/officer/owner
      of a business.
    name: Persons
  - description: >
      Represents the relationships between parties. A relationship can exist
      between personal customers, business customers, or non-customer
      persons/organizations.
    name: Relationships
  - description: >
      A legal entity (corporation, partnership, etc.) that is relevant to the
      Synctera platform in some way: a business customer or some other
      organization that has an ownership share in such a business customer.
    name: Businesses
  - description: Request to create and manage payment_schedules
    name: Cronut
  - description: Requests to manage partners
    name: Partners
  - description: Request to create and manage deposits using remote deposit capture
    name: Remote Check Deposit
  - description: Requests to create and manage API keys
    name: API Keys
  - description: Requests to create and manage ban rules
    name: Ban Rules
  - description: Admin API for Middesk configuration using the tenants API keys.
    name: Middesk
  - description: Request to create and manage exclusions
    name: Stately
  - description: Request to create and manage partner configurations
    name: Quickstart
  - description: Manage contacts for bank and fintech partners
    name: Contacts
  - description: Create and manage transactions
    name: Transactions
  - description: Request to create and manage rdc configurations
    name: RDC Config
  - description: Create and manage holds
    name: Hold
  - description: Requests to create and manage roles
    name: Roles
  - description: Simulate receiving Wire transactions and returns
    name: Wire Transaction Simulations
  - description: Requests to create licenses
    name: Licenses
  - description: Requests to Admins to grant permissions to user
    name: Request Permissions
  - description: Configure vendor secrets for egress requests
    name: Egress Gateway Vendor Secret CRUD API
  - description: Requests to screen parties against sanctions watchlists
    name: Sanctions Screening
  - description: Create and manage payments
    name: ACH
  - description: Requests to calculate and manage CRR
    name: CRR
  - description: Requests to search financial institutions
    name: Institutions (Beta)
  - description: Create and manage tenant configurations
    name: Tenant Configs
  - description: Create and manage sweep configurations
    name: Configs
  - description: >
      Represents the compliance rules that are used to verify certain kinds of
      money movement.
    name: Compliance Rules
  - description: Configure webhook secrets for egress requests
    name: Egress Gateway Webhook Secret CRUD API
  - description: Create and manage transactions
    name: Transactions (internal)
  - description: History
    name: History
  - description: Create and manage EFT Canada transfers
    name: EFT Canada (Beta)
  - description: Requests to generate simulated transactions
    name: Card Transaction Simulations
  - description: Requests to initiate customer verification.
    name: KYC/KYB Verifications
paths:
  /transactions/internal_transfer/{id}:
    summary: Get an internal transfer by ID
    description: Returns details about an internal transfer.
    patch:
      tags:
        - Internal Transfer
      summary: Update an internal transfer
      description: >-
        Update an internal transfer.


        This is only relevant when committing or cancelling an internal transfer
        authorization (created with `capture_mode` = `MANUAL`) that hasn't
        already been completed.
      operationId: updateInternalTransferByID
      parameters:
        - $ref: '#/components/parameters/id1'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/internal_transfer_patch'
        description: Internal transfer request body
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/internal_transfer_response'
          description: Internal transfer response
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '422':
          $ref: '#/components/responses/unprocessable_entity'
        '500':
          $ref: '#/components/responses/internal_server_error'
components:
  parameters:
    id1:
      description: Transaction ID
      in: path
      name: id
      required: true
      schema:
        example: 472341e0-ea3e-41a1-96bc-fd0185e1eac8
        format: uuid
        type: string
  schemas:
    internal_transfer_patch:
      properties:
        status:
          description: The desired status of the internal transfer auth
          enum:
            - CANCELED
            - COMPLETE
          type: string
    internal_transfer_response:
      allOf:
        - properties:
            id:
              description: The transaction id associated with the transfer
              format: uuid
              type: string
            status:
              $ref: '#/components/schemas/internal_transfer_response_status'
          required:
            - id
            - status
          type: object
        - $ref: '#/components/schemas/internal_transfer'
    internal_transfer_response_status:
      description: >-
        The status of the internal transfer auth.

        A value of `PENDING` indicates that the funds have been reserved and the
        transaction is ready to be either completed or canceled.

        A value of `COMPLETE` indicates the funds have been successfully moved
        and no more action can be performed.

        A value of `CANCELED` or `EXPIRED` means that the transaction has rolled
        back and the funds have been returned to the originating account, either
        by explicitly canceling via the API, or due to the expiry time having
        passed.
      enum:
        - CANCELED
        - COMPLETE
        - EXPIRED
        - PENDING
      type: string
    internal_transfer:
      example:
        amount: 1025
        currency: USD
        originating_account_id: 7d943c51-e4ff-4e57-9558-08cab6b963c7
        receiving_account_id: 7d943c51-e4ff-4e57-9558-08cab6b963c7
        type: ACCOUNT_TO_ACCOUNT
      properties:
        amount:
          description: >-
            The amount (in cents) to transfer from originating account to
            receiving account.
          format: int64
          minimum: 1
          type: integer
        capture_mode:
          default: IMMEDIATE
          description: >-
            Controls when the transfer will take effect.

            A value of `IMMEDIATE` (the default) means that the transfer will be
            completed immediately.

            A value of `MANUAL` means that the transaction will remain in a
            "pending" state until explicitly completed or cancelled (or the auth
            expires).
          enum:
            - IMMEDIATE
            - MANUAL
          type: string
        currency:
          description: ISO 4217 alphabetic currency code of the transfer amount
          example: USD
          type: string
        expires_at:
          description: >-
            When `capture_mode` is `MANUAL`, this field describes when the
            pending transaction should expire.
          format: date-time
          type: string
        final_customer_id:
          description: >-
            The customer id of the international customer that receives the
            final remittance transfer (required for remittance payments).
          format: uuid
          type: string
        memo:
          description: A short note to the recipient
          type: string
        metadata:
          description: Arbitrary key-value metadata to associate with the transaction
          type: object
        originating_account_alias:
          description: >-
            An alias representing a GL account to debit. This is alternative to
            specifying by account id
          example: ach_suspense
          type: string
        originating_account_customer_id:
          description: The customer id of the owner of the originating account.
          format: uuid
          type: string
        originating_account_id:
          description: The UUID of the account being debited
          format: uuid
          type: string
        receiving_account_alias:
          description: >-
            An alias representing a GL account to credit. This is an alternative
            to specifying by account id
          example: ach_suspense
          type: string
        receiving_account_customer_id:
          description: The customer id of the owner of the receiving account.
          format: uuid
          type: string
        receiving_account_id:
          description: The UUID of the account being credited
          format: uuid
          type: string
        reference_id:
          description: Network reference id
          maxLength: 128
          type: string
        tenant:
          $ref: '#/components/schemas/tenant_id'
        type:
          description: The desired transaction type to use for this transfer
          enum:
            - ACCOUNT_BALANCE_ADJUSTMENT
            - ACCOUNT_TO_ACCOUNT
            - ACCOUNT_TO_ACCOUNT_SWEEP
            - ACH_CREDIT_SWEEP
            - ACH_DEBIT_SWEEP
            - ACH_FLOAT_TRANSFER
            - ACH_INCOMING_CREDIT_SWEEP
            - ACH_INCOMING_DEBIT_SWEEP
            - ACH_INCOMING_RETURN_CREDIT_SWEEP
            - ACH_INCOMING_RETURN_DEBIT_SWEEP
            - ACH_OUTGOING_CREDIT_SWEEP
            - ACH_OUTGOING_DEBIT_SWEEP
            - ACH_OUTGOING_RETURN_CREDIT_SWEEP
            - ACH_OUTGOING_RETURN_DEBIT_SWEEP
            - ACH_SWEEP
            - AUTO_PAYMENT
            - AUTO_PAYMENT_REVERSAL
            - BULK_DOMESTIC_WIRE_OUTGOING_SWEEP
            - BULK_EFT_CA_OUTGOING_CREDIT_SWEEP
            - BULK_EFT_CA_OUTGOING_DEBIT_SWEEP
            - CARD_CHARGEBACK
            - CARD_CHARGEBACK_CASE1
            - CARD_CHARGEBACK_CASE1_REVERSAL
            - CARD_CHARGEBACK_CASE2
            - CARD_CHARGEBACK_CASE2_REVERSAL
            - CARD_CHARGEBACK_CASE3
            - CARD_CHARGEBACK_CASE3_REVERSAL
            - CARD_CHARGEBACK_CASE_WON_SWEEP
            - CARD_CHARGEBACK_CASE_WON_SWEEP_REVERSAL
            - CARD_CHARGEBACK_WRITEOFF
            - CARD_CHARGEBACK_WRITEOFF_SWEEP
            - CARD_CHARGEBACK_WRITEOFF_SWEEP_REVERSAL
            - CARD_PROVISIONAL_CREDIT
            - CARD_PROVISIONAL_CREDIT_REVERSAL
            - CARD_PROVISIONAL_CREDIT_SWEEP
            - CARD_PROVISIONAL_CREDIT_SWEEP_REVERSAL
            - CASHBACK
            - CASHBACK_SWEEP
            - CASH_DEPOSIT_KIOSK
            - CASH_DEPOSIT_KIOSK_REVERSAL
            - CHECK_DEPOSIT_KIOSK
            - CHECK_DEPOSIT_KIOSK_GOV
            - CHECK_DEPOSIT_KIOSK_GOV_REVERSAL
            - CHECK_DEPOSIT_KIOSK_PAYROLL
            - CHECK_DEPOSIT_KIOSK_PAYROLL_REVERSAL
            - CHECK_DEPOSIT_KIOSK_REVERSAL
            - CHECK_DEPOSIT_MOBILE
            - CHECK_DEPOSIT_MOBILE_REVERSAL
            - CREDIT_MEMO
            - DOMESTIC_MONEY_TRANSFER_ATM_WITHDRAWAL
            - DOMESTIC_MONEY_TRANSFER_ATM_WITHDRAWAL_REVERSAL
            - DOMESTIC_MONEY_TRANSFER_BANK_DEPOSIT
            - DOMESTIC_MONEY_TRANSFER_BANK_DEPOSIT_REVERSAL
            - DOMESTIC_MONEY_TRANSFER_CASH_PICKUP
            - DOMESTIC_MONEY_TRANSFER_CASH_PICKUP_REVERSAL
            - DOMESTIC_MONEY_TRANSFER_HOME_DELIVERY
            - DOMESTIC_MONEY_TRANSFER_HOME_DELIVERY_REVERSAL
            - DOMESTIC_MONEY_TRANSFER_MOBILE_WALLET
            - DOMESTIC_MONEY_TRANSFER_MOBILE_WALLET_REVERSAL
            - DOMESTIC_WIRE_INCOMING_RETURN_SWEEP
            - DOMESTIC_WIRE_INCOMING_SWEEP
            - DOMESTIC_WIRE_OUTGOING_RETURN_SWEEP
            - DOMESTIC_WIRE_OUTGOING_SWEEP
            - EFT_CA_INCOMING_CREDIT_RETURN_SWEEP
            - EFT_CA_INCOMING_CREDIT_SWEEP
            - EFT_CA_INCOMING_DEBIT_RETURN_SWEEP
            - EFT_CA_INCOMING_DEBIT_SWEEP
            - EFT_CA_OUTGOING_CREDIT_RETURN_SWEEP
            - EFT_CA_OUTGOING_CREDIT_SWEEP
            - EFT_CA_OUTGOING_DEBIT_RETURN_SWEEP
            - EFT_CA_OUTGOING_DEBIT_SWEEP
            - ETRANSFER_SWEEP
            - FEE
            - FEE_REVERSAL
            - FEE_SWEEP
            - FORCE_PAYMENT
            - GENERAL_FEE_SWEEP
            - GENERAL_FEE_SWEEP_REVERSAL
            - GENERAL_INTERNAL_TRANSFER_SWEEP
            - GENERAL_INTERNAL_TRANSFER_SWEEP_REVERSAL
            - GENERAL_REWARD_SWEEP
            - GENERAL_REWARD_SWEEP_REVERSAL
            - INCOMING_WIRE
            - INCOMING_WIRE_SWEEP
            - INTEREST_CHARGED_SWEEP
            - INTEREST_CORRECTION
            - INTEREST_PAYOUT
            - INTEREST_PAYOUT_SWEEP
            - INTERNATIONAL_WIRE_INCOMING_SWEEP
            - INTERNATIONAL_WIRE_OUTGOING_RETURN_SWEEP
            - INTERNATIONAL_WIRE_OUTGOING_SWEEP
            - INVOICE
            - IN_STORE_CASH_DEPOSIT_SWEEP
            - IN_STORE_CASH_DEPOSIT_SWEEP_REVERSAL
            - LOAN_DISBURSEMENT
            - LOAN_FUNDING
            - MANUAL_ADJUSTMENT
            - MANUAL_ADJUSTMENT_REVERSAL
            - MANUAL_ADJUSTMENT_SWEEP
            - MANUAL_AFT_SWEEP
            - MANUAL_CARD_SWEEP
            - MANUAL_CASH_DEPOSIT_SWEEP
            - MANUAL_CASH_ORDER_SWEEP
            - MANUAL_CHECK_ISSUANCE
            - MANUAL_CHECK_SWEEP
            - MANUAL_OCT_SWEEP
            - MANUAL_WIRE_SWEEP
            - MARKETPLACE_BILL_PAY
            - MARKETPLACE_BILL_PAY_REVERSAL
            - MARKETPLACE_EVENT_TICKETS
            - MARKETPLACE_EVENT_TICKETS_REVERSAL
            - MARKETPLACE_GIFT_CARD
            - MARKETPLACE_GIFT_CARD_REVERSAL
            - MARKETPLACE_MOBILE_TOP_UP
            - MARKETPLACE_MOBILE_TOP_UP_REVERSAL
            - MASTERCARD_GROSS_SWEEP
            - MASTERCARD_INTERCHANGE_SWEEP
            - MASTERCARD_NET_SWEEP
            - MISC_CREDIT
            - MOBILE_DEPOSIT_RETURN_SWEEP
            - MOBILE_DEPOSIT_SWEEP
            - NEGATIVE_BALANCE_RESERVE
            - NEGATIVE_BALANCE_WRITEOFF
            - NETWORK_ADJUSTMENT_SWEEP
            - NETWORK_CHARGEBACK_SWEEP
            - OUTGOING_INTERNATIONAL_REMITTANCE
            - OUTGOING_INTERNATIONAL_REMITTANCE_REVERSAL
            - OVERDUE_CARD_WRITEOFF
            - PEER_TO_PEER
            - PROMOTIONAL_CREDIT
            - PROMOTIONAL_CREDIT_REVERSAL
            - PROMOTIONAL_CREDIT_SWEEP
            - PULSE_GROSS_SWEEP
            - PULSE_INTERCHANGE_SWEEP
            - REVENUE_DISBURSEMENT
            - SECURITY_ACCOUNT_PAYMENT
            - SECURITY_OVERPAY_ADJUSTMENT
            - SECURITY_OVERPAY_ADJUSTMENT_REVERSAL
            - SIGN_UP_BONUS
            - SUBSCRIPTION_FEE
            - TRANSFER_FEE
            - TRANSFER_FEE_REVERSAL
            - VISA_GROSS_SWEEP
            - VISA_INTERCHANGE_SWEEP
            - VISA_NET_SWEEP
            - WIRE_SETTLEMENT_CREDIT
            - WIRE_SETTLEMENT_DEBIT
          type: string
      required:
        - amount
        - currency
        - type
      type: object
    error:
      description: >-
        Synctera error responses in API v0 follow [RFC
        7807](https://datatracker.ietf.org/doc/html/rfc7807). Following that
        standard, the field for a machine-readable "error code" in API v0 is
        `type`.

        In our future API v1, we are phasing out RFC 7807 and adopting a custom
        error format. That format will be documented in our API v1 spec. But you
        may see some v0 error responses with a machine-readable `code` field
        while we are making the transition from v0 to v1.
      properties:
        code:
          description: >-
            An optional “sneak preview” of our future API v1 error responses.
            This is provided to give integrators a chance to work with our
            future error codes. Error codes for the same error may change
            between v0 and v1.
          example: BAD_REQUEST_BODY
          type: string
        detail:
          description: |
            A human-readable string explaining this particular error.
          example: 'missing required fields: first_name, dob'
          type: string
        status:
          description: the HTTP status code for this response
          example: 400
          type: integer
        title:
          description: >
            A human-readable string for this general category of error, which
            corresponds 1-to-1 with error types (`title` is the human-readable
            version of `type`). There can be multiple distinct titles for the
            same HTTP status code, and the same `title` can result in many
            different `detail` strings.

            This field will be removed in API v1.
          example: Bad Request Body
          type: string
        type:
          description: >
            A machine-readable string that identifies the error for programmatic
            use. This is a URI, i.e. a globally unique identifier. It is _not_
            necessarily a URL, so do not expect it to resolve to a web page. You
            can use this whole string as an error code, or just everything after
            the last slash.

            This field will be removed in API v1.
          example: https://dev.synctera.com/errors/bad-request-body
          type: string
      title: Standard error response (RFC 7807 problem report)
      type: object
    tenant_id:
      description: >
        The id of the tenant containing the resource. This is relevant for
        Fintechs that have multiple workspaces.
      example: abcdef_ghijkl
      type: string
  responses:
    bad_request:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: BadRequest
    unauthorized:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: Unauthorized
    forbidden:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: Forbidden error
    unprocessable_entity:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: Unprocessable entity request response
    internal_server_error:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: Internal server error
  securitySchemes:
    bearerAuth:
      bearerFormat: api_key
      scheme: bearer
      type: http

````