Payment Pages

Create hosted payment links that let customers pay by credit card without your integration ever handling card data. Each page is reachable at https://clients.glance.co.il/payments/page/{visibleId}. Supported payment methods: the hosted page accepts credit card. Which methods appear on the page is fixed by your Grow gateway configuration on the Glance side — there is NO API parameter to select, filter, or add payment methods per request. Your integration never receives or transmits raw card data; the customer enters it directly on the Grow-hosted page.

Use cases: Send a customer a secure link to pay a fixed amount — embed it in an email, an SMS, or your own checkout — and optionally issue a receipt automatically once they pay. To collect against an invoice you have already issued, use POST /documents/payment-link/:visibleId instead: it charges the invoice's open balance rather than an amount you name, and the receipt it issues on success is allocated to that invoice and closes it. The pages here are for amounts that stand on their own.
POST/grow/payments/payment-page

Create a hosted payment page. Uses the company's active payment provider.

Build the customer-facing URL as https://clients.glance.co.il/payments/page/{visibleId}. One-off charge for a new customer, keeping the card for later: create the customer (entity), then create a payment page with that entityId and saveCard=true. On success the charge is captured AND the card is tokenised against the entity — a later POST /grow/payments/charge can reuse it with no second hosted page. Raw card data is never accepted by the API; the customer always enters it on the Grow-hosted page.

Body Parameters

NameTypeDescription
amount
numberrequiredAmount the customer will pay.
description
stringrequiredDescription shown on the payment page.
allowMultipleUses
booleanIf true, the page can be paid more than once. If false, it becomes single-use. Defaults to true.
createDocumentOnPayment
booleanIf true, automatically issue a receipt/invoice document on a successful payment. Defaults to false.
entityId
numberBind the page to a customer (entity). Required when saveCard is true — a saved card must belong to a customer. The entity must already exist and belong to your company.
saveCard
booleanIf true, the card the customer pays with is also saved as a reusable payment token on the entity, so you can charge it directly afterwards via POST /grow/payments/charge. Requires entityId. Defaults to false. Charging a first-time customer once and keeping the card for next time is the intended use — no separate token page needed.

Request

curl -X POST "https://api.glance.co.il/grow/payments/payment-page" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "amount": 0,
  "description": "example_description",
  "allowMultipleUses": true,
  "createDocumentOnPayment": true,
  "entityId": 0,
  "saveCard": true
}'

Response

Response
{
  "success": true,
  "visibleId": "3f8b5c2a-1d4e-4a7b-9c6f-2e1a0b8d7c5e"
}
GET/grow/payments/payment-pages

List payment pages with optional filtering and pagination.

`pagination.total` on this endpoint is the number of rows **in this page**, not the number of pages that exist, and `hasMore` is inferred from a full page rather than from a count. Page through it until a short page comes back, rather than trusting `total`.

Query Parameters

NameTypeDescription
allowMultipleUses
booleanFilter by whether the page allows multiple payments.
isUsed
booleanFilter single-use pages by whether they have been paid.
sortOrder
stringSort by creation date: "asc" or "desc" (default).
limit
numberItems per page (default 50).
offset
numberNumber of items to skip (default 0).

Request

curl -X GET "https://api.glance.co.il/grow/payments/payment-pages" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response

Response
{
  "success": true,
  "data": [
    {
      "id": 12,
      "visibleId": "3f8b5c2a-1d4e-4a7b-9c6f-2e1a0b8d7c5e",
      "amount": 250,
      "description": "Consulting session",
      "type": "PAYMENT",
      "allowMultipleUses": true,
      "isUsed": false,
      "createDocumentOnPayment": true,
      "createdAt": "2026-03-20T14:30:00Z"
    }
  ],
  "pagination": {
    "total": 1,
    "limit": 50,
    "offset": 0,
    "hasMore": false
  }
}
GET/grow/payments/payment-pages/:id

Get a single payment page by its ID.

Path Parameters

NameTypeDescription
id
numberrequiredPayment page ID.

Request

curl -X GET "https://api.glance.co.il/grow/payments/payment-pages/:id" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response

Response
{
  "success": true,
  "data": {
    "id": 12,
    "visibleId": "3f8b5c2a-1d4e-4a7b-9c6f-2e1a0b8d7c5e",
    "amount": 250,
    "description": "Consulting session",
    "type": "PAYMENT",
    "allowMultipleUses": true,
    "isUsed": false,
    "createDocumentOnPayment": true,
    "createdAt": "2026-03-20T14:30:00Z"
  }
}
PUT/grow/payments/payment-pages/:id

Update a payment page's amount, description, or reuse rule.

Path Parameters

NameTypeDescription
id
numberrequiredPayment page ID.

Body Parameters

NameTypeDescription
amount
numberNew amount.
description
stringNew description.
allowMultipleUses
booleanWhether the page can be paid more than once.

Request

curl -X PUT "https://api.glance.co.il/grow/payments/payment-pages/:id" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "amount": 0,
  "description": "example_description",
  "allowMultipleUses": true
}'

Response

Response
{
  "success": true,
  "data": {
    "id": 12,
    "visibleId": "3f8b5c2a-1d4e-4a7b-9c6f-2e1a0b8d7c5e",
    "amount": 300,
    "description": "Consulting session (updated)",
    "type": "PAYMENT",
    "allowMultipleUses": true,
    "isUsed": false
  }
}
DELETE/grow/payments/payment-pages/:id

Delete a payment page. Existing transactions keep their reference for history.

Path Parameters

NameTypeDescription
id
numberrequiredPayment page ID.

Request

curl -X DELETE "https://api.glance.co.il/grow/payments/payment-pages/:id" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response

Response
{
  "success": true
}

Last updated