Initiate a Refund

Flow

The following steps will guide you through completing a refund:

  1. Request a PIS dedicated access token
  2. Trigger the refund providing the session_id of the original payment
  3. Verify the payment on callback such that the payment status and order ID matches
  4. Listen to Webhook to intercept payments status change events as a redundant channel to the redirect callback

🚧 Important

Signature, digest, date and x-request-id headers are optional in SANDBOX environment but mandatory when calling the PRODUCTION one.

πŸ’‘ Note

By default, a refund will initiate a PIS payment from your bank account directly to the bank account of the PSU. This requires an SCA to be done with your bank account for each refund. Alternatively, refunds can be done from a Fintecture Account which reduces the friction from SCA and enable mass-refunds to help with your daily operations.

Fintecture Accounts can be created directly from the Console.

B2C RecipePostman

Payment statuses

Below are detailed the payment statuses encountered in the case of an immediate payment.

Without missing IBAN

With missing IBAN

πŸ’‘ Note

Do not hesitate to consult all of the payment statuses for more information.

Refund types

  • Partial refunds are enabled by overriding the refund amount attribute. It is also possible to change the communication field by overriding the communication attribute.
  • Multi-refunds are possible by triggering several times the refund API. Each call will trigger a new refund session until the total refund amount exceeds the original amount at which point the API will return an error.
  • Cancelled refunds are not considered in the total refund amount.