Skip to main content

Who this guide is for

Use this guide if you are an aggregator or a high-volume merchant that needs:
  • Dedicated M-Pesa shortcode routing
  • Sub-merchant level transaction attribution
  • Advanced payout routing controls
If you do not need dedicated shortcode routing or sub-merchant attribution, use the standard endpoint payloads and only send required fields.

Integration paths

Enterprise-only fields by endpoint

The table below lists fields marked with the ENTERPRISE badge in the API reference.
Do not send enterprise-only fields unless your integration requires them. Over-specifying optional fields is a common source of integration errors.

End-to-end enterprise setup

1

Provision dedicated shortcodes

Work with Fingo to provision dedicated shortcode setup for your organization.
  • Collections traffic is routed through your collections shortcode.
  • Payout traffic is routed through your payouts shortcode.
2

Set up sub-merchants (if applicable)

You can pass subMerchantId directly in requests.
  • If the ID does not exist yet for your organization, Fingo auto-creates it in active state.
  • If the ID exists and is suspended, the request is rejected.
  • You can pass metadata.subMerchantDetails to enrich first-time auto-created records.
Use your own internal sub-merchant identifiers consistently in requests.
3

Start with minimal payloads

Go live first with required fields only, then add enterprise-only fields where you need deterministic routing.
4

Add enterprise routing fields intentionally

Add shortcode and subMerchantId only on flows that require them.
Apply enterprise fields per transaction type, not globally across all requests.
5

Verify webhook payloads and reconciliation

Verify webhook signatures, reconcile by merchantTransactionId and transactionId, and monitor failure reasons for optional-field misuse.
Use the shortcode query parameter on GET /v1/transactions to scope transaction queries to a specific dedicated shortcode. This is useful for reconciling traffic per shortcode without client-side filtering.

Request patterns

C2B charge

B2C payout

B2B transfer

Common mistakes to avoid

  • Sending dedicated shortcode values that do not belong to your organization
  • Reusing idempotency keys with different request bodies
  • Including optional routing fields in all requests by default

Next steps

API Reference

View endpoint-level field details and interactive playground.

Webhooks

Verify signatures and handle webhook events.