Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.iterapay.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

A One-time invoice is generated for a specific order with a fixed fiat amount and a strict time limit to protect against cryptocurrency volatility. Below is the step-by-step payer experience.

Stage 1: Selecting a payment method

Upon following the payment link, the client lands on the currency selection page. The screen is divided into two functional areas:

Order details (Left panel)

  • Name and Amount: Displays the invoice name (e.g., “Gift card”) and the base cost in the merchant’s currency (e.g., $200).
  • Description: Details of the purchase (e.g., “Shopping at the Christmas Market, including special offers”).
  • Quote expire: A countdown timer indicating the exact date and time until the initial invoice offer is valid (e.g., Feb 15, 2025 11:22:11).

Payment method selection (Right panel)

In this block, the base currency is converted into cryptocurrency. The client sees a list of available payment methods pre-configured by the merchant.
  • Each card displays the exact amount required in the specific cryptocurrency (e.g., 200 USD Coin on Ethereum, or 0.00193355 Ethereum).
  • Action: The client selects the desired cryptocurrency and clicks the Pay now button to proceed.
Screen 18

Stage 2: Transferring funds (Payment Page)

Once the method is selected, the exchange rate is temporarily locked, and the client receives the exact transfer details.
  • Rate fixed for: A dynamic countdown timer (e.g., 00:10:13) showing the time window during which the exchange rate is guaranteed. The transfer must be initiated before this timer expires.

Payment methods

  1. Scan to pay (QR code): The client can scan the generated QR code using a mobile crypto wallet. The exact amount and the recipient’s address will be populated automatically.
  2. Manual payment: The client can manually copy the credentials:
    • Address: The unique wallet address generated for this specific invoice.
    • Amount: The exact number of tokens required.
⚠️ Security Warning: A strict warning is displayed below the QR code, reminding the payer to send funds only via the selected network (e.g., “Only send USDC ERC20 to this address. Sending any other cryptocurrency or a token on a different network will result in the irreversible loss of your funds”).
Screen 19

Stage 3: Confirmation and Results

After the client initiates the transfer, the page automatically listens for blockchain confirmations. Depending on the received amount, the system will display one of the following scenarios:

Scenario A: Successful full payment (Payment confirmed)

If the exact required amount (or slightly more within acceptable limits) is received:
  • A green checkmark appears with the status Payment confirmed.
  • A success message is displayed (e.g., “You have successfully sent 200 USD Coin”).
  • View details: The client can expand the receipt to view the TxHash (with a link to the block explorer), Invoice name, Invoice ID, and the Amount paid.
  • Action: The client can click Copy transaction details for their records.
Screen 20

Scenario B: Partial payment (Partial payment received)

If the client sends an amount less than the required total (e.g., forgetting to account for wallet withdrawal fees):
  • A yellow warning icon appears with the status Partial payment received.
Screen 21
  • The message specifies the discrepancy (e.g., “A payment of 195.00 USD Coin was received, which is less than the required 200.00 USD Coin”).
  • View details: Expanding the details highlights the Remaining balance in red (e.g., 5.00 USDC).
  • Action: The client must click the Pay remaining balance button.
    • Paying the remainder: Clicking the button redirects the client back to the Select payment method screen. The left panel will now reflect the updated state: Previously paid: $195.00. Remaining to pay: $5.00. The client can select a cryptocurrency again and complete the missing payment.
Screen 22

Scenario C: Overpayment (Overpayment received)

If the client accidentally sends significantly more than required:
  • A blue info icon appears with the status Overpayment received.
  • The message indicates that the received amount exceeds the requirement.
  • View details: The receipt shows the Amount due, the actual Amount paid (in green), and the Remaining balance(which represents the overpaid surplus).
  • Action: The client is prompted to click Contact support if they wish to request a refund for the overpaid amount.
Screen 23

Scenario D: Payment failed

If the transaction fails on the blockchain or is flagged and rejected by the system:
  • A red alert icon appears with the status Payment failed.
  • A message reads: “The transaction could not be completed. Please try again or contact support.”
  • View details: Displays the TxHash of the failed attempt and the invoice details.
  • Action: The client can click Contact support for assistance.
Screen 24

Stage 4: Updating data in the Merchant’s dashboard

After the client performs the actions described above, the data in the control panel is updated automatically.

Invoice status changes

  • Paid: In the scenario of full payment.
  • Partially paid: In the scenario of partial payment.
  • Overpaid: If the client sent an amount exceeding the one specified in the invoice.

Updating financial indicators

  • Payments (Received payments): Increases by the actual amount received.
  • Expected receivables (Expected receipts): Decreases by the amount received.
Logic: The client’s obligation is considered fulfilled (fully or partially), so the amount is transferred from the “Expected” category to the “Received” category. The next step for the merchant is to consolidate the received funds (Collect function).