Currency Custom Field

Create currency fields to track monetary values with proper formatting and validation


Currency custom fields allow you to store and manage monetary values with associated currency codes. The field supports 72 different currencies including major fiat currencies and cryptocurrencies, with automatic formatting and optional min/max constraints.

Basic Example

Create a simple currency field:

mutation CreateCurrencyField {
  createCustomField(input: {
    name: "Budget"
    type: CURRENCY
    projectId: "proj_123"
    currency: "USD"
  }) {
    id
    name
    type
    currency
  }
}

Advanced Example

Create a currency field with validation constraints:

mutation CreateConstrainedCurrencyField {
  createCustomField(input: {
    name: "Deal Value"
    type: CURRENCY
    projectId: "proj_123"
    currency: "EUR"
    min: 0
    max: 1000000
    description: "Estimated deal value in euros"
    isActive: true
  }) {
    id
    name
    type
    currency
    min
    max
    description
  }
}

Input Parameters

CreateCustomFieldInput

ParameterTypeRequiredDescription
nameString!✅ YesDisplay name of the currency field
typeCustomFieldType!✅ YesMust be CURRENCY
currencyStringNoDefault currency code (3-letter ISO code)
minFloatNoMinimum allowed value (stored but not enforced on updates)
maxFloatNoMaximum allowed value (stored but not enforced on updates)
descriptionStringNoHelp text shown to users

Note: The project context is automatically determined from your authentication. You must have access to the project where you’re creating the field.

Setting Currency Values

To set or update a currency value on a record:

mutation SetCurrencyValue {
  setTodoCustomField(input: {
    todoId: "todo_123"
    customFieldId: "field_456"
    number: 1500.50
    currency: "USD"
  })
}

SetTodoCustomFieldInput Parameters

ParameterTypeRequiredDescription
todoIdString!✅ YesID of the record to update
customFieldIdString!✅ YesID of the currency custom field
numberFloat!✅ YesThe monetary amount
currencyString!✅ Yes3-letter currency code

Creating Records with Currency Values

When creating a new record with currency values:

mutation CreateRecordWithCurrency {
  createTodo(input: {
    title: "Q4 Marketing Campaign"
    todoListId: "list_123"
    customFields: [{
      customFieldId: "currency_field_id"
      value: "25000.00"
      currency: "GBP"
    }]
  }) {
    id
    title
    customFields {
      id
      customField {
        name
        type
      }
      number
      currency
    }
  }
}

Input Format for Create

When creating records, currency values are passed differently:

ParameterTypeDescription
customFieldIdString!ID of the currency field
valueString!Amount as a string (e.g., “1500.50”)
currencyString!3-letter currency code

Supported Currencies

Blue supports 72 currencies including 70 fiat currencies and 2 cryptocurrencies:

Fiat Currencies

Americas

CurrencyCodeName
US DollarUSDUS Dollar
Canadian DollarCADCanadian Dollar
Mexican PesoMXNMexican Peso
Brazilian RealBRLBrazilian Real
Argentine PesoARSArgentine Peso
Chilean PesoCLPChilean Peso
Colombian PesoCOPColombian Peso
Peruvian SolPENPeruvian Sol
Uruguayan PesoUYUUruguayan Peso
Venezuelan BolívarVESVenezuelan Bolívar Soberano
Bolivian BolivianoBOBBolivian Boliviano
Costa Rican ColónCRCCosta Rican Colón
Dominican PesoDOPDominican Peso
Guatemalan QuetzalGTQGuatemalan Quetzal
Jamaican DollarJMDJamaican Dollar

Europe

CurrencyCodeName
EuroEUREuro
British PoundGBPPound Sterling
Swiss FrancCHFSwiss Franc
Swedish KronaSEKSwedish Krona
Norwegian KroneNOKNorwegian Krone
Danish KroneDKKDanish Krone
Polish ZłotyPLNPolish Złoty
Czech KorunaCZKCzech Koruna
Hungarian ForintHUFHungarian Forint
Romanian LeuRONRomanian Leu
Bulgarian LevBGNBulgarian Lev
Turkish LiraTRYTurkish Lira
Ukrainian HryvniaUAHUkrainian Hryvnia
Russian RubleRUBRussian Ruble
Georgian LariGELGeorgian Lari
Icelandic krónaISKIcelandic króna
Bosnia-Herzegovina MarkBAMBosnia-Herzegovina Convertible Mark

Asia-Pacific

CurrencyCodeName
Japanese YenJPYYen
Chinese YuanCNYYuan
Hong Kong DollarHKDHong Kong Dollar
Singapore DollarSGDSingapore Dollar
Australian DollarAUDAustralian Dollar
New Zealand DollarNZDNew Zealand Dollar
South Korean WonKRWSouth Korean Won
Indian RupeeINRIndian Rupee
Indonesian RupiahIDRIndonesian Rupiah
Thai BahtTHBThai Baht
Malaysian RinggitMYRMalaysian Ringgit
Philippine PesoPHPPhilippine Peso
Vietnamese DongVNDVietnamese Dong
Taiwanese DollarTWDNew Taiwan Dollar
Pakistani RupeePKRPakistani Rupee
Sri Lankan RupeeLKRSri Lankan Rupee
Cambodian RielKHRCambodian Riel
Kazakhstani TengeKZTKazakhstani Tenge

Middle East & Africa

CurrencyCodeName
UAE DirhamAEDUAE Dirham
Saudi RiyalSARSaudi Riyal
Kuwaiti DinarKWDKuwaiti Dinar
Bahraini DinarBHDBahraini Dinar
Qatari RiyalQARQatari Riyal
Israeli ShekelILSIsraeli New Shekel
Egyptian PoundEGPEgyptian Pound
Moroccan DirhamMADMoroccan Dirham
Tunisian DinarTNDTunisian Dinar
South African RandZARSouth African Rand
Kenyan ShillingKESKenyan Shilling
Nigerian NairaNGNNigerian Naira
Ghanaian CediGHSGhanaian Cedi
Zambian KwachaZMWZambian Kwacha
Malagasy AriaryMGAMalagasy Ariary

Cryptocurrencies

CurrencyCode
BitcoinBTC
EthereumETH

Response Fields

TodoCustomField Response

FieldTypeDescription
idString!Unique identifier for the field value
customFieldCustomField!The custom field definition
numberFloatThe monetary amount
currencyStringThe 3-letter currency code
todoTodo!The record this value belongs to
createdAtDateTime!When the value was created
updatedAtDateTime!When the value was last modified

Currency Formatting

The system automatically formats currency values based on locale:

  • Symbol placement: Correctly positions currency symbols (before/after)
  • Decimal separators: Uses locale-specific separators (. or ,)
  • Thousand separators: Applies appropriate grouping
  • Decimal places: Shows 0-2 decimal places based on the amount
  • Special handling: USD/CAD show currency code prefix for clarity

Formatting Examples

ValueCurrencyDisplay
1500.50USDUSD $1,500.50
1500.50EUR€1.500,50
1500JPY¥1,500
1500.99GBP£1,500.99

Validation

Amount Validation

  • Must be a valid number
  • Min/max constraints are stored with the field definition but not enforced during value updates
  • Supports up to 2 decimal places for display (full precision stored internally)

Currency Code Validation

  • Must be one of the 72 supported currency codes
  • Case-sensitive (use uppercase)
  • Invalid codes return an error

Integration Features

Formulas

Currency fields can be used in FORMULA custom fields for calculations:

  • Sum multiple currency fields
  • Calculate percentages
  • Perform arithmetic operations

Currency Conversion

Use CURRENCY_CONVERSION fields to automatically convert between currencies (see Currency Conversion Fields)

Automations

Currency values can trigger automations based on:

  • Amount thresholds
  • Currency type
  • Value changes

Required Permissions

ActionRequired Permission
Create currency fieldMust be a member of the project (any role)
Update currency fieldMust be a member of the project (any role)
Set currency valueMust have edit permissions based on project role
View currency valueStandard record view permissions

Note: While any project member can create custom fields, the ability to set values depends on role-based permissions configured for each field.

Error Responses

Invalid Currency Value

{
  "errors": [{
    "message": "Unable to parse custom field value.",
    "extensions": {
      "code": "CUSTOM_FIELD_VALUE_PARSE_ERROR"
    }
  }]
}

This error occurs when:

  • The currency code is not one of the 72 supported codes
  • The number format is invalid
  • The value cannot be parsed correctly

Custom Field Not Found

{
  "errors": [{
    "message": "Custom field was not found.",
    "extensions": {
      "code": "CUSTOM_FIELD_NOT_FOUND"
    }
  }]
}

Best Practices

Currency Selection

  • Set a default currency that matches your primary market
  • Use ISO 4217 currency codes consistently
  • Consider user location when choosing defaults

Value Constraints

  • Set reasonable min/max values to prevent data entry errors
  • Use 0 as minimum for fields that shouldn’t be negative
  • Consider your use case when setting maximums

Multi-Currency Projects

  • Use consistent base currency for reporting
  • Implement CURRENCY_CONVERSION fields for automatic conversion
  • Document which currency should be used for each field

Common Use Cases

  1. Project Budgeting

    • Project budget tracking
    • Cost estimates
    • Expense tracking
  2. Sales & Deals

    • Deal values
    • Contract amounts
    • Revenue tracking
  3. Financial Planning

    • Investment amounts
    • Funding rounds
    • Financial targets
  4. International Business

    • Multi-currency pricing
    • Foreign exchange tracking
    • Cross-border transactions

Limitations

  • Maximum 2 decimal places for display (though more precision is stored)
  • No built-in currency conversion in standard CURRENCY fields
  • Cannot mix currencies in a single field value
  • No automatic exchange rate updates (use CURRENCY_CONVERSION for this)
  • Currency symbols are not customizable