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

# Movement object

## The Movement object

A `Movement` represents a single transaction in a bank account, such as a transfer, a check, or another debit or credit. It is retrieved from an institution for an account under a `Link` and is returned when you list or fetch movements.

```json Movement Object theme={null}
{
  "id": "mov_BO381oEATXonG6bj",
  "object": "movement",
  "amount": 59400,
  "comment": "Pago factura 198",
  "currency": "CLP",
  "description": "Traspaso de:Fintoc SpA",
  "pending": false,
  "post_date": "2020-04-17T00:00:00.000Z",
  "recipient_account": null,
  "reference_id": "123740123",
  "sender_account": {
    "holder_id": "555555555",
    "holder_name": "Comercial y Producción SpA",
    "institution": {
      "id": "cl_banco_de_chile",
      "country": "cl",
      "name": "Banco de Chile"
    },
    "number": "1530108000"
  },
  "status": "confirmed",
  "transaction_date": "2020-04-16T11:31:12.000Z",
  "type": "transfer"
}
```

| Attribute           | Type      | Description                                                                                                                                                                                                                                                                                                                     |
| :------------------ | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id`                | `string`  | Unique identifier for the Movement                                                                                                                                                                                                                                                                                              |
| `object`            | `string`  | Identifier for the type of object. Its value for `Movements` will always correspond to `movement`                                                                                                                                                                                                                               |
| `amount`            | `integer` | Movement amount in the smallest currency unit. Positive values increase the account balance, and negative values decrease it.                                                                                                                                                                                                   |
| `comment`           | `string`  | If the movement is a transfer, this attribute indicates the transfer comment. It can be `null`                                                                                                                                                                                                                                  |
| `currency`          | `string`  | [Currency ISO code](https://www.iso.org/iso-4217-currency-codes.html)                                                                                                                                                                                                                                                           |
| `description`       | `string`  | Description for the movement, retrieved from the institution                                                                                                                                                                                                                                                                    |
| `pending`           | `boolean` | If the movement is a check, this field indicates whether confirmation by the bank is pending. If the movement isn't a check, this attribute is `false`                                                                                                                                                                          |
| `post_date`         | `string`  | Movement's accounting date, using ISO 8601                                                                                                                                                                                                                                                                                      |
| `recipient_account` | `object`  | Account that received the transfer. This field is `null` when the movement is not a transfer. See the Transfer Account object table below for details.                                                                                                                                                                          |
| `reference_id`      | `string`  | Movement's identifier retrieved from the institution. It can be `null`. If the Movement is a transfer, it represents the operation number or transaction `id`. Also, if the transaction `id`is not given by the bank, sometimes we will use the document number. If the Movement is a check, it represents the document number. |
| `sender_account`    | `object`  | Account that made the transfer. This field is `null` when the movement is not a transfer. See the Transfer Account object table below for details.                                                                                                                                                                              |
| `status`            | `string`  | Shows the status of the movement. Its values can be `confirmed`, `processing`, `reversed` and `duplicated`. The `pending` status is transitory until a movement is defined with other status.                                                                                                                                   |
| `transaction_date`  | `string`  | Date and time in which the Movement was made, using ISO 8601. It can be `null`when the movement is not a transfer                                                                                                                                                                                                               |
| `type`              | `string`  | Type of movement. Its values can be `transfer`, `check` or `other`                                                                                                                                                                                                                                                              |

<Info>
  **Post date and transaction date**

  As you probably noticed, each movement includes two different dates: a `post_date` and a `transaction_date` 🧐. This is because the bank uses accounting dates internally. Some bank even create movements in the future. For example, if you make a transaction on a Saturday, this transaction will appear to have Monday as its date. In this example, Saturday corresponds to the `transaction_date`, and Monday corresponds to the `post_date`.
</Info>

<Info>
  **Pending checks**

  Checks take some time to be confirmed by the bank. This can take as long as 48 business hours. Pending checks can be reversed for several reasons (for example, lack of funds). Fintoc marks pending checks with the `pending` flag so you know that the movement isn't yet confirmed by the bank.
</Info>

### Movement Status

The status field indicates the current state of a movement. Movements are initially confirmed, but may transition to other statuses as bank data is processed and validated.

| Status       | Description                                                                                                                                       |
| :----------- | :------------------------------------------------------------------------------------------------------------------------------------------------ |
| `confirmed`  | The movement has been confirmed and is considered final. This is the default status for all movements.                                            |
| `processing` | The movement is being evaluated and may change to `confirmed` or `reversed`. This is a transitory status that typically resolves within 12 hours. |
| `reversed`   | The movement was reversed by the bank. The original transaction has been undone.                                                                  |

### The Transfer Account object (within the Movement object)

The Transfer Account object identifies the account on the other side of a transfer, and it appears in the `sender_account` and `recipient_account` fields of a `Movement`.

| Attribute     | Type     | Description                                                                   |
| :------------ | :------- | :---------------------------------------------------------------------------- |
| `holder_id`   | `string` | Account owner's tax ID. In Chile, this value is a Chilean tax ID (RUT).       |
| `holder_name` | `string` | Name of the owner of the account                                              |
| `institution` | `object` | Institution to which the account belongs. It can be `null`                    |
| `number`      | `string` | Account number. Does not include hyphens nor prefixed zeros. It can be `null` |

<Warning>
  **Transfer data problems**

  Transfer data can sometimes be `null` or wrong. This can be due to the movement not being a transfer or because of matching problems with the banks statements. Always double check the transfer data before reconciliating your movements. On the other hand, movement data is **always** reliable. The transfer data can change up to 5 days after the movement was created.
</Warning>
