Managing Merchants

Managing multiple merchants with different configurations

Overview

CrissCross allows you to manage multiple merchants, each with their own configurations, payment rules, and settings. This is useful when you operate different businesses or need separate configurations for different operations.

Why Use Multiple Merchants?

You might want to create multiple merchants when you need:

  • Different Configurations: Each merchant can have its own payment methods, processors, and default settings
  • Separate Routing Rules: Apply different routing rules and optimization strategies for each merchant
  • Independent Reporting: Track transactions and performance separately for each merchant
  • Distinct Business Operations: Manage different business units, brands, or operations independently

How Multiple Merchants Work

Each merchant you create in CrissCross operates independently with:

  • Its own payment method configurations
  • Its own routing rules
  • Its own transaction history and reporting
  • Its own dashboard access and settings

When you initiate a payment, you specify which merchant should process the transaction. This allows you to route different types of transactions to different merchants based on your business needs.

Creating and Managing Merchants

You can create and manage merchants through:

  1. CrissCross Dashboard: Create new merchants and configure their settings through the dashboard interface
  2. API: Programmatically create and manage merchants using the CrissCross API

Each merchant has its own identifier that you use when creating checkout sessions or initiating payments.

Example: Creating a Checkout Session for a Specific Merchant

When creating a checkout session, you can specify which merchant should handle the transaction by including the merchant identifier:

1{
2 "merchantId": "YOUR_MERCHANT_ID",
3 "merchantReference": "ORDER12345",
4 "amount": 15000,
5 "currency": "ZAR",
6 "redirectUrl": "https://merchant.com/redirect",
7 "integrationType": "hosted",
8 "payerDetails": {
9 "emailAddress": "[email protected]",
10 "location": "ZAF",
11 "fullName": "John Doe"
12 },
13 "paymentAttributes": {
14 "merchantLocation": "AE"
15 }
16}

In this example, the merchantId field specifies which merchant should process this transaction. If you need to pass additional contextual fields (such as a merchant operating location for rules), include them in paymentAttributes.

Best Practices

  • Organize by Business Unit: Create separate merchants for distinct business operations or brands
  • Use Consistent Naming: Name your merchants clearly to make it easy to identify which one to use for each transaction
  • Configure Appropriately: Set up each merchant with the payment methods, processors, and rules that best fit its specific needs
  • Monitor Separately: Track performance and transactions for each merchant independently to understand how each is performing