DNZ Digita
← Back to docs

Documentation

Global Payment Gateway — Merchant & API Guide

Global Payment Gateway is DNZ’s worldwide merchant product. Create hosted checkout links from the console or via API, accept USD payments, reconcile in the dashboard, and withdraw after maturity. Commission is 10%. System maturity is 15 days.

Product overview

Open the console at /console/global-gateway.

Create payment links, issue API keys (gw_live_…), set your webhook URL, monitor gross / commission / net, and request withdrawals.

Merchant API base: https://dnzteam.online/api/global-gateway

Fees and deductions (10%)

Commission rate: 10% of each successful payment gross amount.

Example: customer pays $100.00 → DNZ commission $10.00 → your net $90.00.

Only successful payments contribute to balance and analytics.

Pending and failed payments never increase withdrawable funds.

Settlement window (15 days)

A successful payment becomes withdrawable only after 15 full days from completion.

The Withdrawable figure already subtracts pending and approved withdrawals.

Payment lifecycle

create (console or API) → DNZ creates a PayPal Order → customer opens checkoutUrl and pays → return URL captures the order → payment is credited to the merchant account that owns the API key / console session → net after 10% → after 15 days withdrawable.

Webhook PAYMENT.CAPTURE.COMPLETED is a backup settle path. Your app can also receive payment.success on your HTTPS webhook with header X-DNZ-Signature.

Each checkoutUrl is one-time. Create a new payment for each customer order.

Merchant API (professional integration)

Base URL: https://dnzteam.online/api/global-gateway

Create API keys (prefix gw_live_) from the Global console — each key is bound to your merchant email only; successful payments credit that account balance alone.

Header: X-API-Key: gw_live_YOUR_KEY

POST /payments/create — body: productName, amount, currency (USD), description (optional).

GET /payments/status/{paymentId} — poll or verify after redirect.

Response includes checkoutUrl. Redirect the customer there. Fulfill only when status is success.

// Node.js example
const res = await fetch("https://dnzteam.online/api/global-gateway/payments/create", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "X-API-Key": process.env.DNZ_GLOBAL_GATEWAY_KEY,
  },
  body: JSON.stringify({
    productName: "Pro Plan",
    amount: 49.0,
    currency: "USD",
    description: "Monthly subscription",
  }),
});
const data = await res.json();
// Redirect customer to data.checkoutUrl

// Later:
const st = await fetch(
  `https://dnzteam.online/api/global-gateway/payments/status/${data.paymentId}`,
  { headers: { "X-API-Key": process.env.DNZ_GLOBAL_GATEWAY_KEY } }
);

cURL reference

Create and check a payment with the same production API key.

curl -X POST "https://dnzteam.online/api/global-gateway/payments/create" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: gw_live_YOUR_KEY" \
  -d '{"productName":"Order #42","amount":99.00,"currency":"USD"}'

curl -H "X-API-Key: gw_live_YOUR_KEY" \
  "https://dnzteam.online/api/global-gateway/payments/status/PAYMENT_ID"

Merchant webhook

Set your HTTPS webhook URL in the console.

On each successful capture DNZ POSTs JSON: event=payment.success, paymentId, amountUsd, commissionUsd, netUsd, captureId, paidAt.

Verify authenticity with header X-DNZ-Signature (HMAC-SHA256 of the raw body).

Withdrawals

When Withdrawable > 0, submit a full withdrawal from the console.

Pending requests reduce available balance until approved or rejected.

Payment Gateway vs Global

DNZ Payment Gateway (/console/gateway): local IQD/Qi, 1.5% commission, 2-day maturity — see /docs/dnz-payment-gateway.

Global Payment Gateway: USD worldwide product — this page and /console/global-gateway.

Accounts are separate; the same email can hold both without mixing balances.

Related content

Support