Help Center

Found 100 out of 200

Recommendations for designing a billing interface

A token is an encrypted representation of a customer’s bank card stored in the payment system. It allows you to charge the card without asking the customer to re-enter card details.

If you use tokens API for subscriptions or recurring payments, your billing interface should be simple, clear, and transparent.

Automatic retry attempts

If a payment fails (for example, due to insufficient funds), set up automatic retry attempts.

It is recommended to make up to 5-7 attempts, gradually increasing the interval between them — for example, after 1 day, then 2 days, then 3 days, and so on.

Always notify the customer about the failed charge and give them time to top up their account or update their card before the next attempt.

Manual retry option

Add a “Retry payment” button so the customer can manually attempt the charge again after resolving the issue.

If there are failed payments, this section should remain accessible and not be blocked.

Allow multiple cards

Let customers add a second card as a backup payment method.

First attempt to charge the primary card. If it fails, try the backup card. This reduces the risk of service interruption.

Display refunds in transaction history

If a refund is issued, it should be clearly visible in the transaction history.

Show the refund amount, date, and the related transaction. This improves transparency and reduces confusion.

Easy cancellation

The unsubscribe button should be visible and easy to access.

Do not automatically delete the saved card after cancellation unless the customer explicitly requests it. This allows them to resume the subscription without re-entering card details.

Clear pricing information

The interface should clearly show:

– subscription price
– taxes
– fees
– total amount charged

Customers should understand exactly what they are paying for.

Notifications

Inform customers about important events such as:

– failed charges
– successful renewals
– refunds

Notifications can be sent by email or any other available channel.

The main goal is to make billing predictable and transparent. The fewer surprises customers face, the fewer cancellations, complaints, and chargebacks you will have.

Keep reading
API

Webhooks

Webhook is an automatic event notification sent by the Allpay system to an external URL.

When a payment is successfully completed, Allpay sends a POST request to the specified address. The request contains full payment details, including the buyer's name, the payment description, and the amount.

Developers and integrators use webhooks to:

  • automatically trigger actions (e.g. activating an order or sending an email to the customer),
  • synchronize data between systems,
  • eliminate the need for manual payment status checks.

Even types

Currently, Allpay supports a webhook for one event only — successful payment.

For subscriptions, the webhook is automatically sent to the specified URL each month after a successful recurring charge.

Where to configure a webhook

A webhook is configured separately for each payment link or API integration:

  1. Payment link — in the settings of that specific link. In this case, the webhook will be sent for every payment made via that link.
  2. API integration — in the settings of a specific integration under the <span class="u-richtext-element">API Integrations</span> section. This allows you to receive webhooks for all payments processed through that integration — for example, from your site on WordPress, or another platform.

Allpay does not have a centralized webhook setting for all payments. This approach gives you flexible control over notifications across different channels.

Webhook request contents

Allpay sends a POST request to the specified URL. The request body is a JSON object containing parameters related to the event.

Example request

POST /c96zv6ri852dvppncccdg6fxkjnpwojg HTTP/2
Host: hook.eu2.make.com
accept: */*
content-type:application/json
content-length: 453

{
    "name": "Consultation",
    "items": [
        {
            "name": "Consultation",
            "price": 150,
            "qty": 2,
            "vat": "1"
        },
        {
            "name": "Clock",
            "price": 50,
            "qty": 1,
            "vat": "1"
        }
    ],
    "amount": "350",
    "status": 1,
    "client_name": "Tanur Mikrogalov",
    "client_email": "test@email.com",
    "client_tehudat": "123456789",
    "client_phone": "+972 58 569 8877",
    "foreign_card": "0",
    "card_mask": "455743******3431",
    "card_brand": "visa",
    "receipt": "",
    "inst": 1,
    "sign": "83f6fab69f7b237ee2db5d9993b84b5fe89ef722af6206a0ffe64480501f3784"
}

Each payment for which a webhook was sent is marked with a corresponding label. By clicking on this label, you can view the full contents of the request.

add_field parameter

If you add <span class="u-richtext-element">?add_field=any-string</span> to the payment link URL, this parameter will be included in the Webhook request body. Learn more.

Webhook security

Allpay supports two methods for verifying the authenticity of webhook requests:

Verification using the Webhook secret key

This method relies on an HMAC signature based on the SHA256 algorithm.

Signature generation algorithm:

  1. Remove the <span class="u-richtext-element">sign</span> parameter from the request.
  2. Exclude all parameters with empty values.
  3. Sort the remaining keys in alphabetical order.
  4. From the sorted list, take the parameter values and join them into a single string using a colon (:) as a separator.
  5. Append your Webhook secret key to the end of the string, preceded by a colon.
  6. Apply the SHA256 algorithm to the resulting string.
  7. Compare the result with the <span class="u-richtext-element">sign</span> parameter received in the request.

Platforms like Zapier support this type of verification using built-in tools, such as a custom script in Code by Zapier.

Example JavaScript for Zapier

const webhookKey = "YOUR WEBHOOK SECRET KEY";

// Parse the input params from JSON string to an object
const params = JSON.parse(inputData.params || '{}');

// Store the original signature from the request
const requestSignature = params.sign || null;

// Remove the 'sign' parameter before calculating the signature
delete params.sign;

function getApiSignature(params, webhookKey) {
    // Filter out empty values and sort keys alphabetically
    const sortedKeys = Object.keys(params)
        .filter((key) => {
            const value = params[key];
            return value !== null && value !== undefined && String(value).trim() !== '';
        })
        .sort();

    // Collect the values in sorted key order, process nested arrays (like "items")
    const chunks = [];
    sortedKeys.forEach(key => {
        const value = params[key];
        if (Array.isArray(value)) {
            value.forEach(item => {
                if (typeof item === 'object' && item !== null) {
                    Object.keys(item).sort().forEach(subKey => {
                        const val = item[subKey];
                        if (val !== null && val !== undefined && String(val).trim() !== '') {
                            chunks.push(String(val).trim());
                        }
                    });
                }
            });
        } else {
            chunks.push(String(value).trim());
        }
    });

    // Build the string to hash
    const baseString = chunks.join(':') + ':' + webhookKey;

    // Generate SHA256 hash
    const crypto = require('crypto');
    const hash = crypto.createHash('sha256').update(baseString).digest('hex');

    return { baseString, verifiedSignature: hash };
}

// Generate the signature
const result = getApiSignature(params, webhookKey);

// Return the original and calculated values
output = {
    requestSignature: requestSignature,
    baseString: result.baseString,
    verifiedSignature: result.verifiedSignature
};

Demo of webhook verification on Zapier

IP address verification

A simpler but less secure method is to check that the request comes from Allpay’s server IP address. You can request the current IP address by contacting our support team.

Retries and webhook deactivation

Your service must return a 200 HTTP status code to confirm successful receipt of the webhook. If any other status code is returned, the system will attempt to resend the webhook up to three more times. After that, the request will be considered failed and will not be retried.

If Allpay repeatedly encounters delivery errors when attempting to send webhook requests, the corresponding webhook will be automatically deactivated to prevent further attempts.

Keep reading
API
Integrations

Automatic digital receipt generation in Allpay

With Allpay, a digital receipt can be automatically generated for every successful payment — either a receipt (kabala) or a tax invoice/receipt (heshbonit mas/kabala), depending on your business type.

This allows you to fully automate the creation of accounting documents.

Integration with accounting services

Allpay is integrated with two licensed accounting document providers:

  • EasyCount
  • Morning

Both services are approved by the Israeli Tax Authority and are suitable for official accounting and reporting.

You can choose which service to use and connect it in your Allpay settings by following the provided instructions.

How it works

Once the integration is connected, receipts are automatically generated for every successful payment.

You do not need to create documents manually. The receipt automatically includes:

  • Customer name
  • Description of the payment
  • Payment amount
  • Payment method
  • Other transaction details

The document type (receipt or tax invoice/receipt) is also determined automatically based on your business structure.

After payment, the customer receives the receipt by email, and you can view and download it in your system at any time.

Documents for refunds

If you issue a refund, the corresponding refund documents are also generated automatically and sent to the customer.

This helps you stay compliant with accounting requirements without additional manual work.

Allpay’s own license (coming soon)

Allpay is in the process of obtaining its own license to issue digital receipts. Once approved, businesses will be able to generate accounting documents directly within Allpay — without the need for third-party integrations.

The launch of this feature will be announced in the official Allpay Telegram channel.

Important to know

EasyCount and Morning are independent services and are not part of Allpay. Allpay simply transfers transaction data to them for document generation.

Each service has its own pricing plans, which can be found on their respective websites. Allpay does not charge any additional fee for integrating with these services.

Automatic document generation saves time and reduces the risk of accounting errors.

Keep reading
How Allpay works

How to withdraw money from Allpay to a bank account

After a customer completes a payment, the funds are automatically transferred to your bank account. This process is called a payout.

There is no need to manually request transfers — Allpay automatically processes payouts according to the selected schedule.

Standard payout schedule

By default, payouts are made once per month.

All payments received during a calendar month are transferred on the 6th day of the following month. This option works well for most businesses, especially when daily transfers are not required.

The payout schedule is always available in your Allpay dashboard.

Weekly payouts

If you need to receive funds more frequently, you can activate the weekly payout option.

In this case, funds are transferred every week. An additional commission applies for this option.

What is deducted from payouts

Payouts are made after deducting the payment provider commission and VAT.

In your dashboard, you can see transaction history, payout amounts, and detailed calculations.

Allpay provides a transparent and predictable payout process so you can better manage your business cash flow.

Read the detailed article about payouts.

Keep reading
How Allpay works

Branding, image and video slider, and text description

By adding a logo, images, videos, and a text description, you can turn a payment link into a mini website or landing page.

Logo

The company logo is added in <span class="u-richtext-element">Settings</span> → <span class="u-richtext-element">Company</span>

Media slider

On the payment page, you can add a slider of up to four images or videos.

In the payment link settings, activate the <span class="u-richtext-element">Media</span> block and upload images from your device or add a YouTube link.

<span id="text">Text block</span>

The <span class="u-richtext-element">Text</span> block allows you to add a description and translate it into other languages.

Enter the text in any language and click the auto-translate button. The translation will be generated for all supported languages.

When a customer opens the payment page, the language is determined automatically based on the browser settings, so the customer sees the page in their own language.

If a translation is not added for a specific language, the text from the English tab will be used. Therefore, we do not recommend leaving the English tab empty.

If you make changes to the text, you can clear the translations and generate them again.

Keep reading
Payment links

Subscriptions (recurring billing)

Subscriptions are recurring charges from the customer’s card without the need to re-enter card details. In Hebrew, this is called "Oraat Keva", which literally means "standing instruction".

Activate the subscriptions module in the <span class="u-richtext-element">Settings</span> → <span class="u-richtext-element">Modules</span> section.

Creating a subscription

<span class="u-richtext-counter">1</span> When creating a payment link, clock "More" button to expand settings section and change payment type to “Subscription”.

<span class="u-richtext-counter">2</span> Specify when the subscription should start and end, then click the “Create Link” button.

<span class="u-richtext-counter">3</span> Once the customer subscribes using this link, the subscription will appear on the main screen under the “Subs” (Subscriptions) menu.

Subscription start options

Immediately — the first charge will occur at the moment the subscription is created, and then recur on the same day each month.

In N days — the first charge will occur after the specified number of days from the subscription start date, and then continue monthly on that same day.“Date” — the first charge will occur on the selected date. If the selected date is in the past, the subscription cannot be created.

Day of month — the first charge will occur on the specified day of the month and repeat monthly on that same day. If the selected day matches the subscription start date, the charge will happen immediately. If the 30th or 31st is selected but the month doesn’t have that date, the charge will occur on the last day of the month (e.g., February 28th).

Date — the first charge will occur on the selected date. If the selected date is in the past, the subscription cannot be created.

Subscription end options

No end date — charges will continue until the subscription is manually canceled in the dashboard.

Date — charges will continue until the selected date. For example, if the end date is set to August 15, 2030, and charges occur on the 16th of each month, the last charge will take place on July 15, 2030, and there will be no charge in August.

After N charges — the subscription will end after the specified number of charges. For example, to create a one-year subscription, set it to 12.

Subscription statuses

<span class="u-richtext-element" style="background-color: rgba(68, 203, 138, 0.5)">Active</span> — charges are being processed successfully.

<span class="u-richtext-element" style="background-color: rgba(113, 124, 144, 0.2)">Completed</span> — all scheduled charges have been successfully processed.

<span class="u-richtext-element" style="background-color: rgba(242, 201, 76, 0.8)">Cancelled</span> — you manually cancelled the subscription charges.

<span class="u-richtext-element" style="background-color: rgba(221, 94, 94, 0.4)">Failed</span> — a charge attempt failed; the system will make up to 6 more retry attempts.

Tracking subscriptions

Charges from subscriptions appear in two sections:

  1. On the main payments screen, alongside other payments;
  2. In the “Subs” section, where you can view the full charge schedule for each subscription.

Notifications about subscription charges are sent by email and Telegram — just like regular payments — if the notification option is enabled in <span class="u-richtext-element">Settings</span> ➙ <span class="u-richtext-element">Notifications</span>.

Cancelling a subscription

In the settings of the desired subscription, select “Cancel subscription”. The customer will receive an email notification that their subscription has been cancelled.

It is not possible to resume charges on a cancelled subscription. The customer will need to re-subscribe.

Failed charge

A scheduled subscription charge may fail if the card has insufficient funds, the credit limit is exceeded, the card has expired, or it has been cancelled.

If a charge fails, the system will automatically make up to 6 more attempts — one per day. If all attempts fail, the subscription will remain in “Failed” status, and the charge history will include a note: “Subscription stopped”.

In the subscription management menu, a “Retry charge” option will appear, allowing you to manually initiate a new charge. Before retrying, we recommend checking with the customer to make sure their card is working properly.

Subscriptions vs installments

Since installment payments work only with Israeli credit cards, some businesses use subscriptions to collect payments from international customers in multiple parts.

It’s important to understand the difference: With installments you are guaranteed to receive the full amount — even if the customer’s card has insufficient balance on future dates. With subscriptions, each charge is a separate transaction, and if the card has no funds at the time of billing, the charge will fail.

Keep reading
Payment links

Currencies and payment methods supported by Allpay

After connecting Allpay, you can immediately start accepting payments in Israeli shekels (ILS).

Customers can pay you from Israel or from abroad. The currency of the customer’s card does not matter — the payment will be processed successfully, and you will receive the amount in shekels. The customer’s bank will handle the currency conversion at the time of the charge.

Displaying prices in different currencies

For customer convenience, the amount on the payment page can be displayed in different currencies — for example, US dollars, euros, hryvnias, rubles, or even Norwegian kroner.

It is important to understand that this is only a visual display. The actual transaction is processed in shekels at the current exchange rate.

Accepting payments in USD or EUR without conversion

If you want to accept payments in US dollars or euros without conversion to shekels, this option is also available.

To enable it, you need to activate the relevant currency module in your Allpay dashboard and wait for approval. The approval process usually takes about a week.

Once activated, you will be able to create payment links in USD or EUR, and the funds will be transferred to your account in the same currency — without additional conversion.

Supported payment methods

Allpay supports major international card brands, including:

  • Visa
  • Mastercard
  • American Express
  • Diners
  • and others

Fast payment methods are also available:

  • Apple Pay
  • Google Pay
  • Bit

When paying with Bit, the customer does not need to enter a phone number. They simply click the Bit button on the payment page and confirm the transaction in the Bit app on their phone.

Customers can choose the payment method that is most convenient for them. All available payment methods are displayed on the payment page opened by the customer.

Keep reading
How Allpay works

How to accept online payments with Allpay

Allpay offers two ways to accept online payments: through payment links and through direct integration with your website.

You can use either option — or both at the same time.

Payment links

Payment links are the simplest and most common way to start accepting payments.

In your Allpay dashboard, you create a payment link by entering the name of the product or service and its price, then clicking one button. The system instantly generates a ready-to-use payment page.

You can send this link to your customer via WhatsApp, Instagram, Facebook, or any messenger. The customer opens the link and completes the payment by:

  • entering their card details
  • choosing Apple Pay or Google Pay
  • or paying with Bit

The same link can be used by an unlimited number of customers. You can also create as many new links as you need or edit existing ones.

All payments appear in real time in your Allpay dashboard.

This option is especially convenient if you don’t have a website and work through social media, messengers, or manual invoicing.

Website or online store integration

If you have an online store or a business website, Allpay can be integrated directly into it.

On the Allpay website, there is an “Integrations” section listing popular e-commerce platforms with step-by-step connection guides.

If your store runs on one of the supported platforms, no developer skills are required — simply follow the instructions.

Allpay supports widely used platforms, including:

  • Shopify
  • WordPress
  • Tilda
  • and others

You can also connect Allpay to websites built on no-code and AI-based platforms, including vibe coding solutions such as Lovable and similar services. In many cases, integration can be completed without deep technical knowledge by following standard setup instructions.

If your platform is not listed among the ready integrations, a developer may be required. They can connect the system using Allpay’s technical documentation, and our technical support team is available to assist if needed.

Which option should you choose?

You decide which method works best for your business:

  • Payment links only
  • Website integration only
  • Or both at the same time

Allpay gives you the flexibility to configure online payment acceptance according to your business model.

Keep reading
How Allpay works
Travolta confused - no search results
No results found.
Subscribe for important updates (ad-free)
Subscribe
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

FAQ

Found 100 out of 200
Text Link

Is there an additional fee for payment links?

No, payment links and site payment integration are our core services, included in the plan and available immediately after registration.

Text Link

Does Allpay only work as an app?

No, your customer won't need to install Allpay. They will access the payment page just like any other website page.

Text Link

What should I do if the required integration is not on the list?

Payment integration is typically handled by the platform. Reach out to the platform's support team and request integration with Allpay — we'll provide technical assistance. If the platform allows you to develop the integration yourself, contact us for support.

Text Link

How can I find out all the costs I will incur?

Complete information is available on the Pricing page.

Text Link

Do you have Apple Pay, Google Pay and Bit fast payment buttons?

We have Apple Pay and Bit. Google Pay coming in future.

Text Link

Are there any additional costs?

Digital receipts are connected as a third-party service, which costs about 20 ILS per month.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Travolta confused - no search results
No results found.

Start accepting payments

Connect a sales channel for your business today
Free sign up
7-day trial
Cancel anytime
Sign up

Currencies

Payments in ILS, USD and EUR without conversion and in any other currency with deposit in ILS.

Apple Pay and Bit buttons

Apple Pay and Bit buttons on the payment page for quick payment without additional fees.

Major card brands

Accepting payments with Visa, MasterCard, American Express, Diners, Discover, JCB and Isracard.

Digital receipts

Automatic generation of digital receipts (kabalot and hashbonit mas) through integration with a licensed service.