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.