Checkout API
Endpoint contract
Create a hosted checkout session that can expose cards, wallets, bank methods, QR, and crypto on one GLODIPAY checkout page.
Environments: Sandbox: https://payment-sandbox.gpayprocessing.com. Production base URL comes from the API Keys page in the Merchant Dashboard.
Signature rules
- Remove
signaturefrom the payload before signing. - Sort top-level keys in natural ascending order.
- Trim string values recursively and cast leaf numbers the same way as the spec examples expect.
- Serialize to JSON and sign with
md5WithRSAEncryptionusing your merchant private key. - Base64-encode the binary signature and send it as the
signaturefield.
The console uses the local signing proxy for this flow whenever you provide a private key.
Request parameters
| Field | Type | Required | Description |
|---|---|---|---|
merchantId | String(1,50) | M | Merchant ID. |
orderRef | String(1,250) | M | Unique transaction reference per merchant. |
amount | Float | M | Invoice amount. Minimum 1, up to 2 decimal places. |
currency | String(3) | M | ISO 4217 currency code. The v2 checkout spec currently documents USD. |
paymentMethod | String | M | Payment method to display. Supports ALL, APM, card, googlepay, applepay, paypal, ibanking_push, local_bank_transfer, wire_transfer, wallet, alipay, wechat, skrill, crypto. |
cancelUrl | String(1,300) | M | HTTPS redirect URL on cancellation. |
callbackUrl | String(1,300) | M | HTTPS redirect URL after success. |
notificationUrl | String(1,300) | M | HTTPS webhook endpoint. |
errorUrl | String(1,300) | M | HTTPS redirect URL on error. |
orderDescription | String(max:3000) | M | Short description shown on the checkout screen. |
metadata | JSON | O | Key-value pairs returned in IPN and query responses. |
transactionDocuments | JSON | O | Supporting transaction documents. |
paymentFilter | JSON | O | Array of payment method types to exclude. |
paymentSorter | JSON | O | Ordered array to control display order. Valid values: card, paypal, ibanking_push, local_bank_transfer, wire_transfer, wallet, skrill, alipay, wechat, googlepay, applepay, crypto, apm. |
feeBySeller | Number(0-100) | O | Percentage of processing fee paid by the merchant. |
billingFirstName | String(max:255) | O | Billing first name. |
billingLastName | String(max:255) | O | Billing last name. |
billingStreet1 | String(max:255) | O | Billing address line 1. |
billingStreet2 | String(max:255) | O | Billing address line 2. |
billingCity | String(max:255) | O | Billing city. |
billingEmail | String(max:255) | O | Buyer email address. |
billingState | String(2,255) | O | Billing state or province. |
billingCountry | String | O | ISO 3166-1 alpha-2 country code. |
billingPostalCode | String(max:25) | O | Postal or ZIP code. |
billingPhoneCountryCode | String(max:10) | O | Phone country code. |
billingPhoneNumber | String(max:20) | O | Phone number. |
brandName | String(1,255) | O | Override the brand name on the hosted checkout screen. |
colorMode | String(1,255) | O | Up to 3 colors separated by ---. |
logoSource | String(1,255) | O | Override the logo on the hosted checkout screen. |
customerIp | String | O | IP address of the customer. |
websiteUrl | String(max:300) | O | Merchant website URL. |
connectionMode | String | O | DIRECT_POST or API. See Connection Modes below. |
expiresAt | String | O | ISO 8601 session expiry. Default is 24 hours. |
signature | String(max:750) | M | RSA-MD5 signature. |
Connection modes
| Value | Description |
|---|---|
DIRECT_POST | Browser is redirected to the hosted checkout page immediately. |
API | Returns a paymentLink URL in the JSON response. |
Responses and flow
API: returns JSON with status, transactionId, paymentLink, and message.
DIRECT_POST: redirects the buyer directly to the hosted checkout page and does not return JSON to your server.
After payment, GLODIPAY redirects the browser to callbackUrl with ?payload=base64-json. Your notificationUrl also receives a JSON webhook when the transaction reaches a terminal state.
Your webhook handler should acknowledge receipt quickly with:
{
"returnCode": "100",
"description": "Received"
}Source
This page is derived from Checkout API.