Skip to content

API specification for Glomo (1.0.0)

The Glomo API follows REST architecture, utilizing resource-oriented URLs for clarity. It handles form-encoded request bodies, delivers responses in JSON format, and operates with standard HTTP methods, authentication, and response codes.

You can download the complete API collection by using the download options on the right.

Download OpenAPI description
Languages
Servers
Production server

https://api.glomopay.com/api/v1/

Balance

This resource represents your Glomo balance. You can retrieve it to see the current balance on your Glomo account in all currencies enabled for your account.

Operations

Balance Conversions

Balance Conversion resource represents the details of the balance conversion. The balance conversion is the conversion of the balance from one supported currency to another supported currency.

Operations

Orders

This resource represents the order details. The order is the request to receive payment from your customer.

Operations

Customer

This resource represents a customer of your business. The customer can be an individual or a business from whom you will receive payments.

Operations

Document

Document resource represents the documents details uploaded. This document is used in payin, payout, etc.

Operations

Payment

This resource represents a payment attempt made by your customer. The payment can either be successfully completed or failed, depending on various factors.

Operations

List all payments

Request

Security
JWT
Query
customer_idstring

The unique identifier for the customer.

Example: customer_id=cust_E602sMzgjpDC
statusstring

Status of payin to filter

Enum"success""failed""action_required""in_progress"
Example: status=success
payin_idstring

The unique identifier for the payin.

Example: payin_id=payin_E602dMzgjpDC
subscription_idstring

The unique identifier for the subscription.

Example: subscription_id=sub_68877570b5zeE
currencystring(iso-4217, case-insensitive)

The currency in which the payment is made. The currency code is in ISO 4217 format. For example, USD.

Example: currency=USD
beforestring(timestamp)

ISO-8601 timestamp in UTC to filter resources created before this time. Use this to avoid Page drift issue. See Pagination parameters for more details.

Example: before=2025-02-18T12:03:44Z
afterstring(timestamp)

ISO-8601 timestamp in UTC to filter resources created after this time. Use this to avoid Page drift issue. See Pagination parameters for more details.

Example: after=2025-01-18T12:03:44Z
per_pageinteger

Number of resources per page. Should be between 1 and 100.

Default 20
pageinteger

Page number for pagination. Starts from 1. Get the next page number from the next field in the response.

Default 1
curl -i -X GET \
  'https://api.glomopay.com/api/v1/payment?customer_id=cust_E602sMzgjpDC&status=success&payin_id=payin_E602dMzgjpDC&subscription_id=sub_68877570b5zeE&currency=USD&before=2025-02-18T12%3A03%3A44Z&after=2025-01-18T12%3A03%3A44Z&per_page=20&page=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

List of payments matching the filters

Bodyapplication/json
dataArray of objects(Payment)
page_metaobject(PageMeta)
Response
application/json
{ "data": [ {} ], "page_meta": { "current": 2, "previous": 1, "next": 3, "per_page": 20, "pages": 10, "count": 200 } }

Create a mock payment

Request

This API is only available in sandbox mode. Creates a mock payment of specified amount for any given Payment link.

Security
JWT
Bodyapplication/jsonrequired
amountnumber>= 1required

The amount you want to convert in main unit. For example, 10 is $10.00.

Example: 10
currencystring(iso-4217)required

The currency code in ISO 4217 format. For example, USD. Keep this currency same as that in Payment link to create a successful payment. A different currency will create a payment in RFI(Action Required) state

Example: "USD"
payin_idstringrequired

The unique identifier for the payin. This is the identifier of the Payment link.

Example: "payin_E602dMzgjpDC"
curl -i -X POST \
  https://api.glomopay.com/api/v1/payment/mock \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "amount": 10,
    "currency": "USD",
    "payin_id": "payin_E602dMzgjpDC"
  }'

Responses

Payment created successfully

Bodyapplication/json
dataobject(Payment)
Response
application/json
{ "data": { "id": "payt_E602dMzgjpDC", "payin_id": "payin_E602dMzgjpDC", "payin_type": "payment_link", "subscription_id": "sub_68877570b5zeE", "status": "success", "payment_currency": "USD", "payment_amount": 1, "converted_currency": "USD", "converted_amount": 1, "purpose_code": "S0001", "transaction_reference_number": "payin_E602dMzgjpDC", "sender_name": "John Doe", "metadata": {}, "error_message": "string", "error_code": "PAYMENT_DECLINED", "error_description": "The payment attempt was declined. This could be due to issuer rejection, risk assessment, or restrictions on the card or account. The customer should contact their bank or try a different payment method.", "payment_date": "2024-12-06T11:38:37.130Z", "fee_bearer": "merchant", "created_at": "2024-12-06T11:38:37.130Z", "updated_at": "2024-12-06T11:38:37.130Z", "customer_id": "cust_E602sMzgjpDC", "product_name": "ShieldGuard Insurance", "product_description": "Simple, monthly insurance plan that covers your basic belongings and key digital assets", "country": "Ind", "ordered_amount": 1000, "ordered_currency": "USD", "fx_fee": {}, "txn_fee": {}, "documents": [], "settlement_id": "string", "funds_available": true, "payment_method": {}, "auto_debit": true } }

Retrieve a payment

Request

Security
JWT
Path
idstringrequired

The unique identifier for the payment.

Example: payt_E602dMzgjpDC
curl -i -X GET \
  https://api.glomopay.com/api/v1/payment/payt_E602dMzgjpDC \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Payment found

Bodyapplication/json
idstringread-only

The unique identifier for the payment.

Example: "payt_E602dMzgjpDC"
payin_idstring or null

The unique identifier for the payin. This is set only for payments associated to a payin.

Example: "payin_E602dMzgjpDC"
payin_typestring or null

The type of the payin. This is set only for payments associated to a payin.

Enum"payment_link""orders""add_funds"
subscription_idstring or null

The unique identifier for the subscription. This is set only for subscription-related payments.

Example: "sub_68877570b5zeE"
statusstringread-only

The status of the payment.

Enum"success""failed""action_required""in_progress"
payment_currencystring(iso-4217, case-insensitive)

The currency in which the payment is made. The currency code is in ISO 4217 format. For example, USD.

Example: "USD"
payment_amountnumber>= 1

The amount of the payment in cents. For example, 1000 cents is $10.00. The currency is determined by the currency field.

converted_currencystring(iso-4217, case-insensitive)

The currency in which the payment is made. The currency code is in ISO 4217 format. For example, USD.

Example: "USD"
converted_amountnumber>= 1

The amount of the payment in cents. For example, 1000 cents is $10.00. The currency is determined by the currency field.

purpose_codestring

The purpose code of the payment. This should match the purpose code of the payin.

Example: "S0001"
transaction_reference_numberstring

The transaction reference number. This should match the payin id.

Example: "payin_E602dMzgjpDC"
sender_namestring

The name of the sender.

Example: "John Doe"
metadataobject

Additional metadata for the payment.

error_messagestringread-only

The error message, if any.

error_codestringread-only

The error code for the respective error. Error code mappings can be found in the product guide.

Example: "PAYMENT_DECLINED"
error_descriptionstringread-only

The error description corresponding to error code.

Example: "The payment attempt was declined. This could be due to issuer rejection, risk assessment, or restrictions on the card or account. The customer should contact their bank or try a different payment method."
payment_datestring(date-time)

The date of the payment.

Example: "2024-12-06T11:38:37.130Z"
fee_bearerstring

Fee bearer of the payment.

Example: "merchant"
created_atstring(date-time)read-only

The creation timestamp of the payment.

Example: "2024-12-06T11:38:37.130Z"
updated_atstring(date-time)read-only

The last update timestamp of the payment.

Example: "2024-12-06T11:38:37.130Z"
customer_idstring

The unique identifier for the customer.

Example: "cust_E602sMzgjpDC"
product_namestring or nullread-only

The name of the product associated with the payment.

Example: "ShieldGuard Insurance"
product_descriptionstring or nullread-only

The description of the product associated with the payment.

Example: "Simple, monthly insurance plan that covers your basic belongings and key digital assets"
countrystring(iso-3166-1-alpha-3, case-insensitive)

The country of the sender. Country should be sent as a ISO 3166-1 alpha-3 code.

Example: "Ind"
ordered_amountinteger

The ordered amount.

Example: 1000
ordered_currencystring

The ordered currency.

Example: "USD"
fx_feeobject(Money)

The foreign exchange fee charged for the payment.

txn_feeobject(Money)

The transaction fee charged for the payment.

documentsArray of objects(AttachedDocument)

The attached documents for the payment.

settlement_idstring

A unique identifier generated by Glomo for the settlement batch in which this payment is included. This ID can be used to track and reconcile payments against corresponding settlements.

funds_availableboolean

Indicates whether the funds for this payment are currently available with Glomo.

Values:

  • true - Funds are available with Glomo and can be included in a payout or settlement
  • false - Funds are still in transit with Glomo's payment partners and are not yet available for use
payment_methodobject

Specifies the method used by the customer to complete the payment. This can include various options such as swift_transfer, card, and other payment methods.

auto_debitboolean or nullread-only

Indicates whether the payment was made via auto-debit for subscription payments. Returns true if it's an auto-debit payment, false if it's a manual payment for a subscription, or null if the payment is not associated with a subscription.

Example: true
Response
application/json
{ "id": "payt_E602dMzgjpDC", "payin_id": "payin_E602dMzgjpDC", "payin_type": "payment_link", "subscription_id": "sub_68877570b5zeE", "status": "success", "payment_currency": "USD", "payment_amount": 1, "converted_currency": "USD", "converted_amount": 1, "purpose_code": "S0001", "transaction_reference_number": "payin_E602dMzgjpDC", "sender_name": "John Doe", "metadata": {}, "error_message": "string", "error_code": "PAYMENT_DECLINED", "error_description": "The payment attempt was declined. This could be due to issuer rejection, risk assessment, or restrictions on the card or account. The customer should contact their bank or try a different payment method.", "payment_date": "2024-12-06T11:38:37.130Z", "fee_bearer": "merchant", "created_at": "2024-12-06T11:38:37.130Z", "updated_at": "2024-12-06T11:38:37.130Z", "customer_id": "cust_E602sMzgjpDC", "product_name": "ShieldGuard Insurance", "product_description": "Simple, monthly insurance plan that covers your basic belongings and key digital assets", "country": "Ind", "ordered_amount": 1000, "ordered_currency": "USD", "fx_fee": { "amount": 1000, "currency": "USD" }, "txn_fee": { "amount": 1000, "currency": "USD" }, "documents": [ {} ], "settlement_id": "string", "funds_available": true, "payment_method": { "type": "swift_transfer", "id": "swift_6883291fT7Rfw", "details": {} }, "auto_debit": true }

Refund

This resource represents a refund transaction from your Glomo account to your customer. You can retrieve it to see the details of the refund transaction.

Operations

Price

This resource represents the pricing details of the payin or payout. The pricing details include the fees and the pricing type

Operations

Subscription

This resource represents a recurring billing agreement for a customer. Subscriptions allow businesses to automatically charge customers on a regular schedule according to a defined billing plan.

Operations

Payout

This resource represents the disbursement transactions from your Glomo account to your beneficiaries.

Operations

Beneficiary

This resource represents a payee of a payout initiated by your business. The beneficiary can be an individual or a business to whom you will send funds.

Operations

Bank Account Validation

Bank Account Validation resource represents the validation details of a bank account.

Operations

Withdrawal

This resource represents the withdrawal transaction from your Glomo account to your withdrawal account.

Operations

Withdrawal Account

This resource represents the withdrawal account details. The withdrawal account is the bank account where the withdrawal amount will be credited.

Operations

Settlement

This resource represents the settlement details. The settlement is the process of transferring funds from your Glomo account to your bank account.

Operations