First Payment in 5 Minutes

Option 1: Dashboard (No Code)

The fastest way to accept a payment — create a payment link from the Dashboard.

  1. In your Inflow Dashboard, go to Product catalog → Payment links.
  2. Click Create payment link.
  3. Add a product from your catalog, or click Add new to create one with its price.
  4. Click Create link.
  5. Copy the link from its page and share it with your customer.

See Payment Links.

When the customer opens the link, they see the Inflow hosted checkout page and can pay via local bank transfer, card (Visa, Mastercard, Amex, Discover), Apple Pay, or Google Pay.


Option 2: API (Checkout Redirect)

Create a payment programmatically and redirect your customer to the checkout.

Step 1: Create a Payment

curl -X POST https://api.inflowpay.com/api/checkout/payment \
  -H "X-Inflow-Api-Key: inflow_prod_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "products": [{ "name": "My Product", "price": 2999, "quantity": 1 }],
    "currency": "EUR",
    "customerEmail": "[email protected]",
    "successUrl": "https://yoursite.com/success",
    "cancelUrl": "https://yoursite.com/cancel"
  }'

Step 2: Redirect the Customer

The response includes a purchaseUrl. Redirect the customer to this URL:

{
  "paymentId": "pay_abc123",
  "purchaseUrl": "https://checkout.inflowpay.com/pay/pay_abc123"
}

Step 3: Customer Completes Payment

After payment, the customer is redirected to your successUrl.


Option 3: SDK (Embedded Card Form)

Embed a card payment form directly on your website.

Step 1: Create a Payment (Backend)

const response = await fetch('https://api.inflowpay.com/api/server/payment', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-Inflow-Api-Key': process.env.INFLOW_PRIVATE_KEY
  },
  body: JSON.stringify({
    products: [{ name: 'My Product', price: 2999, quantity: 1 }],
    currency: 'EUR',
    customerEmail: '[email protected]',
    billingCountry: 'FR',
    purchasingAsBusiness: false
  })
});

const payment = await response.json();
// Send payment.id to your frontend

Step 2: Mount the Card Form (Frontend)

<script src="https://cdn.jsdelivr.net/npm/@inflow_pay/sdk/dist/sdk.umd.js"></script>
<div id="card-container"></div>
<script>
  const provider = new InflowPaySDK.InflowPayProvider({
    config: { publicKey: 'inflow_pub_your_key' }
  });

  provider.createCardElement({
    paymentId: 'pay_abc123', // From your backend
    container: '#card-container',
    onComplete: (result) => {
      if (result.status === 'SUCCESS') {
        alert('Payment successful!');
      }
    }
  }).mount();
</script>

Minimum Payment Amounts

Each currency has a minimum payment amount:

CurrencyMinimum
EUR€1.50
USD$2.00

Prices in the API are in cents. For example, €1.50 = 150.

What Happens Next?

  1. The payment appears in Transactions → Payments in your Dashboard.
  2. Your balance updates when the payment is settled.
  3. If you have webhooks configured, you'll receive a notification.

Did this page help you?