- Checkout — a hosted payment link that produces a
checkoutobject - Payin — whitelabelled payment methods embedded in your own UI that produce a
payinobject
on_behalf_of ensures funds are correctly attributed and traceable to the intended recipient.
Use Cases
- Marketplace Platform — A marketplace creates checkout sessions on behalf of individual sellers, ensuring payments are correctly attributed to each seller’s entity.
- Payment Aggregator — A licensed payment aggregator processes payments on behalf of multiple merchants under a single parent account.
- Bill Payment Platform — A bill payment aggregator collects payments on behalf of utility companies, telecom providers, or other service entities.
- Digital Wallet Recharge — A financial institution allows users to recharge prepaid wallets or accounts belonging to third-party entities.
How It Works
- Create and submit an entity — Register the seller, business, or individual under your merchant account and submit them for review.
- Wait for approval — The entity must reach
submittedstatus (orapproved, if mandatory approval is enabled on your account) before it can be used in OBO sessions. - Create a Checkout or Payin — Pass the approved entity ID in the
on_behalf_offield. - Customer completes payment — Tazapay creates a
checkoutorpayinobject attributed to the entity. - Handle webhooks — Listen for
checkout.paidorpayin.succeededto confirm payment. - Manage settlements / Create Payouts — Settled funds are received in aggregate to your account. You can either receive them as a bulk settlement to your bank account, or use the balance to fund onward payouts via Tazapay. See Settlement for details.
Step 1: Create an Entity
An entity represents the business or individual on whose behalf you’re collecting payment — a seller, agent, or service provider registered under your platform’s merchant account. Tazapay supports two entity types:- Business Entity — for registered companies and legal entities
- Individual Entity — for sellers, agents, freelancers, or sole proprietors
approved status.
Relevant Links
- Business Entity Requirements — Full Onboarding
- Individual Entity Requirements — Full Onboarding
- Entity Requirements — Simplified Onboarding
- Create Entity API
- Submit Entity API
Step 2: Create a Checkout or Payin
Once you have an approved entity, include its ID in theon_behalf_of field when creating a Checkout or Payin. This is the only step needed to attribute the payment to the correct entity.
Request
Key fields
*Required if your account has the Mandatory OBO information for checkout configuration enabled.
Response
The response includes the hosted checkouturl and echoes back on_behalf_of:
Relevant Links
Step 3: Handle the Resulting Payin
When the customer completes payment on the hosted checkout page, Tazapay creates a linked Payin. The Payin automatically inherits theon_behalf_of value from the checkout session — no additional steps are required.
You can retrieve the Payin using the payin field in the Checkout response or via the Get Checkout API.
Step 4: Handle Checkout & Payin Events / Webhooks
Tazapay sends webhooks for all checkout and payin status changes. When OBO is used, all webhook payloads includeon_behalf_of in the data object.
Example: checkout.paid webhook (OBO)
Best Practices
- Always verify webhook signatures
- Rely on webhooks (not polling) for final payment outcomes
- Store the
on_behalf_ofvalue from webhook payloads for reconciliation
Relevant Links
Account Configurations
Two merchant-level configurations control Checkout OBO behaviour. These are set by Tazapay on your account:
Contact your Tazapay account manager to enable these configurations.