---
title: "Send transfers"
method: POST
path: "/transfers"
tags: ["Transactions & Responses"]
---

# Send transfers

`POST /transfers`

Sends a new transfer message request to Switch, the transfer will be processed asynchronously and you will receive the status of the transaction in your webhook (https://docs.shinkansen.tech/reference/post-response-webook_transfers).

## Request body

- OriginalTransferMessage — Transfer message, as sent originally by the financial institution originating the transfer
  - `document` object, required — Envelops the message content
    - `header` TransferMessageHeader, required — Header for sent transfer/reversal/response messages. The same header is used for all three types of messages.
      - `message_id` string, uuid, required — UUID Unique identifier of the message. Generated by the participant initiating the message.
      - `creation_date` string, date-time, required — Creation date of the message in ISO 8601 format. Generated by the participant initiating the message.
      - `sender` string, required — The participant sender of this message. This is your internal identifier for Shinkansen Eco-System.
      - `receiver` string, required — The Gateway receiver of this message. This is always Shinkansen.
    - `transactions` OriginalTransferTransaction[], required — One or more transfer transactions.
      - `transaction_type` string, required — Transaction type. Always should be `"transfer"` for this type of transaction.
      - `transaction_id` string, uuid, required — UUID Unique identifier of the transaction. Generated by sender. UUID format is required, otherwise the message will be rejected.
      - `currency` string, required — Currency ISO 4217 code (e.g: `"CLP"`)
      - `amount` string, required — Amount, ISO20022-compatible: Up to 18 integer digits, optional decimal separator ".", up to 5 fraction digits (also optional). By using a string we avoid issues with floating-point arithmetic as well as integer type limits on some JSON implementations.
      - `reference` string, required — Transaction reference. Length and allowed characters can be limited by the underlying network.
      - `debtor` TransferDebtor, required — The origin of the funds movement
        - `name` string, required — Debtor name. Must refer to the legal name of the participant sending the payout message.
        - `identification` object, required — The identifier for a legal or natural person in Chile CLID (RUT)
          - `id_schema` string, required — Identification schema. See https://docs.shinkansen.tech/docs/tipos-de-identificacion
          - `id` string, required — The actual identification "number" (but not always just numbers). Unique identifier for legal entities and natural persons in Chile CLID (RUT). You must use the XXXXXXXX-X format: `^\d{8}[-][0-9kK]$`. See https://docs.shinkansen.tech/docs/tipos-de-identificacion for more details.
        - `financial_institution` string, required — Financial institution towards where the funds will move.
        - `account` string, required — Bank account number of the debtor at the referenced bank or financial institution.
        - `account_type` string, required — Account type. See https://docs.shinkansen.tech/docs/tipos-de-cuentas for possible values.
        - `customer_type` 'individual' | 'legal_entity' — Entity type (opcional): * `individual`: Persona natural * `legal_entity`: Persona jurídica
        - `email` string, email — E-mail of the legal or individual person sending the funds (some operators will send email notifications to the sender as well as the receiver).
      - `creditor` TransferCreditor, required — The destination of the funds movement
        - `name` string, required — Legal name of the legal or individual person receiving the funds.
        - `identification` object, required — The identifier for a legal or natural person in Chile CLID (RUT)
          - `id_schema` string, required — Identification schema. See https://docs.shinkansen.tech/docs/tipos-de-identificacion
          - `id` string, required — The actual identification "number" (but not always just numbers). Unique identifier for legal entities and natural persons in Chile CLID (RUT). You must use the XXXXXXXX-X format: `^\d{8}[-][0-9kK]$`. See https://docs.shinkansen.tech/docs/tipos-de-identificacion for more details.
        - `financial_institution` string, required — Financial institution towards where the funds will move.
        - `account` string, required — Bank account number of legal or individual person receiving the funds.
        - `account_type` string, required — Account type. See https://docs.shinkansen.tech/docs/tipos-de-cuentas for possible values.
        - `email` string, email — E-mail of the legal or individual person receiving the funds (for email notifications).
      - `network_metadata` TransferNetworkMetadata — Metadata with network-specific data for the transaction
        - `originator_ipv4` string, ipv4 — Public IPv4 address of the end-user who is originating the transaction. This is the address of the device (e.g., mobile phone or web browser) the user is utilizing to authorize the payment. This field is mandatory and is used for security monitoring, fraud prevention, and compliance with Anti-Money Laundering (AML) regulations.
        - `debtor_has_made_transfers_to_creditor_before` boolean — Indicates if the debtor has made transfers to the creditor before. Useful for network anti-fraud systems.
        - `operation_number` string — Operation number of the transaction. Useful for network tracking and tracing.
        - `is_batch_transfer` boolean — Indicates if the transaction is part of a batch transfer. Useful for network priorization.
        - `customer_segment_code` string — Up to 3 characters identifying the segment of the customer, defined by the originating financial institution.
        - `filler` string — Filler field to complete the message. This field is reserved for future use and must be left empty and can be used to store additional information that is not yet defined.

## Response `200`

Message correctly received and accepted to be processed by Shinkansen Gateway, this does NOT mean the transaction was succesful. You receive asynchronously the status of the transaction in your webhook (https://docs.shinkansen.tech/reference/post-response-webook_transfers).

- StatusAcceptedTransfer — Status accepted transfer HTTP 200
  - `shinkansen_message_id` string, uuid, required — Message ID generated by Shinkansen receiving the transfer
  - `transactions` object[], required — Array of mappings between original transaction_id and shinkansen_transaction_id
    - `transaction_id` string, uuid, required — The transaction_id - Generated by the Participant
    - `shinkansen_transaction_id` string, uuid, required — The original shinkansen_transaction_id - Generated by Shinkansen
    - `tracenumber` string — Network trace number reserved for the transfer (12-digit zero-padded string). Included only when the financial institution has the `return_tracenumber_in_transfer_ack` property enabled; otherwise this field is omitted.

## Other responses

- `400` — Message received but rejected by Shinkansen Gateway due to validation errors
- `401` — Message received but rejected by Shinkansen Gateway due to an unauthorized access to the API Key or the JWS Signature
- `409` — Message received but rejected by Shinkansen Gateway due to a conflict like a duplicate message ID or a duplicate transaction ID

---

[API](https://skmtc.net/shinkansen/apis/payouts-shinkansen-endpoints.md) · [All operations](https://skmtc.net/shinkansen/apis/payouts-shinkansen-endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shinkansen/payouts-shinkansen-endpoints/versions/1e4a6760b7e8/schema)
