Skip to content

Pix transfer refunded

Webhook sent by the system when a pix payment is refunded.

Sometimes a PIX transfer will fail. Usually this happens for some reason related to the destination account. Anyway, when a Pix transfer fails our system delivers a POST webhook in the following format:

Webhook example:

Pix transfer refunded webhook example payload
{
  "event": "refund",
  "transaction": {
    "created_at": "2022-02-02T21:34:07+0000",
    "document_number": "****435****",
    "e2e_id": null,
    "email": "[email protected]",
    "error": {
      "code": 4,
      "message": "The transfer was rejected by the receiving bank",
      "meta": [],
      "type": "ERROR_BANK_CASH_OUT"
    },
    "events": [
      {
        "amount": "1.00",
        "created_at": "2022-02-02T21:36:03+0000",
        "event_type": "refund",
        "id": "321-654-987",
        "pix_key_type": null,
        "pix_key_value": null,
        "pix_message": null,
        "qrcode": null,
        "qrcode_image": null,
        "success": true,
        "updated_at": "2022-02-02T21:36:03+0000"
      },
      {
        "amount": "1.00",
        "created_at": "2022-02-02T21:34:07+0000",
        "event_type": "payment",
        "id": "123-456-789",
        "pix_key_type": "email",
        "pix_key_value": "[email protected]",
        "pix_message": "This is NOT a test",
        "processor_code": "1",
        "processor_message": "pending",
        "processor_transaction_id": "123-456-789",
        "qrcode": null,
        "qrcode_image": null,
        "success": false,
        "updated_at": "2022-02-02T21:34:10+0000"
      }
    ],
    "first_name": "Foo",
    "flow_type": "cashout",
    "id": "123-456-789",
    "last_name": "Bar",
    "merchant_id": "123-456-789",
    "merchant_transaction_id": "0000001",
    "processor_id": "123-456-789",
    "statement": [
        {
        "acc_info": {
          "acc_number": "string",
          "acc_type": "string",
          "bank_agency": "string",
          "bank_code": "string",
          "document": "string",
          "ispb": "string",
          "name": "string"
        },
        "amount": "450.00",
        "created_at": "2022-02-12T18:00:42.000000Z",
        "date": "2022-02-12 18:00:35",
        "e2e_id": "e0000400202020404040kswkks020202"
      },
      {
        "acc_info": {
          "acc_number": "string",
          "acc_type": "string",
          "bank_agency": "string",
          "bank_code": "string",
          "document": "string",
          "ispb": "string",
          "name": "string"
        },
        "amount": "450.00",
        "created_at": "2022-02-12T18:10:15.000000Z",
        "date": "2022-02-12 18:10:06",
        "e2e_id": "e0000400202020404040kswkks020203"
      }
    ],
    "status": "failed",
    "transaction_type": "pix",
    "updated_at": "2022-02-02T21:36:03+0000",
    "user_id": "123-456-789"
  }
}

The webhook URL is defined by Processor and, for now, this configuration has to be requested to our team.