_Docs/
Get StartedModulesPlatformDeployCookbookChangelogReference
_Deploy
  • Deployment Overview
    • Overview
    • Requirements
    • Demo
      • All-in-one Demo Chart
    • Installation
      • Operator Setup
      • Control Plane SetupEE
    • Infrastructure Services
      • PostgreSQL
      • Message Broker
      • Temporal
    • Module Configuration
      • Stack Configuration
      • Gateway Module
      • Ledger Module
      • Payments Module
      • Auth ModuleEE
      • Orchestration ModuleEE
      • Reconciliation ModuleEE
      • Wallets ModuleEE
      • Webhooks ModuleEE
    • Configuration Reference
      • Operator settings reference
      • API Reference
    • Backups management
    • Troubleshooting
    • Configure OpenTelemetry
    • Traces
    • Metrics
    • Upgrade from the operator
    • Database update
  1. Deploy
  2. Self-Hosted
  3. Module Configuration
  4. Gateway Module
Deploy

Gateway Module

This page requires self-hosted edition.
Deployment

The Gateway's role is to centralize all incoming connections to your stack. If you need to expose your Stack to the outside, it is necessary to route all the traffic through it.

Gateway Object#

You can find all the available parameters in the comprehensive CRD documentation.

YAML
apiVersion: formance.com/v1beta1
kind: Gateway
metadata:
  name: formance-dev
spec:
  stack: formance-dev

Expose the Gateway with Ingress#

To expose the Gateway to the outside, we will use an Ingress object. The Ingress will be the entry point to your stack.

YAML
apiVersion: formance.com/v1beta1
kind: Gateway
metadata:
  name: formance-dev
spec:
  stack: formance-dev
  ingress:
    host: YOUR_DOMAIN
    scheme: http|https

Serving on Multiple Hosts#

You can serve a stack on multiple hostnames by adding the hosts field alongside host. The ingress will contain a rule for each host, and TLS will cover all of them.

YAML
apiVersion: formance.com/v1beta1
kind: Gateway
metadata:
  name: formance-dev
spec:
  stack: formance-dev
  ingress:
    host: app.example.com
    hosts:
      - app.example.org
      - app.example.net
    scheme: https

Additional hosts can also be provided via a Settings resource using the gateway.ingress.hosts key. Hosts from the setting are merged with those defined on the Gateway CRD. The {stack} placeholder is replaced with the stack name.

YAML
apiVersion: formance.com/v1beta1
kind: Settings
metadata:
  name: gateway-extra-hosts
spec:
  key: gateway.ingress.hosts
  stacks:
    - '*'
  value: "{stack}.example.com, {stack}.example.org"
Stack ConfigurationLedger Module
On This Page
  • Gateway Object
  • Expose the Gateway with Ingress
  • Serving on Multiple Hosts