Skip to content
innovorder
⌘K

Stored value

Overview & Types

System map · Stored value
Customer
E-Wallet
Transactions

Reference for the integer codes used in transaction types, sources, and payment methods within the E-Wallet ecosystem.

TransactionType

CodeMeaning
1CREDIT (Reload)
2REFUND
3DEBIT
4CANCEL
5DATE_MODIFICATION
6POST_PAYMENT_RESET

TransactionSource

CodeMeaning
1DASHBOARD (Backoffice)
2CEL (Web Ordering)
5POS
6KIOSK
7API / TIME_CHEF_API
8EWALLET_KIOSK

PaymentOrigin

Required when creating a CREDIT transaction (Type 1).

CodeMeaning
1CASH
2CHECK
3OTHER
4CREDIT_CARD_ONLINE (Web/App)
5CREDIT_CARD (Terminal)
6LUNCHEON_VOUCHER

Public Reloader Bootstrap

The e-wallet reloader can obtain the small, safe subset of brand configuration it needs without a bearer token. The endpoint returns the same not-found response for a missing brand and for a brand without an active e-wallet, so callers cannot enumerate e-wallet-enabled brands.

GET/brands/{brandId}/ewallet-reloaderGet Public E-Wallet Reloader Configuration

Returns only the public reloader fields and an allow-listed set of brand options. It does not return the full authenticated brand record.

Parameters

NameTypeRequiredDescription
brandIdintegerYesBrand identifier used by the e-wallet reloader.

Response

json
{
  "status": 200,
  "code": "brand_succeed",
  "message": "You can access to this brand.",
  "data": {
    "brandId": 3325,
    "brandHash": "bb10813b502b",
    "name": "Innovorder Burgers",
    "brandType": "COMMERCIAL_CATERING",
    "currency": "EUR",
    "options": {
      "OPT_IN": {
        "optionId": 11664,
        "nameValue": "OPT_IN",
        "isActivated": true,
        "brandId": 3325,
        "restaurantId": null,
        "created_at": "2026-07-11T09:00:00.000Z",
        "updated_at": "2026-07-11T09:00:00.000Z",
        "deleted_at": null
      }
    }
  }
}
Response Properties

Every field in the example is listed below. Explicit requiredness is shown when the endpoint contract defines it.

PropertyTypeExampleDescription
statusinteger200HTTP status code returned by the API.
codestring"brand_succeed"Machine-readable application code for the result.
messagestring"You can access to this brand."Human-readable result message. Do not use this value for program logic.
dataobject{…}Endpoint-specific response payload.
data.brandIdinteger3325Identifier of the brand.
data.brandHashstring"bb10813b502b"The brand hash value.
data.namestring"Innovorder Burgers"The name value.
data.brandTypestring"COMMERCIAL_CATERING"The brand type value.
data.currencystring"EUR"ISO 4217 currency code.
data.optionsobject{…}Object containing options fields.
data.options.OPT_INobject{…}Object containing opt in fields.
data.options.OPT_IN.optionIdinteger11664Identifier of the associated option.
data.options.OPT_IN.nameValuestring"OPT_IN"The name value value.
data.options.OPT_IN.isActivatedbooleantrueWhether activated is enabled or applies.
data.options.OPT_IN.brandIdinteger3325Identifier of the brand.
data.options.OPT_IN.restaurantIdnullnullIdentifier of the restaurant.
data.options.OPT_IN.created_atstring"2026-07-11T09:00:00.000Z"Timestamp when this resource was created.
data.options.OPT_IN.updated_atstring"2026-07-11T09:00:00.000Z"Timestamp when this resource was last updated.
data.options.OPT_IN.deleted_atnullnullTimestamp when this resource was deleted, or null when it is active.

Reload Provider App Redirect

Open the configured reload partner on the best destination for the caller device. Supported providers are redirected to their iOS app, Android app, or configured web page; unsupported providers return 404.

GET/ewallet/reload/{provider}/appOpen Reload Provider Application

Returns a 302 redirect whose Location header depends on the provider and User-Agent. This endpoint does not return a JSON envelope.

Parameters

NameTypeRequiredDescription
providerstringYesReload provider slug, for example timechef or toqla.

Response

json
HTTP/1.1 302 Found
Location: https://apps.apple.com/fr/app/timechef/id1104882470

Transaction Reasons

Retrieve the active, display-ordered reasons that can explain a manual credit or debit transaction.

GET/transaction_reasonsList Active Transaction Reasons

Returns active reasons ordered by displayOrder. allowedDirection is CREDIT, DEBIT, or BOTH.

Response

json
{
  "status": 200,
  "code": "get_transaction_reasons_succeed",
  "message": "Transaction reasons retrieved successfully.",
  "data": [
    {
      "transactionReasonId": 3,
      "code": "LOYALTY",
      "label": "Loyalty adjustment",
      "allowedDirection": "CREDIT",
      "displayOrder": 3,
      "isActive": true,
      "createdAt": "2026-01-10T09:00:00.000Z",
      "updatedAt": "2026-01-10T09:00:00.000Z"
    }
  ]
}
Response Properties

Every field in the example is listed below. Explicit requiredness is shown when the endpoint contract defines it.

PropertyTypeExampleDescription
statusinteger200HTTP status code returned by the API.
codestring"get_transaction_reasons_succeed"Machine-readable application code for the result.
messagestring"Transaction reasons retrieved successfully."Human-readable result message. Do not use this value for program logic.
dataarray[…]Endpoint-specific response payload.
data[]object{…}Endpoint-specific response payload.
data[].transactionReasonIdinteger3Identifier of the associated transaction reason.
data[].codestring"LOYALTY"Machine-readable application code for the result.
data[].labelstring"Loyalty adjustment"The label value.
data[].allowedDirectionstring"CREDIT"The allowed direction value.
data[].displayOrderinteger3The display order value.
data[].isActivebooleantrueWhether this resource is active.
data[].createdAtstring"2026-01-10T09:00:00.000Z"Timestamp when this resource was created.
data[].updatedAtstring"2026-01-10T09:00:00.000Z"Timestamp when this resource was last updated.