Skip to main content
Invoices vs orders: These guides walk through invoices (formal billing, line items, publish). The collect flow is the same for orders — use /v1/orders/* instead of /v1/invoices/* and set source_type: "ORDER" on the checkout session. See Orders and Parties & counterparties.Hosted checkout: To skip party, invoice, session, and execute steps entirely, see Hosted checkout.
Call the Dollr API from a Django service layer or view — never from templates with secrets. Uses requests (add to your project dependencies).
API Reference: Obtain token · Collect

Prerequisites

  • Django 4+ / 5+
  • pip install requests
  • Settings in settings.py (or environment):

Steps

1

Dollr client service

Cache the token in Redis or memory with TTL — do not request a new token on every field in a form post.
2

Create invoice flow

3

Publish and collect

4

Poll status

Prefer a Celery task for polling MoMo PROCESSING states.

Try it yourself

Hosted checkout

Mobile money and card on a Dollr-hosted page — fastest path.

Orders

Same collect flow with source_type: ORDER and /v1/orders/*.

Direct checkout

One API call to create source — API-embedded flow.
Last modified on May 22, 2026