# 1. Payment

The payment initiation service supports two different mechanisms. Although these mechanisms operate on the same principle, they have different architectures designed to handle varying volumes of transactions.

The **Storm 🍃 model** supports up to 500 transactions. When a transaction order is sent, it creates the payments and returns relevant details such as payment IDs and UniqueCodes in the API response before processing, making it easier to track them.

The **Tsunami 🌊 model** supports up to 50,000 transactions. When a transaction order is sent, the entire request is handed over to Paywall’s queues, and only a `BulkPayment` record is created, returning the `BulkPaymentId` as the response. This ensures that the client (you) receives a fast response from Paywall APIs. All transactions are then processed using special algorithms and flow principles, and the result of the batch operation is sent to the `CallbackUrl` provided in the request.

The **Tsunami 🌊 model** is designed to handle high-volume data processing. For this reason, we strongly recommend using <mark style="color:green;">`GZip`</mark> or <mark style="color:green;">`Brotli`</mark> compression in your requests. This ensures that the data transmitted over the network is compressed, potentially reducing latency by up to **90%**.
