DEVELOPER AREA · API & WEBHOOK

Integrate Inprimepay. In your flow.

Integrate "Pay with Inprimepay" via Hosted Checkout, query strings, server-to-server Custom Payment Link generation, and POST webhooks. You can pre-populate checkout, generate a real-time token, and validate notifications with HMAC-SHA256 signatures.

✓ API Plan €0 ✓ Hosted Checkout + OpenAPI ✓ Signed Webhooks
LOW-CODE URL + query string Pre-filled checkout.
WEB HOOK payment.successful POST + HMAC signature.
checkout.js
Hosted Checkout URL
const checkout =
"https://app.inprimepay.com/#/cpl/{MERCHANT_ID}"
+ "?amount=150.00"
+ "&name=Customer%20S.pA"
+ "&description=Invoice%20%23001"
+ "&type=installments"
+ "&callback_url=https%3A%2F%2Fmerchant-site.com%2Fcallback"; window.location.href = checkout;
Documentation designed to go online quickly. The basic logic uses Hosted Checkout and webhooks: the payment remains in the Inprimepay environment, your system receives the outcome.
€0 API PLAN
3 FLOW TYPES
POST WEB HOOK
Inprimepay Hosted Checkout
Query String Low-code
OpenAPI Server-to-server
webhook Asynchronous POST
HMAC-SHA256 Webhook Signature
ARCHITECTURE

Your software controls the flow. Inprimepay handles the checkout.

The documentation provides two complementary modes: a low-code integration based on Hosted Checkout URLs and a dynamic server-to-server generation via OpenAPI.

  • Base URL: https://app.inprimepay.com/#/cpl/{MERCHANT_ID}.
  • The amount and customer name can be pre-filled and made uneditable.
  • The reason can be pre-filled and can be modified by the user.
  • You can pre-select pay_now, installments o subscription.
  • Il callback_url can include custom parameters such as order_id o reference.
  • Custom callback parameters are returned in the webhook payload.
  • For dynamic links you can use the OpenAPI endpoint with authentication X-Api-Key.
  • Webhook notifications can be validated with X-InPrimePay-Signature.
See parameters →
QUICK START

From your order to your outcome in three steps.

Set up Hosted Checkout, generate a Custom Payment Link from your server if necessary, and receive asynchronous transaction notification.

01 · LINK

Set up Hosted Checkout.

Start from the Merchant ID URL and add the necessary query parameters.

https://app.inprimepay.com/
#/cpl/{MERCHANT_ID}

?amount=150.00
&name=Cliente%20S.p.A.
&type=installments
02 · OPENAPI

Generate the link from the server.

Send a POST to the OpenAPI endpoint using your Webhook Secret in the X-Api-Key header.

POST /api/custom-payment-links/ openapi/generate X-Api-Key: {WEBHOOK_SECRET} Content-Type: application/json
03 · WEBHOOK

Receive and validate the result.

Upon completion of payment, you will receive a POST with the payment.succeeded event and an HMAC-SHA256 signature.

event: payment.succeeded header: X-InPrimePay-Signature
1 · LINK CONFIGURATION

Prefills the Hosted Checkout via query string.

Redirect your customer to your secure payment URL and pass data via query strings for quick, low-code integration.

Base URL https://app.inprimepay.com/#/cpl/{MERCHANT_ID}
amount
decimal
Payment amount, for example 100.50If specified, the relevant field is pre-filled and disabled.
name
string
Customer's name or company name, for example Cliente%20S.p.A.If specified, the field is pre-populated and disabled.
description
string
Reason for payment, for example Fattura%20%23A12Pre-fill the reason, which can still be modified by the user.
type
enum
Payment type to pre-select: pay_now, installments or subscription.
callback_url
URL encoded
URL for the POST webhook notification. Must be URL-encoded. Can include custom parameters such as ?order_id=12345 o reference: are automatically extracted and returned in the webhook payload.
Example of a complete link Hosted Checkout
https://app.inprimepay.com/#/cpl/{MERCHANT_ID}?amount=150.00&name=Cliente%20S.p.A.&description=Fattura%20%23001&type=installments&callback_url=https%3A%2F%2Fmerchant-site.com%2Fcallback
2 · CUSTOM PAYMENT LINK

Generate the link dynamically from your server.

For each new order, you can use the OpenAPI endpoint. Authentication is done via your Webhook Secret, which can be found in your Platform Profile.

OpenAPI Endpoint POST https://api.inprimepay.com/api/custom-payment-links/openapi/generate
X-Api-Key Required header. Value: Your Webhook Secret.
Content-Type application/json
amount Required. Decimal numeric amount, for example 99.00.
clientName Required. Customer name or text identifier.
Description Optional. Reason for payment.
POST /api/custom-payment-links/openapi/generate REQUEST
X-Api-Key: {WEBHOOK_SECRET}
Content-Type: application / json

{
  "amount": 99.00,
  "clientName": "Client SpA",
  "description": "Purchase Premium Service"
}
Expected response Unique token
{
  "token":
  "d7a8e2b1-4f4c-11eb-ae93-0242ac130002"
}
Final URL for the client Token + callback_url
https://app.inprimepay.com/#/cpl/{MERCHANT_ID}?token=d7a8e2b1-4f4c-...&callback_url=https%3A%2F%2Fmerchant-site.com%2Fcallback%3Forder_id%3D12345
3 · PAYMENT NOTIFICATION

Payment is complete. Your system knows it.

Upon completion of the transaction, the Inprimepay server sends an asynchronous POST notification to the endpoint specified in the callback.

Event The guidance payload uses payment.succeeded.
Identifiers Include eventId, chargeId, sessionId, customerId e orderId.
Transaction data Amount, currency, status, merchant, original timestamp, and payment method.
Custom parameters The references included in the callback_url, as order_id, can be returned in the payload.
Webhook Security and Signing →
POST /callback payment.successful
{
  "event": "payment.successful",
  "eventId": "a1b2c3d4-e5f6-7890-1234-56789abcdef0",
  "timestamp": 1696772400,
  "chargeId": 14592,
  "sessionId": "cs_test_a1b2c3d4...",
  "customerId": "{MERCHANT_ID}",
  "orderId": "12345",
  "amount": 100.50,
  "currency": "eur",
  "status": "Success",
  "merchant": "InPrime Pay",
  "originalTimestamp": "2024-05-13T10:35:42Z",
  "paymentMethod": "card"
}
SECURITY AND VALIDATION
webhook signed.

To verify that the POST notification is legitimately coming from Inprimepay servers, the request includes a validation signature.

Header X-InPrimePay-Signature
Algorithm HMAC-SHA256 in hexadecimal / hex format.
Content to be signed Il raw JSON request body received.
Cryptographic key Your Webhook Secret.
Verifica Calculate the HMAC-SHA256 of the raw JSON with the Webhook Secret. If the generated hash matches the header value, the notification is authentic.
chargeId The identifier chargeId it is indicated in the guide as unique and stable.
4 · STRENGTHS

The points highlighted in the Partner Technical Guide.

The attached technical guide outlines security, available methods, speed of integration, and infrastructure reliability.

✓ Maximum Security PCI-DSS Level 1 Compliance.
✓ Multiple Methods Cards, Klarna, Satispay.
✓ Swift Integration can be completed in minutes.
✓ Proven Reliability 99,9% uptime guaranteed.
WHERE TO USE THEM

Not just e-commerce.

The Hosted Checkout + webhook flow can be used across multiple digital and retail touchpoints without changing the integration logic.

Management software

Generate a checkout directly from ERP, CRM, or vertical software and record the outcome in your flow via webhook.

▣

Apps and SaaS

Connect payment to an application process while keeping the checkout interface in the Inprimepay environment.

W

Custom e-commerce

Bring Pay Now, installments, and subscriptions into a proprietary checkout without having to build the payment page.

▥

Kiosk and self-service

Generate payments from kiosks, touch screens, and other physical flows connected to software systems.

QR

Assisted retail

Create a checkout with the amount and reason already set and take the customer to payment from a store touchpoint.

↻

Recurring payments

Use the type subscription in flows where the merchant and provider configuration supports recurring payments.

5 · START-UP REQUIREMENTS
It really helps bit.
1
Inprimepay Merchant ID This is the reference used in the Hosted Checkout base URL.
2
Webhook URL For example https://api.vostrosito.it/callback/payments.
3
Webhook Secret Available in the Platform Profile. It is used for X-Api-Key and for HMAC validation of the webhook signature.
4
Enabled accounts and methods The methods actually available depend on the services and providers activated on the merchant.
Informative note: The attached technical document is designated as a preliminary technical draft for internal use and discussion purposes. Specifications, parameter names, and payload structure may be subject to change during final implementation.
Inprimepay Technical Support Reference indicated in the Partner Technical Guide.
assistenza@inprimepay.com
DEVELOPER FAQ

Before passing the link to the dev.

The essential answers about integration, including specifics added by the Partner Technical Guide.

Does the API Plan have a fixed cost?

The Inprimepay API Plan is offered at €0 for access to the solution. Fees for the services and payment providers used still apply.

Do I need to integrate a checkout from scratch?

No. The integration uses an Inprimepay Hosted Checkout: your system builds the link and redirects the customer to the payment URL.

What is the correct base URL for Hosted Checkout?

https://app.inprimepay.com/#/cpl/{MERCHANT_ID}.

Can I enter the amount and customer name?

Yes. The parameters amount e name They can be passed via query strings and, if present, are pre-compiled and made unmodifiable.

What payment types can I pre-select?

The documentation includes pay_now, installments e subscriptionThe actual availability of the relevant methods depends on the services activated by the merchant.

Can the callback_url contain order_id or reference?

Yes. The guide specifies that callback_url can include custom parameters such as order_id o reference; are automatically extracted and returned in the webhook payload.

How do I generate a Custom Payment Link from my server?

Make a POST to https://api.inprimepay.com/api/custom-payment-links/openapi/generate using the Webhook Secret in the header X-Api-Key e Content-Type: application/json.

What fields does server-to-server generation require?

amount e clientName are indicated as mandatory; description This is optional. The response returns a unique token.

How do I receive transaction confirmation?

Passing a callback_url encoded, the Inprimepay server sends an asynchronous POST webhook notification upon transaction completion. The event indicated in the guide is payment.succeeded.

How do I verify that the webhook is authentic?

Calculate the HMAC-SHA256 of the raw JSON request body using your Webhook Secret and compare the hex result with the header. X-InPrimePay-Signature.

Is the chargeId a stable reference?

Yes. The Partner Technical Guide indicates that chargeId It is unique and stable.

Can I integrate Inprimepay into a management system or kiosk?

Yes. The Hosted Checkout + webhook model is also suitable for management systems, applications, platforms, custom e-commerce, and retail flows.

Please pass this page on to your developer.

Hosted Checkout, query parameters, server-to-server generation, tokens, POST webhooks, and HMAC-SHA256 validation are available. For technical support: assistenza@inprimepay.com.

Activate API Plan €0 →