Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
bgColor#79E2F2#B3F5FF

Webhook Payload Structure

The basic structure of a typical webhook payload is shown below:• an

  • Event field describing the type of event

...

  • Data object. The contents of this object will vary depending on the event, but typically it will contain details of the event, including:

  • Reference id: containing the ID of the transaction

  • Amount: describing transaction amount

  • Currency: currency in which transaction was initiated in

  • Fee: describes applicable charges to be deducted from the Transaction Amount

  • Narration: Transaction narration
    Status: describing the status of the transaction

  • Channel Type: describing channel which transaction originated from { "Card", "Transfer", "Account" }

Panel
panelIconIdatlassian-info
panelIcon:info:
bgColor#FFC400

Below shows the list of the events currently raised on the Leatherback platform. We would update as we onboard on more events in the nearest future

Event

Name

Collections

Category

Operation

Description

Sample

Event Name

Description

Sample

Payment Successful

A successful payment initiated

Code Block

Payment Link

This webhook structure shows a typical payment link event. This may return successful/failed

Code Block
languagejs
{
  "Event": "PaymentSuccessful",
  "Data": {
    "Environment": "TestLive",
    "Reference": "LUJSRCKLBR9P5XDDPG",
    "LB-1389432211"AmountPaid": 300,
    "Amount": 90300,
    "Currency": "GBPNGN",
    "AppFee": 0,
    "Narration": "Payment For LB-1389432211",
    "PaymentStatus": "Successful",
    "ChannelType": "Card",
    "RequestSource": "PaymentLink",
    "Metadata": {
      "alias": null"y3dumte"
  } } 	}
  }
} 

Collections

Payment FailedPayment initiated failed

This is a typical webhook payload for Payments (It may return as success or failed transaction

Code Block
languagejs
{
  "Event": "PaymentSuccessful",
  "Data": {
    "Environment": "TestLive",
    "Reference": "LUJSRCKLBR9P5XDDPG",
    "LB-1389432211"AmountPaid": 300,
    "Amount": 90300,
    "Currency": "GBPNGN",
    "AppFee": 0,
    "Narration": "Payment For LB-1389432211",
    "PaymentStatus": "FailedSuccessful",
    "ChannelType": "Card",
    "RequestSource": "API",
    "Metadata": null
  }
}
	}
  }
} 

Disbursements

SendR

This is a typical SendR Webhook Payload. The event may be successful or failed

Code Block
languagejs
{
    "Event": "PaymentSuccessful",
    "Data": {
        "Reference": "P123456789",
        "WebhookEventType": "PayOutFundTransferCompleted",
        "CreditAccountName": "John Doe",
        "CreditAccountNumber": "111111111",
        "DebitAccountName": "Jane Doe",
        "DebitAccountNumber": "222222222",
        "Amount": 1000.00,
        "Currency": "USD",
        "Mode": "<string>",
        "TransactionStatus": "Success",
        "Message": "<string>"
    }
}

Disbursements

Account

This is a typical webhook payload structure for Account/ Maintenance operations.

Code Block
languagejs
{
    "Event": "<string>",
    "Data": {
        "AccountName": "John Doe",
        "AccountNumber": "123456789",
        "AuthorizationStatus": "Processing",
        "AuthorizationMessage": "<string>",
        "CustomerName": "John Doe",
        "CustomerId": "a1b2c3d4-e5f6-g7h8-i9j0-k1l2m3n4o5p6",
        "TenantReference": "<string>",
        "WebhookEventType": "<string>"
    }
}

Disbursements

Payout

This is a typical webhook payload for Payout operation.

Code Block
languagejs
{
    "Event": "<string>",
    "Data": {
        "PaymentReference": "123456789",
        "TenantReference": "987654321",
        "FundsTransferStatus": "TransactionSettled",
        "Amount": 1000.00,
        "CurrencyCode": "USD",
        "BeneficiaryAccount": "1000.00",
        "BeneficiaryName": "John Doe",
        "BeneficiaryEmail": "johndoe@example.com",
        "BookDate": "2023-08-07T10:16:33Z",
        "ValueDate": "2023-08-08T10:16:33Z",
        "Service": "Payout",
        "EnvironmentType": "Live",
        "TenantId": "a1b2c3d4-e5f6-g7h8-i9j0-k1l2m3n4o5p6",
        "Mode": "<string>"
    }
}

...