# Payout Webhook (Finnet -> Partner)

Webhook to notify the merchant about a payout result (success/failure).

| Environment | Method | URL Path                 | Version |
| ----------- | ------ | ------------------------ | ------- |
| Development | POST   | PayoutWebhookUrlMerchant | V 1.0.0 |
| Production  | POST   | PayoutWebhookUrlMerchant | V 1.0.0 |

## Request

### Header Request

<table><thead><tr><th width="156">Name</th><th width="115.6666259765625">Type</th><th width="135.6666259765625">Mandatory</th><th>Description</th></tr></thead><tbody><tr><td>Authorization</td><td>String</td><td>M</td><td><p>Basic Authentication header.</p><p>Example value: <code>Basic dW5kZWZpbmVkOnBhc3N3b3Jk</code></p></td></tr><tr><td>accept</td><td>String</td><td>M</td><td>Media type. Use <code>application/json</code>.</td></tr><tr><td>Idempotency-key</td><td>String</td><td>M</td><td>A unique key to prevent processing duplicate requests. Can be your reference_id or any GUID.</td></tr><tr><td>for-user-id</td><td>String</td><td>M</td><td>Subaccount user ID that this transaction is for.</td></tr></tbody></table>

### Body Request

<table data-full-width="false"><thead><tr><th width="74">No</th><th>Name</th><th>Type</th><th>Mandatory</th><th>Min Length</th><th>Length</th><th>Description</th></tr></thead><tbody><tr><td>1</td><td>reference_id</td><td>string</td><td>Yes</td><td></td><td>255</td><td>Client unique reference for this payout</td></tr><tr><td>2</td><td>channel_code</td><td>string</td><td>Yes</td><td></td><td>5</td><td>Destination bank channel code (example: 91014)</td></tr><tr><td>3</td><td>channel_properties</td><td>object</td><td>Yes</td><td></td><td>-</td><td>Destination account details</td></tr><tr><td>3.1</td><td>channel_properties.account_number</td><td>string</td><td>Yes</td><td></td><td>50</td><td>Destination account number</td></tr><tr><td>3.2</td><td>channel_properties.account_holder_name</td><td>string</td><td>Yes</td><td></td><td>255</td><td>Destination account holder name</td></tr><tr><td>4</td><td>amount</td><td>number</td><td>Yes</td><td></td><td>-</td><td>Payout amount (in the specified currency)</td></tr><tr><td>5</td><td>description</td><td>string</td><td>No</td><td></td><td>255</td><td>Optional payout note/description</td></tr><tr><td>6</td><td>currency</td><td>string</td><td>Yes</td><td></td><td>3</td><td>Currency code (ISO 4217), example: IDR</td></tr></tbody></table>

### Sample Request

```
{ 
  "reference_id": "myref-1482928194", 
  "channel_code": "91014", 
  "channel_properties": { 
    "account_number": "000000000099", 
    "account_holder_name": "Michael Chen" 
  }, 
  "amount": 10000, 
  "description": "July payout", 
  "currency": "IDR" 
} 
```

## Response

### Body Response

<table data-full-width="false"><thead><tr><th width="73.33331298828125">No</th><th>Name</th><th>Type</th><th>Mandatory</th><th>Min Length</th><th>Max Length</th><th width="189.333251953125">Description</th></tr></thead><tbody><tr><td>1</td><td>id</td><td>string</td><td>M</td><td></td><td>36</td><td>Unique payout ID generated by the system.</td></tr><tr><td>2</td><td>amount</td><td>number</td><td>M</td><td></td><td>-</td><td>Payout amount.</td></tr><tr><td>3</td><td>channel_code</td><td>string</td><td>M</td><td></td><td>5</td><td>Payout channel code.</td></tr><tr><td>4</td><td>currency</td><td>string</td><td>M</td><td></td><td>3</td><td>Currency code (ISO 4217).</td></tr><tr><td>5</td><td>reference_id</td><td>string</td><td>M</td><td></td><td>255</td><td>Merchant reference ID for this payout.</td></tr><tr><td>6</td><td>status</td><td>string</td><td>M</td><td></td><td>20</td><td><p>Payout status:</p><ul><li>ACCEPTED</li><li>COMPLETED</li><li>FAILED</li><li>SUCCEEDED</li><li>CANCELLED</li><li>REVERSED</li></ul></td></tr><tr><td>7</td><td>created</td><td>string (date-time)</td><td>M</td><td></td><td>24</td><td>Payout creation timestamp (ISO 8601).</td></tr><tr><td>8</td><td>updated</td><td>string (date-time)</td><td>M</td><td></td><td>24</td><td>Last payout update timestamp (ISO 8601).</td></tr><tr><td>9</td><td>estimated_arrival_time</td><td>string (date-time)</td><td>O</td><td></td><td>24</td><td>Estimated time the funds will arrive.</td></tr><tr><td>10</td><td>failure_code</td><td>string</td><td>O</td><td></td><td>50</td><td>Payout failure code (only when the payout fails).</td></tr><tr><td>11</td><td>business_id</td><td>string</td><td>M</td><td></td><td>36</td><td>Merchant/business ID.</td></tr><tr><td>12</td><td>channel_properties</td><td>object</td><td>M</td><td></td><td>-</td><td>Destination account details.</td></tr><tr><td>12.1</td><td>channel_properties.account_holder_name</td><td>string</td><td>M</td><td></td><td>255</td><td>Destination account holder name.</td></tr><tr><td>12.2</td><td>channel_properties.account_number</td><td>string</td><td>M</td><td></td><td>50</td><td>Destination account number.</td></tr><tr><td>12.3</td><td>channel_properties.account_type</td><td>string</td><td>O</td><td></td><td>20</td><td>Destination account type.</td></tr><tr><td>13</td><td>receipt_notification</td><td>object</td><td>O</td><td></td><td>-</td><td>Receipt notification settings.</td></tr><tr><td>13.1</td><td>receipt_notification.email_to</td><td>array[string]</td><td>O</td><td></td><td>-</td><td>Primary recipient email list.</td></tr><tr><td>13.2</td><td>receipt_notification.email_cc</td><td>array[string]</td><td>O</td><td></td><td>-</td><td>CC email list.</td></tr><tr><td>13.3</td><td>receipt_notification.email_bcc</td><td>array[string]</td><td>O</td><td></td><td>-</td><td>BCC email list.</td></tr><tr><td>14</td><td>metadata</td><td>object</td><td>O</td><td></td><td>-</td><td>Custom additional data from the merchant.</td></tr><tr><td>14.1</td><td>metadata.my_custom_id</td><td>string</td><td>O</td><td></td><td>255</td><td>Custom ID from the merchant.</td></tr><tr><td>14.2</td><td>metadata.my_custom_order_id</td><td>string</td><td>O</td><td></td><td>255</td><td>Custom order ID from the merchant.</td></tr></tbody></table>

### Sample Response

```
{
  "id": "disb-571f3644d2b4edf0745e9703",
  "amount": 10000,
  "channel_code": "91014",
  "currency": "string",
  "reference_id": "myref-1482928194",
  "status": "ACCEPTED",
  "created": "string",
  "updated": "string",
  "estimated_arrival_time": "string",
  "failure_code": "INSUFFICIENT_BALANCE",
  "business_id": "5785e6334d7b410667d355c4",
  "channel_properties": {
    "account_holder_name": "string",
    "account_number": "string",
    "account_type": "string"
  },
  "receipt_notification": {
    "email_to": [
      "string"
    ],
    "email_cc": [
      "string"
    ],
    "email_bcc": [
      "string"
    ]
  },
  "metadata": {
    "my_custom_id": "merchant-123",
    "my_custom_order_id": "order-123"
  }
}
```

### Payout Webhook Status

<table><thead><tr><th width="68">No</th><th width="171">Status</th><th valign="top">Description</th></tr></thead><tbody><tr><td>1</td><td>ACCEPTED</td><td valign="top">The payout request has been accepted and has not yet been sent on to a channel. A payout may remain in this status if the chosen channel is currently offline.</td></tr><tr><td>2</td><td>REQUESTED</td><td valign="top">The payout has been sent to the channel. Funds have been sent to the channel for processing.</td></tr><tr><td>3</td><td>FAILED</td><td valign="top">Payout failed. See possible reasons in Failed Reasons section.</td></tr><tr><td>4</td><td>SUCCEEDED</td><td valign="top">Sender bank/channel has sent out the payout</td></tr><tr><td>5</td><td>CANCELLED</td><td valign="top">Payout has been cancelled per your request</td></tr><tr><td>6</td><td>REVERSED</td><td valign="top">Payout was rejected by the channel after the payout succeeded. Commonly due to invalid or dormant account.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.finpay.id/api-reference/finpay-wallet-as-a-service/core-api/payout-webhook-finnet-greater-than-partner.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
