Skip to main content

Overview

Moment enables you to drive payment volume directly via your marketing and customer lifecycle strategies — including EDM, digital advertising, messaging, and more — by enabling you to:
  • Track marketing campaign attributes as URL parameters through the Electronic Bill Presentment (EBP) journey (e.g. utm_*)
  • “Fast Forward” customers through the payment journey by pre-filling their account identifier and pre-populating their product or purchase selections to skip pages, reducing clicks
  • Directly collect payments from new prospect customers and complete sign-up after they’ve successfully made an optional product selection and their payment
  • Attribute sales partner resources, including field agents and affiliate marketing programs
  • Customize your reporting endlessly by tracking both supported fields and arbitrary fields unique to your business
  • Use optional URL parameter behaviors to give you the customization you need

URL parameters — details

  • country and id are optional path parameters (before ?).
  • Remaining fields are standard query parameters placed after ? to populating the <querystring>
  • A wide range of Supported Parameters are listed below, in addition
  • Unknown Parameters not listed below will be captured and stored as Metadata.

Encoding & limits

  • URL-encode values (including spaces as %20 or +).
  • We recommend the list of URL parameters to be ≤ 256 chars, up to a total URL length of ≤ ~2,000 chars
  • Parameter names and values are case-insensitive.

Supported parameters

Behaviour and precedence

Defaults

All parameters are optional. Missing or invalid values are ignored and EBP / Checkout will continue with default behaviour.

Fast Forward

By pre-filling valid parameters, customers can be skipped through the journey
  • Provide a valid id for the customer and they’ll skip searching for their account.
  • With a valid product_code and allow_product_selection=false, they’ll skip directly to the payment step with that product (e.g. a promotional item) pre-selected.
  • With a valid product_code and allow_product_selection=true, they’ll see the product pre-selected but will have the option to choose an alternative from the product chooser.

Storage

  • Known parameters (utm_*, affiliate, agent, product_code, metadata etc.) are stored as they are.
  • Unknown parameters are also stored in metadata alongside the original value of the metadata field. It keeps arbitrary keys out of the top-level namespace while still allowing flexible context.

Surfacing

Captured values are available in webhooks, exports, and analytics (where they have been enabled for your Moment merchant account).

Examples

Email id, UTM, product pre-select
MSISDN id, (no country code), force chooser

metadata behaviour

  • If a known parameter is passed inside metadata (as key=value), it is stored as a typed field just like when sent as a top-level query param. The raw metadata string is also preserved.
  • If an unknown parameter is present in the URL, it is added to the metadata blob (in addition to any explicit metadata value you send).
Format reminder
metadata is a single string of URL-encoded pairs joined by |, e.g. key=value|key2=value2.
Unknown top-level params are recorded as key=value entries inside metadata.

Examples

1. Only metadata provided (no unknown params)

URL:
Stored

2. metadata provided and an unknown top-level param

URL:
Stored

3. Only unknown top-level param (no metadata provided)

URL:
Stored