Invoices

Process description

To transfer funds for provided products/services to a merchant account, an invoice must be paid.

To make a payment from the Calypso payment form, there are the following steps to be performed:

  • Send API request to create an invoice (POST https://api.calypso.finance/api/v1/invoice/single/create)

  • Copy generated invoice ID from the response

  • Send API request POST https://api.calypso.finance/api/v1/invoice and copy the data required for a user to complete this invoice payment

  • Add copied data to a payment page and share a page link with a user

Further steps to complete payment are performed by a user in the payment form.

Below is a scheme demonstrating the listed steps.

Names of requests on the scheme indicate certain payment API methods.

Create invoice request example

Example of the create invoice request:

{
  "timestamp": 13292792792,
  "account": "0xc195df92dd9db2a8f28e597981f113d6e7582f8b",
  "payload": {
    "amount": 0.001,
    "currency": "ETH",
    "description": "invoice for client 1",
    "idempotencyKey": "1be6a518-6dcd-477d-96af-dd914b1300ce",
    "type": "SINGLE"
  }
}

Invoice statuses

Diagram nodes indicate invoice statuses, arrows indicate processes a successful completion of which transfers an invoice from one status to another.

Invoice statuses

Status
Description

PENDING_PAYMENT

• A new unpaid invoice. • Client has transferred funds, but the funds has not yet been credited to the account.

MEM_POOL_FOUND

Incoming transaction to invoice wallet is found in blockchain mempool.

PAID

Invoice is paid.

PENDING_INTERVENTION

• Intervention from the merchant is awaited. • Client transferred insufficient amount. • Client has transferred an amount exceeding an invoice amount. • Funds were transferred from different client accounts.

COMPLETED

Funds are transferd to merchant wallet.

ARCHIVED

Invoice is deleted by merchant.

Last updated