Transfer Events

These webhooks specifically relate to transfer updates, enabling you to monitor the lifecycle of funds moving from your platform to the merchant's connected Prism Pay account.

TRANSFER_SENT

Emitted when a Transfer is successfully sent to a merchant's connected payment provider account. This indicates that the funds have been transferred from your connected Platform Account and are now in the merchant's Stripe Connect account.

Sample Payload
{
   "id": 335500,
   "payment_provider_id": "tr_3RBesbK29KDiBVld0zLcELFW",
   "payout_account_id": 11495,
   "amount": 11428,
   "currency": "USD",
   "status": "SENT",
   "payment_provider": "STRIPE",
   "related_orders": [
       "8035507"
   ],
   "related_bags": [
       "8147708"
   ],
   "date_created": "2025-04-08T16:21:52+0000",
   "date_last_modified": "2025-04-15T16:57:27+0000",
   "errors": []
}

TRANSFER_FAILED

Emitted when a Transfer fails to be sent to a merchant's connected payment provider account. This can occur due to various reasons, such as insufficient funds, invalid account details, or issues with the payment provider.

Sample Payload
{
   "id": 335500,
   "payment_provider_id": "tr_3RBesbK29KDiBVld0zLcELFW",
   "payout_account_id": 11495,
   "amount": 11428,
   "currency": "USD",
   "status": "FAILED",
   "payment_provider": "STRIPE",
   "related_orders": [
       "8035507"
   ],
   "related_bags": [
       "8147708"
   ],
   "date_created": "2025-04-08T16:21:52+0000",
   "date_last_modified": "2025-04-15T16:57:27+0000",
   "errors": [
        {
          "payout_transfer_id": 123,
          "error_code": 1001,
          "error_message": "Transfers are not permitted from a `UK` platform account to `US` Stripe Connect account. Please review Stripe's cross-border policies to learn more.",
          "date_created": "2023-11-07T05:31:56Z",
        }
   ]
}

TRANSFER_UPDATED

A catch-all event for any updates to a Transfer within Violet. This includes updates such as status changes during transfer reversals.

Sample Payload
{
   "id": 335500,
   "payment_provider_id": "tr_3RBesbK29KDiBVld0zLcELFW",
   "payout_account_id": 11495,
   "amount": 11428,
   "currency": "USD",
   "status": "SENT",
   "payment_provider": "STRIPE",
   "related_orders": [
       "8035507"
   ],
   "related_bags": [
       "8147708"
   ],
   "date_created": "2025-04-08T16:21:52+0000",
   "date_last_modified": "2025-04-15T16:57:27+0000",
   "errors": []
}

TRANSFER_REVERSED

Emitted when a refund is being processed and funds are reversed from a Transfer to a merchant.

Sample Payload
{
    "id": 93115,
    "payment_provider_id": "tr_3RQcnz2fBAGe9wfJ0wvdaB4J",
    "payout_account_id": 10298,
    "amount": 60000,
    "currency": "usd",
    "status": "REVERSED",
    "payment_provider": "STRIPE",
    "related_orders": [
        "138704"
    ],
    "related_bags": [
        "166905"
    ],
    "transfer_reversals": [
        "10000"
    ],
    "date_created": "2025-05-19T23:09:30+0000",
    "date_last_modified": "2025-05-19T23:12:43+0000",
    "errors": [],
    "external_id": "tr_3RQcnz2fBAGe9wfJ0wvdaB4J",
    "payment_service": "STRIPE"
}

TRANSFER_PARTIALLY_REFUNDED

Emitted when a refund is being processed and funds are partially reversed from a Transfer to a merchant.

Sample Payload
{
    "id": 93115,
    "payment_provider_id": "tr_3RQcnz2fBAGe9wfJ0wvdaB4J",
    "payout_account_id": 10298,
    "amount": 60000,
    "currency": "usd",
    "status": "REVERSED",
    "payment_provider": "STRIPE",
    "related_orders": [
        "138704"
    ],
    "related_bags": [
        "166905"
    ],
    "transfer_reversals": [
        "10000"
    ],
    "date_created": "2025-05-19T23:09:30+0000",
    "date_last_modified": "2025-05-19T23:12:43+0000",
    "errors": [],
    "external_id": "tr_3RQcnz2fBAGe9wfJ0wvdaB4J",
    "payment_service": "STRIPE"
}

TRANSFER_REVERSAL_FAILED

Emitted when a transfer reversal fails. This can happen if the transfer reversal is not successful for any reason, including exceptions from the underlying payment provider, such as insufficient funds or an invalid account. When a transfer reversal fails, both the Transfer and TransferReversal objects have information about the error.

Sample Payload
{
            "id": 93114,
            "payout_account_id": 10213,
            "amount": 60000,
            "currency": "usd",
            "status": "SENT",
            "payment_provider": "STRIPE",
            "related_orders": [
                "138704"
            ],
            "related_bags": [
                "166904"
            ],
            "date_created": "2025-05-19T23:09:29+0000",
            "date_last_modified": "2025-05-19T23:09:30+0000",
            "errors": [
                {
                    "id": 34941,
                    "error_code": 9000,
                    "error_message": "Insufficient funds in underlying account to perform a transfer reversal.",
                    "date_created": "2025-05-19T23:09:30+0000",
                }
            ],
            "payment_service": "STRIPE"
}

Last updated

Was this helpful?