Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.y.uno/llms.txt

Use this file to discover all available pages before exploring further.

A condition matches against an attribute of the incoming payment.
{
  "condition_type": "<ENUM>",
  "conditional":    "<OPERATOR>",
  "values":         ["..."],

  // Required only on specific condition_types — see "Special cases" below
  "key":      "<string>",   // METADATA only
  "currency": "<ISO 4217>"  // AMOUNT only
}
Conditions inside the same condition_sets[].conditions[] are combined with logical AND. For OR semantics, split into multiple condition sets ordered by sort_number.

condition_type catalog

condition_typeMatches againstValue shapeApplicable conditionalsCard-only?
COUNTRYBuyer’s billing countryISO 3166-1 alpha-2 (e.g. "US", "BR")EQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFno
ISSUER_COUNTRYCard-issuing bank’s countryISO 3166-1 alpha-2EQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFyes
CURRENCYTransaction currencyISO 4217 (e.g. "USD")EQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFno
AMOUNTTransaction amountDecimal as string (e.g. "100.00"); requires sibling currencyEQUAL, NOT_EQUAL, GREATER_THAN, LESS_THAN, BETWEEN, NOT_BETWEENno
CARD_TYPECard funding sourceCREDIT, DEBIT, PREPAIDEQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFyes
CARD_BRANDCard schemeVISA, MASTERCARD, AMEX, ELO, HIPERCARD, DINERS, DISCOVER, JCB, UNIONPAY, MAESTRO, CBEQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFyes
CARD_BINFirst 6–8 digits of the PAN6–8 digit numeric stringEQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFyes
INSTALLMENTSNumber of installments requestedInteger as stringEQUAL, NOT_EQUAL, GREATER_THAN, LESS_THAN, BETWEEN, NOT_BETWEENno
TRANSACTION_TYPEPayment intent typePURCHASE, AUTHORIZATION, RECURRING, MIT, CITEQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFno
METADATApayment.metadata[<key>]Any string the merchant sets; requires sibling keyEQUAL, NOT_EQUAL, ONE_OF, NOT_ONE_OFno

conditional operators

OperatorCardinality of values[]Semantics
EQUALexactly 1attribute == values[0]
NOT_EQUALexactly 1attribute != values[0]
ONE_OF≥ 1attribute ∈ values
NOT_ONE_OF≥ 1attribute ∉ values
GREATER_THANexactly 1numeric attribute > values[0]
LESS_THANexactly 1numeric attribute < values[0]
BETWEENexactly 2inclusive on both ends
NOT_BETWEENexactly 2inverse of BETWEEN

Special cases

  • AMOUNT requires currency. Comparisons are FX-naive; only payments whose currency matches the rule’s currency are evaluated.
  • METADATA requires key. Compares payment.metadata[key]. If the key is absent on the payment, the condition does not match — absence is not equality.
  • Card-only condition types (ISSUER_COUNTRY, CARD_TYPE, CARD_BRAND, CARD_BIN) are only valid when payment_method = "CARD".
  • Numeric values are submitted as strings to match the values: string[] schema. Yuno parses them based on the condition_type.