SlimPay Developer Center

  • REST API
  • File Transfer
  • Resources
  • Overview
  • Use Case Guides
  • Reference
  • Browser
 
Getting Started
  • Choosing the right HTTP client
  • Get an access token
  • Retrieving URLs
  • Where to next?
Enroll your customers
  • Checkout Integration Types
  • SlimPay Checkout
  • Checkout Api
  • Setting Up SlimCollect
  • Import an Existing Mandate
  • Add a Document Signature
Collect payments
  • Add a First Payment
  • Collect Payments by Direct Debit
Webhook
  • Configuration
  • Notification
  • Security
Monitor activity
  • Handle Payment Issues
  • Refund Payments
  • Update the Payment Method

Webhook notifications

when an event is triggered corresponding to one of the webhook you subscribe to, a notification will be send to the merchant url provided during the webhook creation.

SlimPay will send a Webhook notification in UTF-8 encoded notification message using HTTPS POST to the specified webhook URL to inform the merchant about updates he has subscribe to

SlimPay will make a secure connection with your server before sending your webhook notification. You must handle HTTPS with a valid server certificate. The security is supported using TLS version 1.2 or 1.3. HTTP is not supported in test or live mode

The request will be as follows:


    POST follow(https://merchantURL) HTTP/1.1
    headers:
    slimpay-signature: t=1697636543411,v1=cab163c1a3a51511ea5b59b2a0cee78e5f961914603df00181f0269a2a0e1cf3
    Content-Type: application/json
    user-agent: SlimPayWebhook/1.0.0
    accept: */*
    {
        "Id":"ea8e7c26-3074-11ee-bd43-000000000000",
        "version":"1",
        "createdAt":1701430746769,
        "eventType":"order_slimcollectpay.update",
        "data":{
            "uuid":"c9ebea6a-903d-11ee-8312-000000000000",
            "status":"COMPLETED",
            "code":20005,
            "statusMessage":"The order is completed"
         }
       }
    

We expect to receive a quick notification response, within 10 seconds to verify/store/acknowledge the webhook notification with HTTP 200 response

The below lists all the headers that you will receive:

slimpay-signature
The value for the prefix t corresponds to the timestamp (unix epoch time), and v1 corresponds to the signature
user-agent
using the value ‘SlimPayWebhook/1.0.0’
content-type
using the value ‘application/json’
accept
using the value ‘*/*’

The below lists all of the parameters that you will receive:

id
UUID of the notification. Constraints: 36 characters, Read-Only
version
Version of the data structure of the notification. The current version is 1. Constraints: Integer, Read-Only
createdAt
The date the notification was created. Constraints: Epoch time, i.e. 1701430746769, Read-Only
eventType
The event type indicates the type of the notification. Constraints: one of [order_slimcollectpay.update, order_slimcollectverify.update, order_signDocument.update, order_signMandate.update, mandate_slimcollectpay.update, mandate_slimcollectverify.update, payment_slimcollectpay.update], Read-Only
id
UUID if the notification
data
A set of additional information linked to the nature of the eventype
data » uuid
UUID of the order/mandate/payment depending on the eventType. Constraints: 36 characters, Read-Only
data » status
Status associated to the order/mandate/payment depending on the eventType. Constraints: Text, 50 characters maximum, Read-Only
data » code
Code associated to the order/mandate/payment depending on the eventType. Constraints: Integrer, Read-Only
data » statusMessage
text associated to the order/mandate/payment depending on the eventType. Constraints: Text, Read-Only

The corresponding values between the eventType, the status, code and message is provided in the table below:

EventType Status Merchant Code StatusMessage, english
payment_slimcollectpay.update PROCESSING 10001 The payment is initiated by the subscriber
NOT_PROCESSED 10002 A technical errror occured {: + Error Msg from Aggregator?}
NOT_PROCESSED 10003 The payment is cancelled by the subscriber {: + Msg from Aggregator?}
NOT_PROCESSED 10004 Warning - The payment is not received after 4 days
NOT_PROCESSED 10005 Your link has expired
PROCESSED 10006 Your payment is available in your bank account
REFUND 10007 A refund occurred
payment_sepadd.notprocessed NOT_PROCESSED 10009 The SEPA Direct Debit has been cancelled before execution
payment_sepadd.rejected REJECTED 10010 The SEPA Direct debit has been rejected (R-Transaction)
payment_sepadd.confirmed CONFIRMED 10012 The SEPA Direct Debit can no longer be rejected or returned by the debtor’s bank. The SEPA Direct Debit may only be subject to a refund in case of a dispute from the debtor himself.
reimbursement_sepact.notprocessed NOT_PROCESSED 10013 The reimbursement was cancelled before its execution or cannot be sent to the bank because of wrong or missing information.
reimbursement_sepact.rejected REJECTED 10014 The reimbursement was rejected by the debtor’s bank (R-Transaction)
order_slimcollectpay.update ABORTED_BYSERVER 20001 A technical errror occured {: + Error Msg from Aggregator?}
ABORTED_BYCLIENT 20002 The order is cancelled by the subscriber {: + Msg from Aggregator?}
ABORTED_BYSERVER 20003 Your link has expired
ABORTED_BYSERVER 20004 Warning - A technical errror occured, payment not received
COMPLETED 20005 The order is completed
order_slimcollectverify.update ABORTED_BYSERVER 20001 A technical errror occured {: + Error Msg from Aggregator?}
ABORTED_BYCLIENT 20002 The order is cancelled by the subscriber {: + Msg from Aggregator?}
COMPLETED 20005 The order is completed
ABORTED_BYSERVER 20003 Your link has expired
order_signDocument.update ABORTED_BYSERVER 20001 A technical errror occured {: + Error Msg from Aggregator?}
ABORTED_BYCLIENT 20002 The order is cancelled by the subscriber {: + Msg from Aggregator?}
COMPLETED 20005 The order is completed
order_signMandate.update ABORTED_BYSERVER 20001 A technical errror occured {: + Error Msg from Aggregator?}
ABORTED_BYCLIENT 20002 The order is cancelled by the subscriber {: + Msg from Aggregator?}
COMPLETED 20005 The order is completed
mandate_slimcollectpay.update MANDATE_ACTIVE 30001 The mandate is approved
MANDATE_REJECTED 30002 The subscriber did not provide its consent. Mandate is rejected
MANDATE_EXPIRED 30003 The link and mandate have expired
MANDATE_EXPIRED 30004 Warning - A technical errror occured, mandate expired
MANDATE_ACTIVE 30005 The mandate becomes active after receiving payment
MANDATE_REJECTED 30006 The mandate is rejected due to no action from the subscriber
MANDATE_REVOKED 30007 The mandate is revoked
MANDATE_AMENDED 30008 The mandate is amended
mandate_slimcollectverify.update MANDATE_ACTIVE 30001 The mandate is approved
MANDATE_REJECTED 30002 The subscriber did not provide its consent. Mandate is rejected
MANDATE_EXPIRED 30003 The link and mandate have expired
MANDATE_REVOKED 30007 The mandate is revoked
MANDATE_AMENDED 30008 The mandate is amended
mandate_signMandate.update MANDATE_ACTIVE 30001 The mandate is approved
MANDATE_REVOKED 30007 The mandate is revoked
MANDATE_AMENDED 30008 The mandate is amended

  • Merchant should be able to manage duplicate events: it may be possible that merchant received duplicates events. Your application should be idempotent
  • It is also possible that a notification is not sent in case of technical issues. The merchant should implement a fail-safe
  • The notifications are asynchronous so the order is not fixed

 
SlimPay
  • Developer Center
  • Help Center
  • Website
  • REST API
    • Overview
    • Guides
    • Reference
    • Browser
    • Clients
  • File Transfer
    • Overview
    • Checkout
    • Payments
    • Payments Issues
    • Account Reporting
  • Resources
    • FAQ
    • IBANs