Skip to main content
Version: 2.1

iFrame Card API

Ask AI

Create a session that returns a signed URL to a GLODIPAY-hosted card input form. Embed the URL in an <iframe> on your page — the buyer enters card details in the hosted form without leaving your site.

Endpoint: POST /v2/card/iframe Content-Type: application/json


Request Parameters​

FieldTypeRequiredDescription
merchantIdString(1–50)MMerchant's ID. E.g. 1100000123
orderRefString(1–250)MUnique transaction reference per merchant. E.g. ORDER-2026-001
amountFloatMInvoice amount. Minimum: 1. Up to 2 decimal places. E.g. 100.00
currencyString(3)MISO 4217 currency code. E.g. USD
paymentMethodStringMMust be card
callbackUrlString(1–300)MRedirect URL after successful payment. Must be https. E.g. https://yoursite.com/return. See Callback URL
notificationUrlString(1–300)MYour server endpoint for IPN webhooks. Must be https. E.g. https://yoursite.com/webhook
cancelUrlString(1–300)MRedirect URL on cancellation. Must be https. E.g. https://yoursite.com/cancel
errorUrlString(1–300)MRedirect URL on error. Must be https. E.g. https://yoursite.com/error
billingEmailString(max:255)OBuyer email address. E.g. john.doe@example.com
billingCountryStringOISO 3166-1 alpha-2 country code. E.g. US. See Country Codes
billingFirstNameString(max:255)OBilling first name. E.g. John
billingLastNameString(max:255)OBilling last name. E.g. Doe
billingStreet1String(max:255)OBilling street address line 1. E.g. 123 Main St
billingStreet2String(max:255)OBilling street address line 2. E.g. Suite 4B
billingCityString(max:255)OBilling city. E.g. New York
billingStateString(2–255)OBilling state / province. E.g. NY
billingPostalCodeString(max:25)OPostal / ZIP code. E.g. 10001
billingPhoneCountryCodeString(max:10)OPhone country code. E.g. 1 for US
billingPhoneNumberString(max:20)OPhone number. E.g. 5551234567
orderDescriptionString(max:3000)MShort description of the order. E.g. Order #2026-001
metadataJSONOKey-value pairs returned in IPN and query responses. E.g. {"orderId":"12345"}
transactionDocumentsJSONOSupporting documents for the transaction. E.g. [{"type":"invoice","url":"https://yoursite.com/inv.pdf"}]
feeBySellerNumber(0–100)O% of processing fee paid by merchant. 0 = buyer pays 100%. E.g. 50
brandNameString(1–255)OOverride brand name on the card form. E.g. My Store
colorModeString(1–255)OUp to 3 colors separated by ---. Accepts color names, HEX, or RGBA. E.g. #2e7d32---#e8f5e9---#81c784
logoSourceString(1–255)OOverride the logo on the card form. E.g. https://yoursite.com/logo.png
customerIpStringOIP address of the customer. E.g. 203.0.113.42
websiteUrlString(max:300)OMerchant website URL. E.g. https://yoursite.com
expiresAtStringOSession expiry in ISO 8601 format. Default: 24 hours. E.g. 2026-04-22T10:00:00+00:00
signVersionStringO2.1: send the other fields as a JSON string in payload (see Signature). Omit to use the 2.0 rules.
signatureString(max:750)MRSA-MD5 signature. See Signature

M = Mandatory, O = Optional

Defaults for optional fields​

What the gateway applies when the field is omitted.

FieldDefault when omitted
connectionMode, paymentMethodForced to API and card — any value you send for these two is overridden
feeBySellerThe Fee by seller percentage configured for your merchant account in the Portal. The buyer's share is 100 − feeBySeller
expiresAt24 hours after the request
websiteUrlcallbackUrl — its host is what the allowed-domain check validates
brandNameYour company name as registered in the Portal
logoSourceYour merchant logo as uploaded in the Portal
colorModeThe default GLODIPAY theme
customerIpThe IP of the incoming request, which for a server-side call is your server's IP. The buyer's real IP is recorded when the card form is loaded
metadata, transactionDocumentsAbsent — nothing extra is added to the IPN or query response
billing* fieldsEmpty — when sent they only pre-fill the card form

Response​

FieldTypeDescription
statusStringcreated on success, error on failure
transactionIdString (ULID)GLODIPAY transaction ID
urlStringSigned URL to the hosted card input form — embed in <iframe>
messageStringHuman-readable message

Success:

{
"status": "created",
"transactionId": "01jza90dy6w82dfrrqvadn5vs4",
"url": "https://payment.gpayprocessing.com/v2/card-iframe/01jza90dy6w82dfrrqvadn5vs4?...",
"message": "Iframe card created successfully"
}

Error:

{
"status": "error",
"transactionId": null,
"url": null,
"message": "No active payment service providers found. Please contact support."
}

Embedding the iFrame​

After receiving the url, embed it in your page:

<iframe
src="{url}"
width="100%"
height="600"
frameborder="0"
scrolling="no"
allowtransparency="true">
</iframe>

The URL is signed and expires at expiresAt. The buyer must complete payment within the session expiry time. Do not store or share the URL beyond the current checkout session.


IPN Notification​

GLODIPAY posts a payment result to your notificationUrl when the transaction reaches a terminal state. See IPN Notifications for the full payload and acknowledgement format.


Transaction Query​

Use POST /v2/checkout/query to check the status of a transaction at any time. See Transaction Query.


Source​

This page is derived from GLODIPAY_iFrame_API_Specification_v2.

Bookmarks

No bookmarks yet.
Hover over a heading and click to save a section.