Send Hbar
The following sample will show you how to make a payment. We will first generate a request for the end user with details informations about the transaction. Once validated, you will get notified about transaction's status.
Prerequisites:
Getting startedStep 1: Get Xact Fees
Before initializing the payment, you probably need to get the fees from our service. For that matter, we will simply need to specify the amount of the transaction
/* Set your Amount in Hbar */
$hbarAmount = 10;
/* Get the service fees */
$fees = $client->getXactFeesPayment($hbarAmount);
Step 2: Initialize a Payment
When initializing a payment, a request is sent to the end user for authorization. A Webhook must be defined as a second parameter and will be called every time a new payment is successful.
1.1 From an account to an account
/* Hbar to transfer */
$hbarAmount = 10;
/* AccountId that send the Hbar */
$fromAccountId = '';
/* AccountId that received the Hbar */
$toAccountId = '';
/* Add a memo */
$memo = '';
/* Custom uniq ID */
$uniqId = '';
/* Define a Webhook */
$webhook = '';
/* Request for payment */
$client->pay([
$hbarAmount,
$fromAccountId,
$toAccountId,
$memo,
$uniqId
],$webhook);
1.2 From an account to an account and to a middleman
You can also add middleman account to pay throughout the process. Middleman take fees, those fees can be a fixed amount of HBAR (MiddleManFeesType.HBAR
) or a percent (MiddleManFeesType.PERCENT
) of the hbarAmount
, the type is defined in the middleManTypeOfFees
property.
/* Hbar to transfer */
$hbarAmount = 10;
/* AccountId that send the Hbar */
$fromAccountId = '';
/* AccountId that received the Hbar */
$toAccountId = '';
/* add a memo */
$memo = '';
/* Add 3rd-party payment */
$middleMen = [
[
'middleManAccountId' => '0.0...',
'middleManTypeOfFees' => 'hbar',
'middleManFees' => 10
],
[
'middleManAccountId2' => '0.0...',
'middleManTypeOfFees' => 'percent',
'middleManFees' => 2
],
];
/* Define a Webhook */
$webhook = '';
/* Request for payment */
$client->pay([
$hbarAmount,
$fromAccountId,
$toAccountId,
$middleMen,
$memo
],$webhook);
On each user's validation, you will receive a JSON like this :
Fields
Type
Description
fromAccountId
string
Account Id of the emitter
toAccountId
string
Account Id of the receiver
amount
number
HBAR sent from fromAccountId to toAccountId
memo
string
Memo sent
status
'Accepted' or 'Refused'
Status of the request
uniqId
string
Custom Uniq Id
Find more details on the Webhook implementation here
⭐ Congratulations! You have successfully completed a payment process
Last updated