> For the complete documentation index, see [llms.txt](https://lara-script.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://lara-script.gitbook.io/docs/admin-panel-functionality/merchants/2328.io.md).

# 2328.io

Integration with 2328.io allows you to accept crypto payments from customers by automatically generating a payment address. After the funds are received, the platform gets a webhook notification and confirms the request without operator involvement.

Service website: [https://2328.io](https://2328.io/) API documentation: [https://doc.2328.io](https://doc.2328.io/)

➡️ A separate module is used for automatic payouts — [see the 2328.io auto-payouts documentation.](https://lara-script.gitbook.io/docs/admin-panel-functionality/general/auto-withdrawals/2328.io)

#### 📌 Integration features

* Accepting crypto through 2328.io (merchant)
* Automatic generation of a payment address / QR code
* Webhook notifications about payment status
* Support for multiple networks and tokens
* Automatic conversion of incoming funds to USDT (configured in the 2328.io personal account)
* 2328.io quote provider for dynamic rates in directions

#### 🔑 Getting keys in the 2328.io personal account

**Step 1. Registration**

Register at <https://2328.io/> and log in to your personal account.

**Step 2. Creating a project**

1. Go to the **Projects** (Business → Projects)
2. Click **“+ New project”**<br>

   <figure><img src="/files/cAYi0IAxLRaXZcQldC0E" alt=""><figcaption></figcaption></figure>
3. Fill out the form:
   * **Project name** — your project name
   * **Project URL** — your website address
   * **Telegram contact** — your Telegram contact for communication with moderation
4. Click **“Send for review”**

> ⚠️ Each project goes through manual moderation. Review usually takes a few hours. Until approval, the project will have the **“MODERATION”**&#x73;tatus. After approval, the status will change to **“ACTIVE”**.

**Step 3. Project setup**

After activation, open the project and configure the parameters to suit your needs:

<figure><img src="/files/otMFtNMozRRzYCanpJmH" alt=""><figcaption></figcaption></figure>

| Section                 | Description                                                   |
| ----------------------- | ------------------------------------------------------------- |
| Auto-conversion to USDT | Automatic conversion of incoming payments to USDT             |
| PayForm branding        | Logo, colors, and design of the payment form for the customer |
| Fee split and markup    | Passing the fee to the payer, currency markups                |
| Available currencies    | Which coins and networks the customer sees when paying        |
| Invoice lifetime        | Default validity period of the payment link                   |
| Telegram notifications  | Payment alerts in a Telegram chat                             |

⚠️ We recommend setting up auto-conversion to USDT - then you will not need to keep a reserve USDT balance for further use of the auto-payout functionality; for this, just go to the settings of this section and select the source currencies for this rule to work.

**Step 4. Getting keys**

In the block **“Project details”** copy the required data:

<figure><img src="/files/c2DdK9mavn5L7KsEf7Vr" alt="" width="563"><figcaption></figcaption></figure>

| Field in 2328.io    | Where it is used in Lara Script                    |
| ------------------- | -------------------------------------------------- |
| **Project ID**      | Merchant and auto-payouts                          |
| **Payment API Key** | Merchant only (payment acceptance)                 |
| **Payout API Key**  | Auto-payouts module only (not needed for merchant) |

> 💡 To configure the merchant, you need **Project ID** and **Payment API Key**.

#### ⚙️ Connecting the merchant in Lara Script

1. Go to **Admin panel → Merchants**
2. Select the merchant **2328.io**
3. Fill in the fields:

| Field in Lara Script | Value           |
| -------------------- | --------------- |
| Project UUID         | Project ID      |
| API key              | Payment API Key |

4. Save changes

#### 🪙 Currency setup

After connecting the merchant, be sure to configure the currencies.

Go to: **General → Currencies**

**📌 Main rule**

The currency ticker and network code must exactly match the 2328.io reference.

Full reference: <https://doc.2328.io/uk/docs/references>

**Currency and network mapping**

| Currency ticker | Merchant network                                             |
| --------------- | ------------------------------------------------------------ |
| `USDT`          | TRX-TRC20, BSC-BEP20, ETH-ERC20, AVAX-C, POL-MATIC, TON, SOL |
| `USDC`          | BSC-BEP20, ETH-ERC20, AVAX-C, POL-MATIC, SOL                 |
| `BTC`           | BTC                                                          |
| `ETH`           | ETH-ERC20                                                    |
| `BNB`           | BSC-BEP20                                                    |
| `TRX`           | TRX-TRC20                                                    |
| `LTC`           | LTC                                                          |
| `DASH`          | DASH                                                         |
| `TON`           | TON                                                          |
| `AVAX`          | AVAX-C                                                       |
| `POL`           | POL-MATIC                                                    |
| `SOL`           | SOL                                                          |
| `DOGE`          | DOGE                                                         |

> ⚠️ If the ticker or network is specified incorrectly, the system will not be able to create a payment, and the request will not receive a payment address.

> ℹ️ In the project settings on the 2328.io side (the “Available currencies” section), the same coins and networks that you use on the platform must be enabled.

#### 🔄 Setting up exchange directions

Go to: **Admin panel → General → Directions**

For the required direction:

1. Specify **Merchant: 2328.io** in the direction or currency settings
2. If necessary, choose a quote with a provider **2328.io**
3. Save the direction

#### ✅ How it works

1. The customer creates a request in a direction with the 2328.io merchant
2. The platform sends a request to the API → a wallet address is generated for the customer to pay
3. The customer sends cryptocurrency to the generated address
4. 2328.io records the incoming payment → sends a webhook to the platform
5. Lara Script receives the notification → the request is confirmed

➡️ Together with the auto-payouts module, you can build a fully automatic direction.

#### 📊 Transaction monitoring

All incoming payments are available in the 2328.io personal account:

**History → Transaction history**

When a transaction is expanded, full information is displayed:

<figure><img src="/files/91OVPDnVwEPnwENtuD3q" alt=""><figcaption></figcaption></figure>

Also available:

* **Webhook details** — view the sent webhook
* **Resend webhook** — resend if the platform did not receive the notification

**2328.io payment statuses**

| Status      | Description                        |
| ----------- | ---------------------------------- |
| `pending`   | Created, awaiting initialization   |
| `check`     | Awaiting payment from the customer |
| `paid`      | Successfully paid                  |
| `underpaid` | Underpaid                          |
| `overpaid`  | Overpaid (credited)                |
| `cancel`    | Canceled / expired                 |
| `aml_lock`  | Blocked by AML check               |

> ℹ️ Statuses `paid` and `overpaid` should be treated as successful payment.

#### 💱 Conversion on the 2328.io balance

The 2328.io service offers conversion between currencies on the balance **without fees**. This is convenient if you accept payments in different coins but want to keep the balance, for example, in USDT.

Auto-conversion is also configured in the project parameters (the “Auto-conversion to USDT” section).

#### 📈 Using 2328.io quotes

Lara Script supports the quote provider **2328.io** — current rates are taken directly from the service.

1. Go to: **Exchange rates → Quotes**
2. Click **“Add”**
3. When creating a formula, select the quote source **2328.io**
4. Save the quote

After that, the quote can be used:

* in currency formulas
* in exchange direction formulas

➡️ The same service can simultaneously provide current rates, accept payments, and perform auto-payouts.
