Curra Documentation
  • 👋Welcome
  • 🌪️Vortex
    • 🔑Ownership NFT
    • 🔓Rules
    • ⛽Gas Pump
    • ⛓️Available blockchains
  • 🪙Pricing
  • 👨‍💻Integration Guide
  • API Reference
  • Features
    • Authorization
    • Create Proxy Wallet
    • Retrieve Webhook
Powered by GitBook
On this page
  • Introduction
  • Setup
  • Webhook payload
  • Body:
  • Examples:
  1. Features

Retrieve Webhook

PreviousCreate Proxy Wallet

Last updated 1 year ago

Introduction

We will notify you on each incoming payment to a and when of assets transferred to your Omnibus accounts (Forwarding webhooks).

We will notify you up to 10 times until your server respond http success status (200-299)

We use exponential backoff with a 1-minute delay as a seed value, so it will retry at most 10 times spaced after 1 minute, 2 minutes, 4 minutes, 8 minutes, etc.

In order to maintain non-custodial nature of Curra - we strongly recommend to double-check incoming webhooks via your own RPC.

Setup

You can set your server URL on the to receive webhooks:

Webhook payload

Method: POST

Headers:

  • content-type: application/json

  • x-api-key: your_api_key

GET https://yourwebsite.com/curra/incoming-payment-hook

Body:

Key
Type
Description

id

string*

unique identifier

toAddress

value: string* uniqueId: string* meta: string

value – receive address uniqueId - uniqueId provided on address creation, generated if not provided meta – meta provided on address creation

fromAddress

string*

sender address

valueUnits

string*

payment amount in units

value

string*

payment amount in decimal format

blockchain

string*

block

number*

block number in which payment was mined

txHash

string*

trasaction hash

confirmations

number*

blockchain confirmations count

assetId

string*

asset id of a payment

status

string* "pending" or "success"

pending – payment is not confirmed yet success - payment confirmed on the address

subStatus

string*

blockchain-specific status, can be used in informational purposes

statusDescription

string*

human-readable description of status field

Examples:

You will receive notification on each "confirmations" field update

{
    "id": 99,
    "toAddress": {
        "value": "0xf51eb0786cbdb8eb6e8175f0f32ecf90b04ceb84",
        "uniqueId": "unique id you specified on address generation",
        "meta": "meta you specified when address was created"
    },
    "value": "1.0",
    "valueUnits": "1000000000000000000",
    "blockchain": "ETHEREUM",
    "fromAddresses": ["0x67b1d87101671b127f5f8714789c7192f7ad340e"],
    "block": 171,
    "txHash": "0x0b15d671d9fe9cfe110c2d3a03867cc0525f6aeee45fe21ff66d07e0fd38ef46",
    "confirmations": 10,
    "assetId": "asset-id-123-123",
    "status": "pending",
    "subStatus": "pending",
    "statusDescription": "Waiting for confirmations"
}

Payment considered "successful" after 21 confirmations.

{
    "id": 99,
    "toAddress": {
        "value": "0xf51eb0786cbdb8eb6e8175f0f32ecf90b04ceb84",
        "uniqueId": "unique id you specified on address generation",
        "meta": "meta you specified when address was created"
    },
    "value": "1.0",
    "valueUnits": "1000000000000000000",
    "blockchain": "ETHEREUM",
    "fromAddresses": ["0x67b1d87101671b127f5f8714789c7192f7ad340e"],
    "block": 171,
    "txHash": "0x0b15d671d9fe9cfe110c2d3a03867cc0525f6aeee45fe21ff66d07e0fd38ef46",
    "confirmations": 21,
    "assetId": "asset-id-123-123",
    "status": "success",
    "subStatus": "deposited",
    "statusDescription": "Deposited"
}
{
    "id": 99,
    "toAddress": {
        "value": "0xf51eb0786cbdb8eb6e8175f0f32ecf90b04ceb84",
        "uniqueId": "unique id you specified on address generation or default one",
        "meta": "meta you specified when address was created"
    },
    "value": "1.0",
    "valueUnits": "1000000000000000000",
    "blockchain": "ETHEREUM",
    "fromAddress": "0x67b1d87101671b127f5f8714789c7192f7ad340e",
    "block": 171,
    "txHash": "0x0b15d671d9fe9cfe110c2d3a03867cc0525f6aeee45fe21ff66d07e0fd38ef46",
    "confirmations": 21,
    "assetId": "asset-id-123-123",
    "status": "success",
    "subStatus": "forwarded",
    "statusDescription": "Waiting for confirmations"
}

In order to authorize Curra notifications, like , you should compare webhook request's X-API-KEY header with your API key.

available values at "API value" column

incoming payments notifications
here
Proxy Wallet
notifications page