Payment Gateway · Beta
Moment
API integration
Ship Payment Gateway features without building the integration. Full Moment API access via Proxy and 30+ MCP-ready tools for AI agents — extend models and mappings to fit your product.
Built for specific customer use cases. Issues are resolved quickly.
Talk to usUse Cases
Why integrate with Moment
Common scenarios for SaaS companies building Moment integrations for their customers.
Embed Localized Billing for Emerging Markets
Accounting, ERP, and subscription SaaS platforms can offer their merchants a native way to invoice and collect payments across African and other emerging markets. Truto handles the Moment integration so your team ships localized A/R workflows without building region-specific payment logic.
Ship Two-Step Authorize and Capture Checkout
E-commerce and inventory SaaS platforms can offer merchants a checkout flow that authorizes cards at purchase and captures funds only after fulfillment. If inventory falls through, the same integration voids the payment cleanly.
Enable Pay-by-Link from CRM and Field Service Workflows
CRM and field service platforms can let agents trigger a secure Moment payment link directly from a ticket, work order, or deal. This eliminates chasing customers for card details and closes the loop when payment succeeds.
Power Gift Card and Loyalty Redemption at Checkout
Loyalty, rewards, and POS SaaS platforms can offer merchants a reliable way to reserve and confirm stored-value redemptions during checkout. The two-step flow protects against double-spend in high-concurrency retail environments.
Generate Hosted Payment Pages for Creators and Campaigns
Creator economy, course, and marketing SaaS platforms can programmatically spin up branded hosted payment pages per product, campaign, or event. When the campaign ends or inventory sells out, the same integration deactivates the page instantly.
What You Can Build
Ship these features with Truto + Moment
Concrete product features your team can ship faster by leveraging Truto’s Moment integration instead of building from scratch.
Automated Bill Sync with Void Handling
Map users to Moment billing customers and accounts, generate bills on invoice creation, and void bills automatically when invoices are canceled in your system.
Authorize-Now, Capture-on-Fulfillment Checkout
Create payment sessions at checkout, then trigger capture when goods ship or void the payment if fulfillment fails.
One-Click Pay-by-Link Generation
Let users generate, update, and revoke Moment payment requests directly from a CRM record, invoice, or field service job with a single action.
Hosted Payment Page Lifecycle Management
Programmatically create per-product or per-campaign payment pages, pull transaction lists into dashboards, and deactivate pages when a listing is unpublished.
Split Payments with Vouchers and Cards
Look up stored-value balances, reserve redemptions during checkout, and confirm them alongside a card charge for combined tender flows.
Multi-Account Customer Ledgering
Model corporate customers with multiple billing accounts for different currencies or subsidiaries, and issue bills against the correct account programmatically.
SuperAI
Moment AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
create_a_moment_billing_customer
Create a new billing customer in Moment. Returns the customer object including id, external_reference, name, email, balance, payment_rules, and metadata. Required: external_reference, name.
update_a_moment_billing_customer_by_id
Update a Moment billing customer by id. Only provided fields are changed. Returns the updated customer object including id, external_reference, name, email, balance, payment_rules, and metadata. Required: id.
get_single_moment_billing_customer_by_id
Get a Moment billing customer by id. Returns: id, external_reference, name, email, phone, currency, balance, payment_rules, metadata, customer_id, order_id. Required: id.
create_a_moment_billing_account
Create a Moment billing account for an existing or new customer. Returns the created account object including id, external_reference, customer_id, name, currency, and balance.
update_a_moment_billing_account_by_id
Update an existing Moment billing account by id. Returns the updated account including id, external_reference, customer_id, name, currency, balance, payment_rules, and metadata. Required: id.
get_single_moment_billing_account_by_id
Get a Moment billing account by id or external reference. Returns: id, external_reference, customer_id, name, currency, balance, payment_rules, metadata, order_id. Required: id.
create_a_moment_billing_bill
Create a new bill in Moment for a customer or account. Returns the created bill including id, external_reference, status, amount_due, amount_paid, amount_remaining, and metadata. Required: external_reference, currency, amount_due. Pass either customer or account as a Moment ID, external reference, or nested object to create on the fly.
update_a_moment_billing_bill_by_id
Update an existing Moment bill. Only provided fields are changed. Returns the updated bill including id, external_reference, status, amount_due, amount_paid, amount_remaining, and metadata. Required: id.
get_single_moment_billing_bill_by_id
Get a Moment bill by its unique identifier or external reference. Returns the bill object including id, external_reference, customer_id, account_id, status, currency, amounts, payment_rules, and metadata. Required: id.
create_a_moment_bill_void
Void a bill in Moment, permanently making it uncollectable. Returns the voided bill object including id, status, amount_due, amount_remaining, and customer_id. Required: bill_id. This operation is irreversible and voided bills cannot be paid or updated.
create_a_moment_payment_page
Create a new Moment payment page. Returns the created page including id, status, page_url, currency, title, amount, custom_fields, and timestamps. Required: currency, title.
get_single_moment_payment_page_by_id
Get a Moment payment page by id. Returns the page object including id, status, page_url, currency, title, amount, and timestamps. Required: id.
update_a_moment_payment_page_by_id
Update an existing Moment payment page by id. Returns the updated page including id, status, page_url, currency, title, amount, and timestamps. Required: id.
delete_a_moment_payment_page_by_id
Delete a payment page in Moment by id. Returns an empty 204 response on success. Required: id. Only pages with no successful or attempted payments can be deleted.
moment_payment_pages_list_payments
List payments collected through a Moment payment page. Returns: id, payment_page_id, status, amount, currency, customer, custom_fields, payment_id, products, checkout_session_id, delivery_address, metadata, created_at, updated_at. Required: payment_page_id.
moment_payment_pages_deactivate
Mark a Moment payment page as inactive by payment page id. Returns the updated page including id, status, page_url, amount, currency, title, and updated_at. Required: payment_page_id.
create_a_moment_payment_request
Create a new Payment Request in Moment for collecting a payment. Returns the created payment request including id, type, status, amount, currency, link or push details, and metadata. Required: amount, currency.
get_single_moment_payment_request_by_id
Get a Payment Request in Moment by its unique id. Returns the payment request including id, status, type, amount, currency, link details, metadata, and timestamps. Required: id.
update_a_moment_payment_request_by_id
Update an existing Payment Request in Moment. Only unpaid and unexpired requests can be updated. Returns the updated payment request including id, type, status, amount, currency, link details, and timestamps. Required: id.
delete_a_moment_payment_request_by_id
Delete a Moment Payment Request by id. Returns an empty 204 response on success. Required: id.
create_a_moment_payment_session
Create a payment session in Moment. Returns the payment session object including id, type, amount, currency, status, payment_outcome, session_url, mode, created_at and updated_at. Required: amount, currency.
get_single_moment_payment_session_by_id
Get a payment session in Moment by id. Returns the full payment session object including id, type, amount, currency, status, payment_outcome, session_url, mode, created_at and updated_at. Required: id.
moment_payments_capture
Capture an authorised Moment payment. Returns the updated payment including id, status, amount, currency, capture_method, authorised_amount, paid_amount, voided_amount, created_at, and updated_at. Required: payment_id. Only for payments with capture_method: manual that have not expired.
get_single_moment_payment_by_id
Get a Moment payment by id. Returns the payment object including id, status, amount, currency, capture_method, intent, authorised_amount, paid_amount, voided_amount, created_at, and updated_at. Required: id.
moment_payments_void
Void an authorised Moment payment, releasing the full remaining authorised amount. Returns the updated payment including id, status, amount, currency, capture_method, authorised_amount, paid_amount, voided_amount, created_at, and updated_at. Required: payment_id. Only for manual-capture payments in succeeded status with remaining authorised amount.
create_a_moment_redemption
Create a redemption in Moment to redeem a voucher. Returns the redemption including id, status, version, amount, currency, operations, created_at, and updated_at. Required: type, source.
moment_redemptions_confirm
Confirm a reserved redemption in Moment to consume the reserved funds. Returns the updated redemption including id, status, version, amount, currency, operations, created_at, and updated_at. Required: redemption_id.
get_single_moment_redemption_by_id
Get a redemption by id in Moment. Returns the redemption including id, status, version, amount, currency, operations, created_at, and updated_at. Required: id.
list_all_moment_redemption_types
List supported redemption types in Moment. Returns a list of redemption type descriptors, each including type, category, name, description, capabilities, and required_fields. No caller parameters required.
create_a_moment_payment_capture
Capture funds for a Moment payment. Returns the updated payment object including id, status, amount, paid_amount, and payment_method_details. Required: payment_id. Optional: amount to capture a partial amount; omit it to capture the full remaining authorised amount.
create_a_moment_payment_void
Void the remaining authorised amount for a Moment payment. Returns the updated payment object including id, status, amount, currency, voided_amount, payment_method_details, and updated_at. Required: payment_id. The void always releases the full remaining authorised amount and increments voided_amount.
list_all_moment_payment_page_transactions
List transactions for a Moment payment page. Returns each transaction with id, payment_page_id, status, amount, currency, customer, products, metadata, created_at, and updated_at. Required: payment_page_id. Max 100 transactions per page.
moment_stored_value_balances_lookup
Look up a stored value balance in Moment. Returns the balance, currency, source credentials, and provider metadata. Required: type and source.
Why Truto
Why use Truto’s MCP server for Moment
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 550+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with Moment in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Moment account
Use Truto’s frontend SDK to connect your customer’s Moment account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Moment
Truto’s Proxy API is a 1-to-1 mapping of the Moment API. You call us, we call Moment, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Moment’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Moment on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How does authentication work for the Moment integration?
Your end users connect their Moment account through Truto, which manages credential storage, token refresh, and per-tenant isolation. Your application calls Truto with a tenant identifier and never handles Moment credentials directly.
Which Moment operations are supported today?
Truto supports billing customers, billing accounts, and bills (create, read, update, void), payment pages (create, read, update, delete, list payments, deactivate), payment requests (create, read, update, delete), payment sessions, payments (capture, void, read), stored value balance lookups, and redemptions (create, confirm, read, list types).
Can I authorize a payment and capture it later?
Yes. Create a payment session for checkout, then call the capture endpoint when you're ready to settle funds, or call void if the order is canceled before capture.
How do gift card and voucher redemptions work?
Redemptions use a two-step reservation flow: look up the stored value balance, create a redemption to reserve funds, and confirm the redemption once the checkout completes. This prevents double-spend in concurrent environments.
Can one customer have multiple billing accounts?
Yes. Moment's data model allows a single billing customer to hold multiple billing accounts, which is useful for handling different currencies, regional subsidiaries, or business units under one parent entity.
How do I track payments made against a hosted payment page?
Use the list payments operation on a payment page to pull transaction records for reconciliation or dashboards, and call deactivate to shut off the page when a campaign ends or a product sells out.
Moment
Get Moment integrated into your app
Our team understands what it takes to make a Moment integration successful. A short, crisp 30 minute call with folks who understand the problem.