Refunds
Learn how to get refund transactions to your server via webhooks
This webhook service keeps you informed about any successful refund transaction triggered by the user or merhant including both one-time and subscription based payments.
Setup the Endpoint URL
Webhook events are sent to your server via HTTP POST
. You configure the endpoint URL through Developer Tools / Webhooks menu under your project.
Webhook Events Sending Rules
The webhook notification for refunds is sent within the first 5 minutes. For the delivery to be considered successful, your system must return an HTTP 200 status code. Any status code other than 200 will be considered a failure, and the following retry process will apply:
If the delivery fails, the process will be retried after 10 minutes.
If the second attempt fails, the next three attempts will be made at 30-minute intervals.
If the delivery still fails after these three attempts, the next retry will occur 1 hour later.
If this attempt also fails, the process will not be retried, and the process will be terminated.
Events Format
Webhook events are serialized in JSON. The body of a POST
request to your server will contain the serialized event.
Fields
queue
Webhook type and history.
queue.type
It specifies that the webhook is of the refund type. For this webhook type, it can only take the value of TransactionRefund
.
queue.eventType
It is the transaction type information. In this webhook, since only a refund transaction occurs, it can only take the value of refund
.
parameters
Details about the webhook.
is_refund
This value is always sent as 1.
refund_price
Refunded amount.
refund_reason
Refund reason.
credit_card
Credit card used in the transaction.
status
Contains the transaction type associated with refund, possible values:
trial
: Trial start transaction
trial_to_paid
: Trial conversion transaction
renewal
: Subscription renewal
reactivate
: Reactivation of a passive subscription
consumable
: Purchase of one-time package
start_paid
: Subscription start transaction without trial
transaction_id
Unique ID of transaction.This information is used in refund transactions.
provider_transaction_id
Transaction ID in the relevant payment provider.
currency
Currency used in the transaction.
provider_name
Payment provider name.
create_date
Transaction start date.
subscriber_id
Subscriber ID associated with the transaction.
custom_parameters
If the subscriber has custom parameters, they are sent in this field.
original_purchase_date
Subscriptions original start date.
package_id
ID of the package purchased.
expire_date
Expiration date if it is a subscription purchase.
purchase_date
The transaction completion date.
payment_type
Contains the type of payment, possible values :
subscription
: Transaction is for a subscription
consumable
: Transaction is for a in-app product or one-time payment.
quantity
The number of items purchased.
package_price
Package price.
price
Transaction amount.
Last updated