# RecurrenceTransaction

Type: object

Schema: [RecurrenceTransaction](https://sourcey-firefly.pages.dev/api/models/recurrencetransaction/index.md)

- `id` (optional)
  Type: string, string
  
  Example:
  
  ```json
  "ID of the recurring transaction. Not to be confused with the ID of the recurrence itself."
  ```

- `description` (required)
  Type: string, string
  
  Example:
  
  ```json
  "Rent for the current month"
  ```

- `object_has_currency_setting` (optional)
  Type: boolean
  
  Indicates whether the object has a currency setting. If false, the object uses the administration's primary currency.
  
  readOnly: true
  
  Example:
  
  ```json
  true
  ```

- `currency_id` (optional)
  Type: string, string
  
  The currency ID of the currency associated with this object.
  
  Example:
  
  ```json
  "5"
  ```

- `currency_name` (optional)
  Type: string, string
  
  The currency name of the currency associated with this object.
  
  Example:
  
  ```json
  "Euro"
  ```

- `currency_code` (optional)
  Type: string, string
  
  The currency code of the currency associated with this object.
  
  Example:
  
  ```json
  "EUR"
  ```

- `currency_symbol` (optional)
  Type: string, string
  
  readOnly: true
  
  Example:
  
  ```json
  "$"
  ```

- `currency_decimal_places` (optional)
  Type: integer, int32
  
  readOnly: true
  
  Example:
  
  ```json
  2
  ```

- `primary_currency_id` (optional)
  Type: string, string
  
  The currency ID of the administration's primary currency.
  
  readOnly: true
  
  Example:
  
  ```json
  "5"
  ```

- `primary_currency_name` (optional)
  Type: string, string
  
  The currency name of the administration's primary currency.
  
  readOnly: true
  
  Example:
  
  ```json
  "Euro"
  ```

- `primary_currency_code` (optional)
  Type: string, string
  
  The currency code of the administration's primary currency.
  
  readOnly: true
  
  Example:
  
  ```json
  "EUR"
  ```

- `primary_currency_symbol` (optional)
  Type: string, string
  
  The currency symbol of the administration's primary currency.
  
  readOnly: true
  
  Example:
  
  ```json
  "$"
  ```

- `primary_currency_decimal_places` (optional)
  Type: integer, int32
  
  The currency decimal places of the administration's primary currency.
  
  readOnly: true
  
  Example:
  
  ```json
  2
  ```

- `amount` (required)
  Type: string, amount
  
  Amount of the transaction.
  
  Example:
  
  ```json
  "123.45"
  ```

- `pc_amount` (optional)
  Type: string, amount
  
  Amount of the transaction in primary currency.
  
  Example:
  
  ```json
  "123.45"
  ```

- `foreign_amount` (optional)
  Type: string, amount; nullable
  
  Foreign amount of the transaction.
  
  Example:
  
  ```json
  "123.45"
  ```

- `pc_foreign_amount` (optional)
  Type: string, amount; nullable
  
  Foreign amount of the transaction.
  
  Example:
  
  ```json
  "123.45"
  ```

- `foreign_currency_id` (optional)
  Type: string, string; nullable
  
  Example:
  
  ```json
  "17"
  ```

- `foreign_currency_name` (optional)
  Type: string, string; nullable
  
  Example:
  
  ```json
  "British Pound"
  ```

- `foreign_currency_code` (optional)
  Type: string, string; nullable
  
  Example:
  
  ```json
  "GBP"
  ```

- `foreign_currency_symbol` (optional)
  Type: string, string; nullable
  
  readOnly: true
  
  Example:
  
  ```json
  "$"
  ```

- `foreign_currency_decimal_places` (optional)
  Type: integer, int32; nullable
  
  Number of decimals in the currency
  
  readOnly: true
  
  Example:
  
  ```json
  2
  ```

- `budget_id` (optional)
  Type: string, string
  
  The budget ID for this transaction.
  
  Example:
  
  ```json
  "4"
  ```

- `budget_name` (optional)
  Type: string, string; nullable
  
  The name of the budget to be used. If the budget name is unknown, the ID will be used or the value will be ignored.
  
  readOnly: true
  
  Example:
  
  ```json
  "Groceries"
  ```

- `category_id` (optional)
  Type: string, string
  
  Category ID for this transaction.
  
  Example:
  
  ```json
  "211"
  ```

- `category_name` (optional)
  Type: string, string
  
  Category name for this transaction.
  
  Example:
  
  ```json
  "Bills"
  ```

- `source_id` (optional)
  Type: string, string
  
  ID of the source account. Submit either this or source_name.
  
  Example:
  
  ```json
  "913"
  ```

- `source_name` (optional)
  Type: string, string
  
  Name of the source account. Submit either this or source_id.
  
  Example:
  
  ```json
  "Checking account"
  ```

- `source_iban` (optional)
  Type: string, string; nullable
  
  readOnly: true
  
  Example:
  
  ```json
  "NL02ABNA0123456789"
  ```

- `source_type` (optional)
  Reference: [AccountTypeProperty](https://sourcey-firefly.pages.dev/api/models/accounttypeproperty/index.md); Type: string, string
  
  enum: ["Default account","Cash account","Asset account","Expense account","Revenue account","Initial balance account","Beneficiary account","Import account","Reconciliation account","Loan","Debt","Mortgage"]
  
  readOnly: true
  
  Example:
  
  ```json
  "Asset account"
  ```

- `destination_id` (optional)
  Type: string, string
  
  ID of the destination account. Submit either this or destination_name.
  
  Example:
  
  ```json
  "258"
  ```

- `destination_name` (optional)
  Type: string, string
  
  Name of the destination account. Submit either this or destination_id.
  
  Example:
  
  ```json
  "Buy and Large"
  ```

- `destination_iban` (optional)
  Type: string, string; nullable
  
  readOnly: true
  
  Example:
  
  ```json
  "NL02ABNA0123456789"
  ```

- `destination_type` (optional)
  Reference: [AccountTypeProperty](https://sourcey-firefly.pages.dev/api/models/accounttypeproperty/index.md); Type: string, string
  
  enum: ["Default account","Cash account","Asset account","Expense account","Revenue account","Initial balance account","Beneficiary account","Import account","Reconciliation account","Loan","Debt","Mortgage"]
  
  readOnly: true
  
  Example:
  
  ```json
  "Asset account"
  ```

- `tags` (optional)
  Type: array; nullable
  
  Array of tags.
  
  Example:
  
  ```json
  null
  ```
  
  Items:
    Type: string, string
    
    Tag.
    
    Example:
    
    ```json
    "Barbecue preparation"
    ```

- `piggy_bank_id` (optional)
  Type: string, string; nullable
  
  Example:
  
  ```json
  "123"
  ```

- `piggy_bank_name` (optional)
  Type: string, string; nullable

- `subscription_id` (optional)
  Type: string, string; nullable
  
  Example:
  
  ```json
  "123"
  ```

- `subscription_name` (optional)
  Type: string, string; nullable