Search

Are you looking for test card numbers?

Would you like to contact support?

Issuin icon

Payment stages

Identify when a payment made with an Adyen-issued card has been processed, captured, or refunded.

Each payment on the Balance Platform will go through a series of events. Most of the events are triggered by the processing merchant, the business who processed the card payment.

Each event updates the status of the original payment. The events include:

We inform you of these events through notification webhooks. To receive these events, make sure that your integration can accept and process notification webhooks.

Original payment

A payment attempt using an Adyen-issued card creates a balancePlatform.Payment object. An authorised payment will result in a hold being placed on the associated balanceAccount.

We send you a balancePlatform.payment.created notification to inform you about the payment attempt.

The notification includes:

  • The original amount and currency of the payment.
  • The amount and currency converted to the balance account's default currency code.
  • The ID of the payment instrument used, along with the balance account and account holder information.
  • Information about the merchant that processed the payment.
  • The result of the payment.
Original payment notification
{
   "data" : {
      "accountHolder" : {
         "description" : "S.Hopper - Staff 123",
         "id" : "AHA1B2C3D4E5F6G7H8I9J0"
      },
      "{hint:Amount converted to the default currency code}amount{/hint}" : {
         "currency" : "EUR",
         "value" : -88
      },
      "authCode" : "245773",
      "balanceAccount" : {
         "description" : "S.Hopper - Main balance account",
         "id" : "BAB8B2C3D4E5F6G7H8D9J6GD4"
      },
      "balancePlatform" : "YOUR_BALANCE_PLATFORM_ACCOUNT",
      "creationDate" : "2020-08-16T21:10:32+02:00",
      "{hint:The payment ID}id{/hint}" : "3UHFB75NIZPDCWN0",
      "merchantData" : {
         "mcc" : "7999",
         "merchantId" : "526567789010068",
         "nameLocation" : {
            "city" : "Amsterdam",
            "country" : "NLD",
            "name" : "NB Bookstore",
            "rawData" : "NB Bookstore Amsterdam NLD"
         }
      },
      "{hint:Original value and currency of the payment}originalAmount{/hint}" : {
         "currency" : "USD",
         "value" : -100
      },
      "paymentInstrument" : {
         "id" : "PI322FN2235HGP5BNR47LCX2D"
      },
      "relayedAuthorisationData" : {
         "metadata" : {
            "key1" : "value1",
            "key2" : "value2"
         },
         "reference" : "1594926632477"
      },
      "{hint:The result of the payment}status{/hint}" : "Authorised",
      "validationResult" : [
         {
            "result" : "valid",
            "type" : "PaymentInstrumentExpirationCheck"
         },
         {
            "result" : "valid",
            "type" : "RelayedAuthorisation"
         },
         {
            "result" : "valid",
            "type" : "CVC2"
         },
         {
            "result" : "valid",
            "type" : "TransactionRules"
         },
         {
            "result" : "valid",
            "type" : "ExchangeAmount"
         },
         {
            "result" : "valid",
            "type" : "Validation"
         },
         {
            "result" : "valid",
            "type" : "TransactionValidation"
         },
         {
            "result" : "valid",
            "type" : "Screening"
         },
         {
            "result" : "valid",
            "type" : "MaxAuthAmount"
         }
      ]
   },
   "environment" : "test",
   "type" : "balancePlatform.payment.created"
}

The status of the original payment will be updated as further actions such as capture and refunds are performed by the processing merchant.

Captures

When the processing merchant has captured the payment, the funds will be deducted from the balanceAccount resource. A capture can be smaller than or equal to the amount of the original payment. If the whole original payment amount has been captured, then the hold placed on the balance account will be removed.

We send you a balancePlatform.outgoingTransfer.created notification to inform you of the capture.

The notification contains information about the captured funds such as:

  • The ID of the payment associated with this capture. This is the id you receive in the original payment notification.
  • The capture amount and currency converted to the balance account's default currency code.
Capture notification
{
  "data": {
    "accountHolder" : {
      "description" : "S.Hopper - Staff 123",
      "id" : "AHA1B2C3D4E5F6G7H8I9J0"
    },
    "{hint:Amount converted to the default currency code}amount{/hint}" : {
             "currency" : "EUR",
             "value" : -88
    },
    "balanceAccount" : {
      "description" : "S.Hopper - Main balance account",
      "id" : "BAB8B2C3D4E5F6G7H8D9J6GD4"
    },
    "balancePlatform" : "YOUR_BALANCE_PLATFORM_ACCOUNT",
    "creationDate" : "2020-08-18T21:10:32+02:00",
    "id": "IZMNC75NAQ9FC92S",
    "merchantData" : {
       "mcc" : "7999",
       "merchantId" : "526567789010068",
       "nameLocation" : {
         "city" : "Amsterdam",
         "country" : "NLD",
         "name" : "NB Bookstore",
         "rawData" : "NB Bookstore Amsterdam NLD"
       }
    },
    "paymentId": "3UHFB75NIZPDCWN0",
    "paymentInstrument" : {
      "id" : "PI322FN2235HGP5BNR47LCX2D"
    },
    "relayedAuthorisationData": {
      "metadata": {
        "key1": "value1",
        "key2": "value2"
      }
    },
    "{hint:Status of the capture}status{/hint}": "Captured"
  },
  "environment": "test",
  "type": "balancePlatform.outgoingTransfer.created"
}

Refunds

When the processing merchant has refunded a payment, the funds will be refunded to the balanceAccount resource. A refund can be less than or equal to the payment amount. We link the refund to the original payment or capture whenever possible but since the card networks don't require refunds to be referenced, this linking is not guaranteed.

We send you a balancePlatform.incomingTransfer.created notification to inform you of the refund.

The notification contains information about the refund such as:

  • The ID of the payment associated with this refund. This is the id you receive in the original payment notification.
  • The refund amount and currency converted to the balance account's default currency code.
Refunds notification
{
   "data" : {
     "accountHolder" : {
       "description" : "S.Hopper - Staff 123",
       "id" : "AHA1B2C3D4E5F6G7H8I9J0"
      },
      "{hint:Amount converted to the default currency code}amount{/hint}" : {
             "currency" : "EUR",
             "value" : 88
      },
      "balanceAccount" : {
         "description" : "S.Hopper - Main balance account",
         "id" : "BAB8B2C3D4E5F6G7H8D9J6GD4"
      },
      "balancePlatform" : "YOUR_BALANCE_PLATFORM_ACCOUNT",
      "creationDate" : "2020-08-20T21:10:32+02:00",
      "id" : "3UHFCM5NKLWN3HN0",
      "{hint:Original value and currency of the payment}originalAmount{/hint}" : {
         "currency" : "USD",
         "value" : 100
      },
      "paymentId" : "3UHFB75NIZPDCWN0",
      "{hint:Status of the refund}status{/hint}" : "Refunded"
   },
   "environment" : "test",
   "type" : "balancePlatform.incomingTransfer.created"
}

Next steps