Creates a payment for an order or subscription. For initial payments, card details and a callback URL are required. For subsequent payments on as_presented subscriptions, the card from the last successful payment is reused, and request_id, amount, and currency are required instead.
Either order_id or subscription_id must be provided, but not both.
On a subsequent auto debit for an as_presented subscription, pass split_ids to price that charge from your declared share of a dynamic pricing rule. See Dynamic Fee Split. The splits apply to that charge only and do not modify the subscription's own declaration. Omit split_ids and Glomo prices the charge from the subscription's declaration; if that declaration no longer resolves, the auto debit is rejected with a 400 Bad Request until you pass a valid split_ids to override it.
The unique identifier for the order. Either order_id or subscription_id must be provided, but not both.
The unique identifier for the subscription. Either order_id or subscription_id must be provided, but not both.
Payment method. Must be card. Required for initial payments. Not required for subsequent payments (defaults to card).
Payment sequence. Use initial (default) for first-time payments or subsequent for merchant-initiated payments on as_presented subscriptions.
Card details. Required for initial payments. Not required for subsequent payments — the card from the last successful payment is reused.
HTTPS URL where the customer is redirected after payment processing. Required for initial payments. Not required for subsequent payments as there is no customer redirect involved.
Idempotency key. Required for subsequent payments, optional for initial payments.
Payment amount in minor units (cents). Required for subsequent subscription payments. Cannot exceed the subscription's max_amount.
Currency code in ISO 4217 format. Must match the subscription's currency for subsequent payments.
The pricing splits to apply to this charge. Supported on a subsequent auto debit for an as_presented subscription; sending split_ids for a fixed-frequency subscription returns a 400 Bad Request.
The splits apply to this charge only. They override the subscription's own declaration for this charge and do not modify it. Omit split_ids and Glomo prices the charge from the subscription's declaration.
[ "psplit_7Kq2mXbTdLp9" ]
Optional key-value pairs for attaching custom metadata (e.g. invoice references, project codes). Keys must be strings and cannot collide with reserved field names. If your business has custom field rules configured (e.g. enum constraints), values are validated against those rules. Each key appears as a separate column in CSV report exports, with corresponding values populating the rows.
{ "invoice_ref": "INV-2026-001", "project": "Alpha" }
- Initial payment with card details
- Subsequent payment for as_presented subscription
- Subsequent payment overriding the subscription's fee split for this charge
curl -i -X POST \
https://api.glomopay.com/api/v1/payment \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"order_id": "order_68c00b7btsthf",
"method": "card",
"sequence": "initial",
"card": {
"holder_name": "John Doe",
"number": "4111111111111111",
"expiry_month": "09",
"expiry_year": "30",
"cvv": "123"
},
"callback_url": "https://server.yoursite.com/payment/callback",
"notes": {
"internal_ref": "ref_12345"
}
}'Payment created successfully
The current status of the payment.
{ "payment_id": "payt_691eeb9aV79Uk", "status": "pending", "next_steps": [ { … }, { … } ] }