---
updatedAt: 2026-05-19T21:06:54.000Z
agentTools:
  projectIndex: https://developer.eftcorp.com/llms.txt
---

# Getting Started - E-Commerce Acquiring

Accept your first card payment via Eclipse in under 15 minutes.

Eclipse handles the full card payment journey — card capture, 3DS authentication, and settlement — so you receive a payment link URL and the rest is managed by the platform.

**What you'll build:** a hosted payment link your customer can click to complete a card payment. Funds settle into your wallet automatically.

**Time:** under 15 minutes.

Full acquiring documentation: [E-Commerce Card Not Present](https://developer.eftcorp.com/docs/e-commerce-card-not-present).

***

## Prerequisites

* A sandbox tenant with API credentials (see [Getting Started on Sandbox](https://developer.eftcorp.com/docs/getting-started-on-sandbox))
* A `{destinationWalletId}` — the wallet that received funds should settle into
* A valid JWT bearer token

Sandbox tenants are pre-configured with all payment types enabled on hosted checkout. No additional configuration is required to generate your first payment link.

***

## Step 1 — Authenticate

```http
POST {baseUrl}/eclipse-conductor/rest/v1/login
Content-Type: application/json
```

```json
{
  "identity": "admin@yourcompany.co.za",
  "password": "YourPassword123!"
}
```

**Response:**

```json
{
  "headerName": "Authorization",
  "headerValue": "Bearer eyJhbGciOiJSUzI1NiJ9...",
  "tenantId": 42,
  "expires": "2026-05-19T10:30:00+00:00",
  "roles": ["TENANT_SYSTEM"]
}
```

Use `headerValue` as the value for the `headerName` header on every subsequent request. See [Authentication & Authorisation](https://developer.eftcorp.com/docs/authentication-and-authorisation) for full details, including PKI-based auth for production. [API Reference →](https://developer.eftcorp.com/reference/post_eclipse-conductor-rest-v1-authentication-login)

***

## Step 2 — Generate a Payment Link

A single API call generates a secure, hosted payment URL. Eclipse handles the card capture form, 3DS verification, and payment processing.

```http
POST {baseUrl}/eclipse-conductor/rest/v1/tenants/{tenantId}/payments
Authorization: Bearer {jwt}
Content-Type: application/json
```

```json
{
  "type": "GLOBAL_PAYMENT_LINK",
  "externalUniqueId": "order-00001-2026-05-19",
  "destinationWalletId": "{destinationWalletId}",
  "currency": "ZAR",
  "amount": 299.00,
  "description": "Order #00001"
}
```

**Response:**

```json
{
  "paymentId": 9284710,
  "paymentType": "GLOBAL_PAYMENT_LINK",
  "status": "PENDING",
  "currency": "ZAR",
  "amount": 299.00,
  "completionUrl": "https://checkout.eclipse.eftcorp.com/pay/abc123xyz",
  "expires": "2026-05-20T08:30:00.000Z",
  "created": "2026-05-19T08:30:00.000Z"
}
```

Share the `completionUrl` with your customer. When they open it, Eclipse presents a branded checkout page where they enter their card details and complete 3DS.

To embed the checkout in your own page, wrap the URL in an iFrame: [Hosted Checkout iFrame](https://developer.eftcorp.com/docs/card-on-file-use-cases#run-the-captive-portalcard-ui-in-an-iframe).

For a reusable link (no fixed amount, can be paid multiple times): use `GLOBAL_REUSABLE_PAYMENT_LINK` as the `type` and omit `amount`.

[API Reference: POST /tenants/{tenantId}/payments →](https://developer.eftcorp.com/reference/post_eclipse-conductor-rest-v1-tenants-tenantid-payments)

***

## Step 3 — Test the Payment

Use this test card in the hosted checkout:

| Field       | Value                 |
| ----------- | --------------------- |
| Card number | `4242 4242 4242 4242` |
| Expiry      | Any future date       |
| CVV         | Any 3 digits          |

The payment will be processed in the sandbox with no real money movement. Full test card reference: [Sandbox Testing Accounts](https://developer.eftcorp.com/docs/sandbox-testing-accounts#test-cards-for-acquiring).

***

## Step 4 — Receive the Payment Callback

Eclipse posts a callback to your configured endpoint when payment is complete. Register your callback URL on the tenant.

**Callback payload (example):**

```json
{
  "paymentId": 9284710,
  "status": "SUCCESSFUL",
  "amount": 299.00,
  "currency": "ZAR",
  "externalUniqueId": "order-00001-2026-05-19",
  "lastModified": "2026-05-19T08:32:15.000Z"
}
```

Verify callback authenticity using HMAC signature validation: [HMAC Signature](https://developer.eftcorp.com/docs/encryption-and-integrity#hmac-sha256-signature-for-eclipse-tenant-webhooks).

For synchronous payment processing (polling instead of callbacks): [Synchronous vs Asynchronous Payments](https://developer.eftcorp.com/docs/payments-use-cases#synchronous-vs-asynchronous-payment-calls).

***

## Step 5 — Check Payment Status

You can also poll payment status directly:

```http
GET {baseUrl}/eclipse-conductor/rest/v1/tenants/{tenantId}/payments/{paymentId}
Authorization: Bearer {jwt}
```

**Response:**

```json
{
  "paymentId": 9284710,
  "paymentType": "GLOBAL_PAYMENT_LINK",
  "status": "SUCCESSFUL",
  "amount": 299.00,
  "currency": "ZAR",
  "lastModified": "2026-05-19T08:32:15.000Z"
}
```

Once `SUCCESSFUL`, the funds are in the destination wallet.

[API Reference: GET /tenants/{tenantId}/payments/{paymentId} →](https://developer.eftcorp.com/reference/get_eclipse-conductor-rest-v1-tenants-tenantid-payments-paymentid)

***

## Acquiring Modes

Eclipse supports three e-commerce acquiring models:

| Mode                                    | How it works                                                                                                                                                            |
| --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Individual Sales Organisation (ISO)** | Your tenant holds a direct merchant account with the acquiring bank                                                                                                     |
| **EFT as Super Merchant**               | EFT Corporation acts as the acquiring aggregator for your tenant                                                                                                        |
| **Tenant-Onboarded Merchants**          | Your tenant onboards sub-merchants; each requires KYB via the [Merchant Aggregation KYC Ruleset](https://developer.eftcorp.com/docs/kyc-use-cases#merchant-aggregation) |

The mode is configured during onboarding. Contact `onboarding@eftcorp.com` for setup.

***

## Next Steps

| Topic                                              | Where to go                                                                                                                                      |
| -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| All payment types (Apple Pay, Google Pay, QR, EFT) | [Payments Use Cases](https://developer.eftcorp.com/docs/payments-use-cases)                                                                      |
| Direct API integration (no hosted checkout)        | [E-Commerce Card Not Present](https://developer.eftcorp.com/docs/e-commerce-card-not-present)                                                    |
| Store cards on file for repeat payments            | [Card on File Management](https://developer.eftcorp.com/docs/card-on-file-use-cases#card-on-file-management)                                     |
| Issue refunds and reversals                        | [Payment Reversals](https://developer.eftcorp.com/docs/payments-use-cases#payment-reversals)                                                     |
| Brand the hosted checkout                          | [Hosted Checkout Customisation](https://developer.eftcorp.com/docs/card-on-file-use-cases#customization-of-eclipse-hosted-and-captive-portal-ui) |
| Schedule recurring settlements                     | [Recurring Withdrawals](https://developer.eftcorp.com/docs/scheduler#recurring-withdrawals)                                                      |
| Reporting and statements                           | [Standard Reporting](https://developer.eftcorp.com/docs/standard-reporting)                                                                      |

***

## Merchant Category Code (MCC)

Every acquiring tenant must have a valid MCC configured — a four-digit code for your business type. This is set up by `onboarding@eftcorp.com` as part of production onboarding. Reference: [MCC List](https://www.mastercard.us/content/dam/public/mastercardcom/na/global-site/documents/quick-reference-booklet-merchant.pdf).