Skip to main content
POST
Get Upload Presigned URL

When to Use

Call this when you receive an MCA_FUND_RECEIVED webhook with status DOCUMENT_PENDING. It returns a temporary presignedUrl you then use to upload the supporting document (e.g. invoice) directly via HTTP PUT.

Upload Flow

The presignedUrl is temporary — upload the file immediately. Do not cache or reuse it.

Error Scenarios

Authorizations

x-gl-auth
string
header
required

Static API Key generated from the PayGlocal Partner Dashboard.

Path Parameters

gid
string
required

Unique FFMS transaction identifier (from the MCA_FUND_RECEIVED webhook).

Body

application/json
amount
string
required

Transaction amount.

Example:

"1000.00"

currency
string
required

ISO 4217 currency code.

Example:

"USD"

invoiceType
string
required

Type of document being uploaded.

Example:

"INVOICE"

paymentType
string
required

Payment type classification.

Example:

"CARD"

merchantId
string
required

Merchant identifier. Must match the transaction.

Example:

"merchant_001"

fileName
string
required

File name including extension (extension max 10 characters).

Example:

"invoice_INV-2026-00321.pdf"

customerFullName
string

Full name of the customer (3–150 characters).

Required string length: 3 - 150
Example:

"John Doe"

shippingDetails
string

Shipping information (1–120 characters).

Maximum string length: 120
Example:

"Bangalore, India"

invoiceNumber
string

Invoice reference number (1–100 characters).

Maximum string length: 100
Example:

"INV-2026-00321"

purposeCode
string

Purpose code for remittance reporting.

Example:

"P0102"

fxRate
string

Foreign exchange rate applied.

Example:

"83.12"

Response

Presigned URL generated successfully.

gid
string

Transaction identifier.

Example:

"gl_XXXXXXXXXXXXXXXX"

status
string
Example:

"201 CREATED"

message
string
Example:

"Request completed"

timestamp
string
Example:

"05/03/2026 17:35:10"

reasonCode
string
Example:

"GL-201-001"

presignedUrl
string<uri>

Temporary URL — upload the file immediately via HTTP PUT.

fileName
string
Example:

"invoice_INV-2026-00321.pdf"

invoiceType
string
Example:

"INVOICE"

paymentType
string
Example:

"CARD"

data
object | null
errors
object | null