> ## 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.

# Create EFT Canada Transfer

> Create a new EFT Canada transfer
> 🚧 Beta > This is a Beta endpoint. Feedback from the community is welcome. We may make breaking changes.




## OpenAPI

````yaml openapi.json post /eft_ca
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.207.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:
  /eft_ca:
    summary: EFT_CA Transfers
    description: >
      The EFT Canada API allows you to create, retrieve, and update EFT Canada
      transfers.
    post:
      tags:
        - EFT Canada (Beta)
      summary: Create EFT Canada Transfer
      description: >
        Create a new EFT Canada transfer

        > 🚧 Beta > This is a Beta endpoint. Feedback from the community is
        welcome. We may make breaking changes.
      operationId: createEFTCATransfer
      parameters:
        - $ref: '#/components/parameters/idempotency_key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/eft_ca_create'
        description: The EFT Canada transfer to be created.
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/eft_ca_response'
          description: Successful creation of an EFT Canada transfer
        '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:
    idempotency_key:
      description: >-
        An idempotency key is an arbitrary unique value generated by client to
        detect subsequent retries of the same request. It is recommended that a
        UUID or a similar random identifier be used as an idempotency key. A
        different key must be used for each request, unless it is a retry.
      in: header
      name: Idempotency-Key
      schema:
        example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
        type: string
  schemas:
    eft_ca_create:
      allOf:
        - $ref: '#/components/schemas/eft_ca_base'
        - properties:
            destination_account_id:
              description: >
                The UUID of the Synctera external account resource that is the
                destination of the transfer. This external account represents
                the account on the destination bank's platform.
              example: fccb4a46-1261-4e91-b622-73b5b946183d
              format: uuid
              type: string
            destination_account_owner_name:
              description: >
                The official name of the account owner of the destination
                account.
              example: Jane Joe
              type: string
            effective_date:
              description: The effective date of the transaction once it gets posted
              example: '2022-03-18'
              format: date
              type: string
            is_same_day:
              description: >-
                Send the same day (use only is_same_day without specific
                effective_date).
              example: true
              type: boolean
            originating_account_id:
              description: >
                The UUID of the Synctera account resource originating the
                transfer.
              example: b01db9c7-78f2-4a99-8aca-1231d32f9b96
              format: uuid
              type: string
            originating_account_owner_name:
              description: >
                The official name of the account owner of the originating
                account. This must exactly match one of the account_owner_names
                in the destination external account.
              example: John Doe
              format: string
              type: string
          required:
            - destination_account_id
            - destination_account_owner_name
            - originating_account_id
            - originating_account_owner_name
      description: Properties for creating a transfer
      title: Electronic Funds Transfer Post
      type: object
    eft_ca_response:
      allOf:
        - $ref: '#/components/schemas/eft_ca_base'
        - properties:
            destination_account_id:
              description: >
                The UUID of the Synctera account that is the destination of the
                transfer. For a transfer originated by the Synctera platform,
                this will be an external account resource, while for a transfer
                originated by the external account, this account will be an
                account resource.
              example: fccb4a46-1261-4e91-b622-73b5b946183d
              format: uuid
              type: string
            destination_account_number:
              description: The account number of the destination account.
              example: 1344012344
              format: string
              type: string
            destination_account_owner_name:
              description: The account owner name of the destination account.
              type: string
            effective_date:
              description: The effective date of the transaction once it gets posted
              example: '2022-03-18'
              format: date
              type: string
            failed:
              description: Whether the transfer failed or not.
              example: false
              type: boolean
            history:
              items:
                $ref: '#/components/schemas/action'
              type: array
            id:
              description: ID of the transfer
              format: uuid
              type: string
            is_same_day:
              description: >-
                Send the same day (use only is_same_day without specific
                effective_date).
              example: true
              type: boolean
            network_status:
              description: The network status of the transfer.
              enum:
                - PENDING
                - POSTED
                - RETURNED
                - REVERSED
              example: PENDING
              type: string
            originating_account_id:
              description: >
                The UUID of the Synctera account that is the origination of the
                transfer. For a transfer originated by the Synctera platform,
                this will be an account resource, while for a transfer
                originated by the external account, this will be an external
                account resource.
              example: b01db9c7-78f2-4a99-8aca-1231d32f9b96
              format: uuid
              type: string
            originating_account_number:
              description: The account number of the originating account.
              example: 1961234745
              format: string
              type: string
            originating_account_owner_name:
              description: The account owner name of the origination account.
              type: string
            posting_date:
              description: The posting date of the transaction once it gets posted
              example: '2022-03-18'
              format: date
              type: string
            reference_id:
              description: The reference id of the transfer.
              example: 123456789
              type: string
            status:
              $ref: '#/components/schemas/eft_ca_status'
            subtype:
              description: The subtype of the transfer
              enum:
                - BULK_OUTGOING_CREDIT
                - BULK_OUTGOING_CREDIT_RETURN
                - BULK_OUTGOING_CREDIT_RETURN_REVERSAL
                - BULK_OUTGOING_CREDIT_REVERSAL
                - BULK_OUTGOING_DEBIT
                - BULK_OUTGOING_DEBIT_RETURN
                - BULK_OUTGOING_DEBIT_RETURN_REVERSAL
                - BULK_OUTGOING_DEBIT_REVERSAL
                - INCOMING_CREDIT
                - INCOMING_CREDIT_RETURN
                - INCOMING_CREDIT_RETURN_REVERSAL
                - INCOMING_CREDIT_REVERSAL
                - INCOMING_DEBIT
                - INCOMING_DEBIT_RETURN
                - INCOMING_DEBIT_RETURN_REVERSAL
                - INCOMING_DEBIT_REVERSAL
                - OUTGOING_CREDIT
                - OUTGOING_CREDIT_RETURN
                - OUTGOING_CREDIT_RETURN_REVERSAL
                - OUTGOING_CREDIT_REVERSAL
                - OUTGOING_DEBIT
                - OUTGOING_DEBIT_RETURN
                - OUTGOING_DEBIT_RETURN_REVERSAL
                - OUTGOING_DEBIT_REVERSAL
              example: INCOMING_CREDIT
              type: string
            tenant_id:
              $ref: '#/components/schemas/tenant_id'
            transaction_id:
              description: The related transaction id of the transfer.
              example: 45b5246f-ad97-4629-9aac-465b74a05505
              format: uuid
              type: string
          required:
            - destination_account_id
            - destination_account_number
            - destination_account_owner_name
            - effective_date
            - id
            - is_same_day
            - originating_account_id
            - originating_account_number
            - originating_account_owner_name
            - reference_id
            - status
            - subtype
            - tenant_id
      description: EFT transfer specific to Canada
      title: Electronic Funds Transfer Response
      type: object
    eft_ca_base:
      description: EFT transfer specific to Canada
      properties:
        amount:
          description: Transfer amount in cents
          example: 10000
          format: int64
          minimum: 1
          type: integer
        customer_id:
          description: >
            The UUID of the Synctera customer resource that is the originator of
            the transfer.
          example: 46fec39e-e776-4571-bf90-d0e1d15172fe
          format: uuid
          type: string
        dc_sign:
          description: Debit or credit sign
          enum:
            - CREDIT
            - DEBIT
          example: DEBIT
          type: string
        source_data:
          description: Additional information to be added to the transfer
          type: object
        transaction_code:
          description: >
            The three digit transaction code that identifies the type of
            transaction. More information can be found here:
            https://www.payments.ca/sites/default/files/standard007eng.pdf.
          example: 304
          maximum: 3
          minimum: 3
          type: string
      required:
        - amount
        - customer_id
        - dc_sign
        - transaction_code
      title: Electronic Funds Transfer
      type: object
    action:
      properties:
        data:
          type: object
        message:
          type: string
        timestamp:
          format: date-time
      required:
        - data
        - message
        - timestamp
      type: object
    eft_ca_status:
      description: >
        The status of the transfer in the Synctera platform. This is
        automatically set upon the creation of a transfer. To cancel a transfer,
        the current status must be 'INITIATED' or 'PENDING' and the request
        status set to 'CANCELLED'. To trigger a return, the current status must
        be 'POSTED' and the returned status will be set to 'RETURNED' if
        successful.
      enum:
        - CANCELLED
        - EXPIRED
        - INITIATED
        - IN_SUSPENSE
        - PENDING
        - POSTED
      example: POSTED
      type: string
    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
    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
  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

````