NAV Navigation

Welcome

This documentation was last updated on Thu Mar 4 12:54:11 GMT 2021 and covers Mambu Payments Gateway Version v1.29.0

Welcome to the Mambu Payments API documentation!

Our Payments API is independent from the existing Mambu API and WebHook infrastructure and allows you to manage payments made via the SEPA scheme.

The purpose of Payment Order capability is to orchestrate the movement of money between an account in Mambu and an account at a third-party financial institution (both domestic as well as international).

The orchestration includes triggering Payment Execution on the user-specified date, debiting / crediting the account in Mambu (i.e. calling transaction API), storing-and-forwarding the credit / debit instruction for settlement in a third party financial institution via the Payment Gateway, that in turn sends it out to Payment Network.

Before using the Payment Gateway you will need to carry out the steps outlined in our payments documentation, this includes setting up an API consumer, transaction channels and configuring your bank identification codes and job schedulers.

AML

If you are using an external service to check payments as part of your Anti Money Laundering obligations, these endpoints receive responses which will lead to unblocking funds and transfering them to the recipient account in the case of an all clear or returning funds to the payer in cases where there a compliance issue has been identified.

processAmlResponse

POST /v1/payments/aml

Accepts AML check results for Payment Orders.

Example Request

amlInformation

{
  "groupHeader": {
    "messageIdentification": "SCTORD200020190305ORD000011119"
  },
  "transactions": [
    {
      "status": "Accepted",
      "paymentIdentification": {
        "transactionIdentification": "00730100632BHGCRWC"
      },
      "debtorAgent": {
        "institutionIdentification": {
          "bicfi": "BTRLRO22"
        }
      },
      "interbankSettlementDate": "2019-06-28T00:00:00.000Z"
    }
  ]
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
X-Request-ID string ID of the request, unique to the call, as determined by the initiating party. header true
Idempotency-Key string Prevents retried requests to be executed multiple times. Subsequent requests with the same Idempotency Key will not be processed and will return a cached result. header false
body AmlResult none body false

Example Responses

400 :
missingMandatoryField

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "groupHeader.messageIdentification",
      "text": "groupHeader.messageIdentification may not be null"
    }
  ]
}

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

415 :
unsupportedContentType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK OK - The AML check result has been prepared for processing. None
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedPaymentResponse
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
415 Unsupported Media Type Unsupported Media Type - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

External Account Representation

These endpoints are used to associate IBANs with Mambu account IDs so that payments made using the Payment Gateway are routed to the correct accounts.

getMapping

GET /v1/accounts/{accountId}/identifications

Gets associations of an external account identification (IBAN or proprietary) to a Mambu Account.

Parameters

Name Type Description In Required
Content-Type string application/json header true
accountId string none path true
limit integer(int32) Limit the number of identifications retrieved. The default limit is 50, can be specified up to 1000. query false
offset integer(int64) Offset determines how many records will be skipped before being included in the returned results. The default offset value is 0. query false

Example Responses

200 :
Identification

[
  {
    "iban": "DE46606951125202071272",
    "other": {
      "identification": "ABCDE1234F",
      "scheme": "PAN"
    }
  }
]

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK OK - List existing external identifications. Inline
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedAccountMappingResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

Response Schema

Status Code 200

Name Type Description Required Restrictions
anonymous [Identification] [Unique and unambiguous identification for the account.] false none
» iban string ISO 13616 International Bank Account Number (IBAN) - identifier used internationally by financial institutions to uniquely identify the account of a customer. false none
» other Other Unique identification of an account, as assigned by the account servicer, using other identification scheme. false none
»» identification string Identification assigned by an institution. true none
»» scheme string Name of the identification scheme. true none

Response Headers

Status Header Type Format Description
200 Items-Offset undefined The index of the first returned item.
200 Items-Limit undefined The requested page size.
200 Items-Total undefined The total count of available items.

createMapping

POST /v1/accounts/{accountId}/identifications

Adds association of an external account identification (IBAN or proprietary) to a Mambu Account. The currency of the association will be the one of the underlining Mambu account. If an IBAN is supposed to be a multi-currency one, this API needs to be invoked multiple times with different Mambu accounts (for the different currencies).

Example Request

createMambuAccountMapping

{
  "identification": {
    "other": {
      "identification": "ABCDE1234F",
      "scheme": "PAN"
    },
    "iban": "DE46606951125202071272"
  }
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
accountId string none path true
body CreateAccountMapping none body false

Example Responses

201 :
accountMappingResponse

{}

400 :
invalidIdentification

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "iban",
      "text": "iban size must be between 15 and 34"
    },
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "iban",
      "text": "iban invalid IBAN value"
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
201 Created Created - Association successfully created. AccountMappingResponse
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedAccountMappingResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedAccountMappingResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

createMappings

PUT /v1/accounts/identifications

Create or replace associations of an external account identification (IBAN or proprietary) to a list of Mambu Accounts. The currency of the association will be the one of the underlining Mambu account.

Example Request

createMambuAccountMappings

{
  "identification": {
    "iban": "DE46606951125202071272"
  },
  "accountIds": [
    "123",
    "456",
    "789"
  ]
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
body CreateAccountMappings none body false

Example Responses

201 :
accountMappingResponse

{}

400 :
invalidIdentification

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "iban",
      "text": "iban size must be between 15 and 34"
    },
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "iban",
      "text": "iban invalid IBAN value"
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
201 Created Created - Association successfully created. AccountMappingResponse
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedAccountMappingResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedAccountMappingResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

searchAccountIdentifications

POST /v1/accounts/identifications:search

Searches identifications (with MambuID included) based on provided filter criteria

Example Request

{
  "filterCriteria": [
    {
      "field": "SCHEME",
      "operator": "EQUALS",
      "value": "string"
    }
  ]
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
body AccountIdentificationsSearchRequestDTO none body false

Example Responses

200 :
AccountIdentificationsSearchResponse

[
  {
    "accountId": "test123",
    "currency": "EUR",
    "type": "DEPOSIT",
    "identification": {
      "iban": "DE46606951125202071272",
      "identification": "ABCDE1234F",
      "scheme": "PAN"
    }
  }
]

400 :
invalidSearchFilter

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "searchAccountIdentifications.arg0.filterCriteria[0].field",
      "text": "filterCriteria[0].field Should be one of: schema, iban, currency, identification"
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK OK - List of found identifications with accountId Inline
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedAccountMappingResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedAccountMappingResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

Response Schema

Status Code 200

Name Type Description Required Restrictions
anonymous [AccountIdentificationsSearchResponseDTO] none false none
» accountId string AccountID (Unique and unambiguous identification for the account.) true none
» currency string Account currency false none
» identification Identification Unique and unambiguous identification for the account. true none
»» iban string ISO 13616 International Bank Account Number (IBAN) - identifier used internationally by financial institutions to uniquely identify the account of a customer. false none
»» other Other Unique identification of an account, as assigned by the account servicer, using other identification scheme. false none
»»» identification string Identification assigned by an institution. true none
»»» scheme string Name of the identification scheme. true none
» type string Account type false none

Payments

These endpoints are used for making and receiving payments through the Mambu Payment Gateway.

incomingMessage

POST /v1/payments/incoming

Creates an incoming message request.

Example Request

incomingCreditTransferRequest

Parameters

Name Type Description In Required
Content-Type string application/xml header true
Content-Disposition string The name of the file sent in the notification. If missing one will be generated. header false
X-Request-ID string ID of the request, unique to the call, as determined by the initiating party. header true
Idempotency-Key string Prevents retried requests to be executed multiple times. Subsequent requests with the same Idempotency Key will not be processed and will return a cached result. header false

Example Responses

400 :
invalidValueForField

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "text": "The request body may not be empty"
    }
  ]
}

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

415 :
unsupportedContentType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
202 Accepted Accepted - Incoming file accepted and is due for processing, when incoming scheduler is configured to run. Outgoing (complete / partial) pacs.002 will be published in case of complete / partial processing of incoming pacs.008. If the incoming pacs.008 is completely failed then a rejected pacs.002 will be published. Outgoing pacs.004 will be published for failed transaction from incoming pacs.008. None
400 Bad Request Bad Request - Validation error occurred. FailedPaymentResponse
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
415 Unsupported Media Type Unsupported Media Type - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

initiatePayment

POST /v1/payments

Creates a payment initiation request.

Example Request

initiatePaymentRequest

{
  "debtorAccount": {
    "identification": {
      "iban": "DE46606951125202071272"
    },
    "currency": "EUR"
  },
  "debtorName": "John Doe",
  "instructedAmount": {
    "currency": "EUR",
    "amount": "500"
  },
  "creditorAccount": {
    "identification": {
      "iban": "DE16195554277485442959"
    },
    "currency": "EUR"
  },
  "creditorAgent": {
    "institutionIdentification": {
      "bicfi": "DEUTDEFF"
    }
  },
  "creditorName": "Merchant123"
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
X-Request-ID string ID of the request, unique to the call, as determined by the initiating party. header true
Idempotency-Key string Prevents retried requests to be executed multiple times. Subsequent requests with the same Idempotency Key will not be processed and will return a cached result. header false
body Payment none body false

Example Responses

201 :
initiatePaymentResponse

{
  "transactionStatus": "RCVD",
  "paymentId": "e38458a4-d955-4a39-8e21-9608e9600b3d",
  "transactionFeeIndicator": false
}

400 :
missingMandatoryField

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "debtorAccount.identification",
      "text": "debtorAccount.identification may not be null"
    }
  ]
}

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

415 :
unsupportedContentType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
201 Created Created - Payment Initiation request was correctly performed (but not yet accepted) nor executed. PaymentResponse
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedPaymentResponse
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
415 Unsupported Media Type Unsupported Media Type - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

Response Headers

Status Header Type Format Description
201 Location undefined Location of the created payment order request resource, for future reference or status polling.

paymentDetails

GET /v1/payments/{paymentId}

Retrieve the payment initiation details.

Parameters

Name Type Description In Required
paymentId string ID of the payment order id, as received in the Payment Initiation response. path true
detailsLevel string Details level of the response. STATUS and FULL detail levels are supported. query false

Example Responses

200 :
paymentStatusDetailsResponse

{
  "transactionStatus": "ACSC",
  "lastStatusUpdateTimestamp": "2019-03-15T09:34:00.000Z"
}

200 :
paymentFullDetailsResponse

{
  "transactionStatus": "ACSC",
  "lastStatusUpdateTimestamp": "2019-03-15T09:34:00.000Z",
  "paymentIdentification": {
    "transactionIdentification": "SCTORD156820190401000000000010"
  },
  "debtorAccount": {
    "identification": {
      "iban": "DE46606951125202071272"
    },
    "currency": "EUR"
  },
  "debtorName": "John Doe",
  "instructedAmount": {
    "currency": "EUR",
    "amount": "500"
  },
  "creditorAccount": {
    "identification": {
      "iban": "DE16195554277485442959"
    },
    "currency": "EUR"
  },
  "creditorAgent": {
    "institutionIdentification": {
      "bicfi": "DEUTDEFF"
    }
  },
  "creditorName": "Merchant123"
}

400 :
missingDetailsForPaymentId

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "path": "paymentId",
      "text": "Unable to find payment details for payment 123"
    }
  ]
}

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

406 :
unsupportedAcceptType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK OK - Payment Initiation Details were correctly found. PaymentDetails
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedPaymentResponse
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
406 Not Acceptable Not Acceptable - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

findSepaMessages

GET /v1/instructions

Retrieve the SEPA messages details

Parameters

Name Type Description In Required
network string Network for which the instructions should be fetched query true
direction string Message Direction: I - Incoming, O - Outgoing query true
dateFrom string(date) Start date from which the messages should be filtered (inclusive) query false
dateTo string(date) End date up until which the messages should be filtered (inclusive) query false
messageType string Internal representation of message type. Accepted values are pacs.008 and pacs.004 query false
messageId string Message ID, representing the GrpHdr>MsgId field of the message query false
offset integer Offset from which the results should be provided query false
limit integer Limit of the number of objects returned by the server query false

Enumerated Values

Parameter Value
network SEPA
direction I
direction O

Example Responses

200 :
pacs.008 instruction information

{
  "instructions": [
    {
      "FIToFICstmrCdtTrf": {
        "grpHdr": {
          "msgId": "22b8f938c6154877886a0c1fc9e74166",
          "creDtTm": "2019-04-11T06:08:45.000Z",
          "nbOfTxs": "2",
          "ttlIntrBkSttlmAmt": {
            "value": 200,
            "ccy": "EUR"
          },
          "intrBkSttlmDt": "2019-04-10T21:00:00.000Z",
          "sttlmInf": {
            "clrSys": {
              "prtry": "ST2"
            }
          },
          "instgAgt": {
            "finInstnId": {
              "bic": "ABVRATW1XXX"
            }
          }
        },
        "cdtTrfTxInf": [
          {
            "pmtId": {
              "instrId": "82d7125b36014c2e8cc442a3586badd0",
              "endToEndId": "NOTPROVIDED",
              "txId": "4112f6688c846a89bee2b2c476f1145"
            },
            "pmtTpInf": {
              "svcLvl": {
                "cd": "SEPA"
              }
            },
            "intrBkSttlmAmt": {
              "value": 100,
              "ccy": "EUR"
            },
            "accptncDtTm": "2019-04-11T06:08:45.000Z",
            "chrgBr": "SLEV",
            "dbtr": {
              "nm": "John Doe"
            },
            "dbtrAcct": {
              "id": {
                "iban": "RO59INGBW91QIQFZSG6IZBJT"
              }
            },
            "dbtrAgt": {
              "finInstnId": {
                "bic": "INGBROBU"
              }
            },
            "cdtrAgt": {
              "finInstnId": {
                "bic": "BTRLRO22"
              }
            },
            "cdtr": {
              "nm": "BT",
              "pstlAdr": {
                "ctry": "DE"
              }
            },
            "cdtrAcct": {
              "id": {
                "iban": "RO75BTRLBSIJS00RPQWYLYWL"
              }
            },
            "_metadata": {
              "transactionSn": 1,
              "transactionStatus": "RECEIVED",
              "paymentId": "67eacbf33f1b4eaea8d1055a2a01adea"
            }
          },
          {
            "pmtId": {
              "instrId": "108cf3f5fd833aa5bc5efb90c0dee19e",
              "endToEndId": "NOTPROVIDED",
              "txId": "758e663666ae40be8e9278a9e4e899f9"
            },
            "pmtTpInf": {
              "svcLvl": {
                "cd": "SEPA"
              }
            },
            "intrBkSttlmAmt": {
              "value": 100,
              "ccy": "EUR"
            },
            "accptncDtTm": "2019-04-11T06:08:45.000Z",
            "chrgBr": "SLEV",
            "dbtr": {
              "nm": "John Doe"
            },
            "dbtrAcct": {
              "id": {
                "iban": "RO59INGBW91QIQFZSG6IZBJT"
              }
            },
            "dbtrAgt": {
              "finInstnId": {
                "bic": "INGBROBU"
              }
            },
            "cdtrAgt": {
              "finInstnId": {
                "bic": "BTRLRO22"
              }
            },
            "cdtr": {
              "nm": "BT",
              "pstlAdr": {
                "ctry": "DE"
              }
            },
            "cdtrAcct": {
              "id": {
                "iban": "RO94BTRLVU048EN2KBPTVT7U"
              }
            },
            "_metadata": {
              "transactionSn": 2,
              "transactionStatus": "RECEIVED",
              "paymentId": "fcaae256fed94018958326c9cb752aeb"
            }
          }
        ],
        "_metadata": {
          "bulkSn": 1,
          "direction": "I",
          "messageId": "pacs.008",
          "transactions": 2
        }
      }
    }
  ]
}

200 :
pacs.004 instruction information

{
  "instructions": [
    {
      "PmtRtr": {
        "grpHdr": {
          "msgId": "1",
          "creDtTm": "2018-11-26T19:47:57.000Z",
          "nbOfTxs": "1",
          "ttlRtrdIntrBkSttlmAmt": {
            "value": 4000.5,
            "ccy": "EUR"
          },
          "intrBkSttlmDt": "2018-11-25T22:00:00.000Z",
          "sttlmInf": {
            "sttlmMtd": "CLRG",
            "clrSys": {
              "prtry": "ST2"
            }
          }
        },
        "txInf": [
          {
            "rtrId": "2020181126130827322001",
            "orgnlGrpInf": {
              "orgnlMsgId": "1231231312",
              "orgnlMsgNmId": "pacs.008"
            },
            "orgnlEndToEndId": "10864caa82034bc8a12e4bf3e117d10d",
            "orgnlTxId": "8097758122275259",
            "rtrdIntrBkSttlmAmt": {
              "value": 4000.5,
              "ccy": "EUR"
            },
            "rtrRsnInf": {
              "orgtr": {
                "id": {
                  "orgId": {
                    "bicorBEI": "DABADKKK"
                  }
                }
              },
              "rsn": {
                "cd": "AC_01"
              }
            },
            "orgnlTxRef": {
              "intrBkSttlmDt": "2018-11-25T22:00:00.000Z",
              "sttlmInf": {
                "sttlmMtd": "CLRG"
              },
              "pmtTpInf": {
                "svcLvl": {
                  "cd": "SEPA"
                }
              },
              "dbtr": {
                "nm": "Hanne Doe"
              },
              "dbtrAcct": {
                "id": {
                  "iban": "DK0643182702662691"
                }
              },
              "dbtrAgt": {
                "finInstnId": {
                  "bic": "DABADKKK"
                }
              },
              "cdtrAgt": {
                "finInstnId": {
                  "bic": "BTRLRO22"
                }
              },
              "cdtr": {
                "nm": "John Doe"
              },
              "cdtrAcct": {
                "id": {
                  "iban": "RO69BTRL3333444433334444"
                }
              }
            },
            "_metadata": {
              "transactionSn": 14,
              "transactionStatus": "RECEIVED",
              "returnReason": "AC01",
              "paymentId": "22886adc407e4280b7df22a966d08425"
            }
          }
        ],
        "_metadata": {
          "bulkSn": 10,
          "direction": "I",
          "messageId": "pacs.004",
          "procstatus": "REPLIED",
          "transactions": 1
        }
      }
    }
  ]
}

400 :
invalidDirection

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "text": "direction invalid value: example_invalid_direction"
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has beenlogged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK OK - SEPA Messages Details were correctly found SepaMessages
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload PaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred PaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state None

Response Headers

Status Header Type Format Description
200 Items-Offset integer Pagination details, the index of the first returned item
200 Items-Limit integer Pagination details, the requested page size
200 Items-Total integer Pagination details, the total available items

SEPA Direct Debit

SEPA Direct Debit Payments are one time or recurring payments made using the Single European Payment Area scheme for transactions made in Euros between accounts at banks within the SEPA area, which includes all EU countries as well as other territories such as Liechtenstein, Switzerland, the United Kingdom, Andorra and Nordic countries.

Mambu supports both the Core SEPA rulebook for indivuduals and the B2B scheme for companies.

createBlockingRule

POST /v1/accounts/{accountId}/blocking-rules

Request a blocking rule to be added to a specific Mambu account.

Example Request

createCeditorMandateBlockingRule

{
  "product": "SEPA_DIRECT_DEBIT",
  "creditorMandate": {
    "mandateRelatedInformation": {
      "mandateIdentification": "578798984"
    },
    "creditorSchemeIdentification": {
      "identification": {
        "privateIdentification": "ID777444887"
      }
    }
  }
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
accountId string ID of the Mambu Deposit account. path true
body CreateBlockingRule none body false

Example Responses

400 :
productCannotBeBlocked

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "path": "product",
      "text": "SEPA_CREDIT_TRANSFER cannot be blocked"
    }
  ]
}

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

415 :
unsupportedContentType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
202 Accepted Accepted - The Blocking Rule has been prepared for processing. None
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedPaymentResponse
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
415 Unsupported Media Type Unsupported Media Type - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

deleteBlockingRules

DELETE /v1/accounts/{accountId}/blocking-rules

Request deletion of all blocking rules for the specified Mambu account.

Example Request

deleteAllBlockingRules

undefined

Parameters

Name Type Description In Required
Content-Type string application/json header true
accountId string ID of the Mambu Deposit account. path true
body DeleteBlockingRule none body false

Example Responses

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

415 :
unsupportedContentType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
202 Accepted Accepted - Blocking rules for the specified account have been submitted for deletion. None
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
415 Unsupported Media Type Unsupported Media Type - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

paymentDetails

GET /v1/collections/{collectionId}

Retrieve the collection initiation details.

Parameters

Name Type Description In Required
collectionId string ID of the collection order id, as received in the Payment Initiation response. path true
detailsLevel string Details level of the response. STATUS and FULL detail levels are supported. query false

Example Responses

200 :
collectionFullDetailsResponse

{
  "transactionStatus": "ACSC",
  "lastStatusUpdateTimestamp": "2019-03-15T09:34:00.000Z",
  "paymentIdentification": {
    "transactionIdentification": "SCTORD156820190401000000000010"
  },
  "debtorAccount": {
    "identification": {
      "iban": "DE46606951125202071272"
    },
    "currency": "EUR"
  },
  "debtorName": "John Doe",
  "serviceLevel": "SEPA",
  "instructedAmount": {
    "currency": "EUR",
    "amount": "500"
  },
  "creditorAccount": {
    "identification": {
      "iban": "DE16195554277485442959"
    },
    "currency": "EUR"
  },
  "creditorAgent": {
    "institutionIdentification": {
      "bicfi": "DEUTDEFF"
    }
  },
  "creditorName": "Merchant123",
  "product": "SEPA_DIRECT_DEBIT",
  "direction": "INCOMING",
  "mandateRelatedInformation": {
    "mandateIdentification": "mandate-id",
    "dateOfSignature": "22-03-2020"
  },
  "paymentTypeInformation": {
    "sequenceType": "OOFF"
  },
  "creditorSchemeIdentification": {
    "identification": {
      "privateIdentification": "pr2432edax132131"
    }
  }
}

200 :
collectionStatusDetailsResponse

{
  "transactionStatus": "ACSC",
  "lastStatusUpdateTimestamp": "2019-03-15T09:34:00.000Z"
}

400 :
missingDetailsForCollectionId

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "path": "collectionId",
      "text": "Unable to find collection details for collection 123"
    }
  ]
}

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

406 :
unsupportedAcceptType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK OK - Collection Details were correctly found. CollectionDetails
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedPaymentResponse
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
406 Not Acceptable Not Acceptable - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

initiateCollection

POST /v1/collections

Creates a collection initiation request.

Example Request

initiateCollectionRequest

{
  "debtorAccount": {
    "identification": {
      "iban": "DE46606951125202071272"
    },
    "currency": "EUR"
  },
  "debtorName": "John Doe",
  "serviceLevel": "SEPA",
  "instructedAmount": {
    "currency": "EUR",
    "amount": "500"
  },
  "creditorAccount": {
    "identification": {
      "iban": "DE16195554277485442959"
    },
    "currency": "EUR"
  },
  "creditorName": "Merchant123",
  "paymentIdentification": {
    "transactionIdentification": "113T9bs6ad48ga1216d772430401s01sd2"
  },
  "requestedExecutionDate": "2020-09-01",
  "mandateRelatedInformation": {
    "mandateIdentification": "16ead91c975c4881a60c",
    "dateOfSignature": "2020-01-31"
  },
  "paymentTypeInformation": {
    "sequenceType": "FRST"
  },
  "creditorSchemeIdentification": {
    "identification": {
      "privateIdentification": "I48799148795"
    }
  }
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
X-Request-ID string ID of the request, unique to the call, as determined by the initiating party. header true
Idempotency-Key string Prevents retried requests to be executed multiple times. Subsequent requests with the same Idempotency Key will not be processed and will return a cached result. header false
body Collection none body false

Example Responses

201 :
initiateCollectionResponse

{
  "transactionStatus": "RCVD",
  "collectionId": "e38458a4-d955-4a39-8e21-9608e9600b3d"
}

400 :
missingMandatoryField

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "FORMAT_ERROR",
      "path": "debtorAccount.identification",
      "text": "debtorAccount.identification may not be null"
    }
  ]
}

405 :
unsupportedHttpMethod

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

415 :
unsupportedContentType

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
201 Created Created - Collection Initiation request was correctly performed (but not yet accepted) nor executed. CollectionResponse
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. FailedPaymentResponse
405 Method Not Allowed Method Not Allowed - This code is only sent when the HTTP method (PUT, POST, DELETE, GET etc.) is not supported on a specific endpoint. It has nothing to do with the consent, payment or account information data model. FailedPaymentResponse
415 Unsupported Media Type Unsupported Media Type - A media type which the serves does not support has been supplied. FailedPaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. FailedPaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

Response Headers

Status Header Type Format Description
201 Location undefined Location of the created collection order request resource, for future reference or status polling.

refund

POST /v1/collections/{collectionOrderId}:refund

Refund the Collection Instruction specified by the collectionOrderId

Example Request

{
  "reasonCode": "MD01"
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
body RefundReason none body false

Example Responses

202 :
undefined

{
  "correlationId": "bd6c0135-71fc-4274-ab29-18e20f73d577"
}

400 :
undefined

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "The specified Refund reason code is invalid: ABC"
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
202 Accepted Accepted - Request to Refund outgoing Direct Debit has been submitted but not yet executed RequestAccepted
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. PaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. PaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

Response Headers

Status Header Type Format Description
202 Location string Streaming API Event Type name where the response will be published. The structure of the response is described in the RefundStatus component of this contract.

reverse

POST /v1/collections/{collectionOrderId}:reverse

Reverse the Collection Instruction specified by the collectionOrderId

Example Request

{
  "reasonCode": "AM05"
}

Parameters

Name Type Description In Required
Content-Type string application/json header true
body ReverseReason none body false

Example Responses

400 :
undefined

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "text": "value \"MD02\" not supported"
    }
  ]
}

500 :
internalServerError

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "SERVICE_INVALID",
      "text": "There was an error processing your request. It has been logged (ID a449ea6319107e42)."
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK OK - Collection Instruction marked to be reversed successfully. None
400 Bad Request Bad Request - Validation error occurred. This code will cover malformed syntax in request or incorrect data in payload. PaymentResponse
500 Internal Server Error Internal Server Error - Internal server error occurred. PaymentResponse
503 Service Unavailable Service Unavailable - The server is currently unavailable. Generally, this is a temporary state. None

Settings

These endpoints allow you to configure settings for the Payment Gateway such as setting callback URLs which will be notified on certain actions.

publishWebhook

POST /v1/gateway-webhook-url

This contract is for the webhook url configured under payment gateway. This will published outgoing SEPA instructions, like pacs.008, pacs.004, pacs.002 etc. via webhook call

Example Request

Parameters

Name Type Description In Required
Content-Type string application/xml header true
Authorization string BASIC authentication credentials Base64 encoded, if credentials filled in webhook configuration header false
Message-Type string Message namespace URN. For example urn:iso:std:iso:20022:tech:xsd:pacs.008.001.02 header true
Message-Id string Message ID, representing the GrpHdr>MsgId field of the message header true
body string(EPC) SEPA instruction body true

Responses

Status Meaning Description Schema

Schemas

Account

{
  "currency": "str",
  "identification": {
    "iban": "stringstringstr",
    "other": {
      "identification": "string",
      "scheme": "string"
    }
  }
}

Beneficiary’s account.

Properties

Name Type Description Required Restrictions
currency string ISO 4217 Alpha 3 currency code. false none
identification Identification Unique and unambiguous identification for the account. true none

AccountIdentificationsFilterCriteriaDTO

{
  "field": "SCHEME",
  "operator": "EQUALS",
  "value": "string"
}

Account identification search criteria

Properties

Name Type Description Required Restrictions
field string Contains the actual searching fields that can be native (one from the provided list) true none
operator string EQUALS - checks that 'field' equals to 'value' (strict equals, does not support parts or masks) true none
value string The value to match the searching criteria false none

Enumerated Values

Property Value
field SCHEME
field IBAN
field IDENTIFICATION
operator EQUALS

AccountIdentificationsSearchRequestDTO

{
  "filterCriteria": [
    {
      "field": "SCHEME",
      "operator": "EQUALS",
      "value": "string"
    }
  ]
}

Properties

Name Type Description Required Restrictions
filterCriteria [AccountIdentificationsFilterCriteriaDTO] Account identification search criteria true none

AccountIdentificationsSearchResponseDTO

{
  "accountId": "string",
  "currency": "string",
  "identification": {
    "iban": "stringstringstr",
    "other": {
      "identification": "string",
      "scheme": "string"
    }
  },
  "type": "string"
}

Properties

Name Type Description Required Restrictions
accountId string AccountID (Unique and unambiguous identification for the account.) true none
currency string Account currency false none
identification Identification Unique and unambiguous identification for the account. true none
type string Account type false none

AccountInternalIdentification

{
  "currency": "string",
  "id": "string",
  "type": "DEPOSIT"
}

Mambu Accounts corresponding to the current IBAN / proprietary identification

Properties

Name Type Description Required Restrictions
currency string none false none
id string none false none
type string none false none

Enumerated Values

Property Value
type DEPOSIT
type LOAN

AccountMappingResponse

{
  "internalAccounts": [
    {
      "currency": "string",
      "id": "string",
      "type": "DEPOSIT"
    }
  ],
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ]
}

Properties

Name Type Description Required Restrictions
internalAccounts [AccountInternalIdentification] Mambu Accounts corresponding to the current IBAN / proprietary identification false none
tppMessages [TPPMessage] Messages to the TPP on operational issues. false none

Address-PG

{
  "buildingNumber": "string",
  "city": "string",
  "countryCode": "st",
  "postalCode": "string",
  "street": "string"
}

Properties

Name Type Description Required Restrictions
buildingNumber string none false none
city string none false none
countryCode string Two characters as defined by ISO 3166. true none
postalCode string none false none
street string none false none

Agent

{
  "institutionIdentification": {
    "bicfi": "stringst"
  }
}

Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used.

Properties

Name Type Description Required Restrictions
institutionIdentification InstitutionIdentification Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised identification scheme. true none

AmlPaymentIdentification

{
  "transactionIdentification": "string"
}

Payment instruction reference.

Properties

Name Type Description Required Restrictions
transactionIdentification string Unique identification as assigned by the initiating party to be used as transaction identifier. true none

AmlResult

{
  "groupHeader": {
    "messageIdentification": "string"
  },
  "transactions": [
    {
      "debtorAgent": {
        "institutionIdentification": {
          "bicfi": "stringst"
        }
      },
      "interbankSettlementDate": "stringstri",
      "paymentIdentification": {
        "transactionIdentification": "string"
      },
      "status": "ACCEPTED"
    }
  ]
}

Properties

Name Type Description Required Restrictions
groupHeader GroupHeader GroupHeader information from the original instruction. true none
transactions [AmlTransactionResult] List of AML result checks, one per Payment Order. true none

AmlTransactionResult

{
  "debtorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "interbankSettlementDate": "stringstri",
  "paymentIdentification": {
    "transactionIdentification": "string"
  },
  "status": "ACCEPTED"
}

List of AML result checks, one per Payment Order.

Properties

Name Type Description Required Restrictions
debtorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. true none
interbankSettlementDate string InterbankSettlementDate from the original instruction. true none
paymentIdentification AmlPaymentIdentification Payment instruction reference. true none
status string Actual status of the AML investigation. Only
ACCEPTED, SUSPENDED or REJECTED are allowed.
true none

Enumerated Values

Property Value
status ACCEPTED
status SUSPENDED
status REJECTED

Amount

{
  "amount": "string",
  "currency": "str"
}

Transaction currency and amount.

Properties

Name Type Description Required Restrictions
amount string The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus. The decimal separator is a dot. true none
currency string ISO 4217 Alpha 3 currency code. true none

Collection

{
  "creditorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "creditorAddress": {
    "buildingNumber": "string",
    "city": "string",
    "countryCode": "st",
    "postalCode": "string",
    "street": "string"
  },
  "creditorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "creditorName": "string",
  "creditorSchemeIdentification": {
    "identification": {
      "privateIdentification": "ABC123"
    }
  },
  "debtorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "debtorAddress": {
    "buildingNumber": "string",
    "city": "string",
    "countryCode": "st",
    "postalCode": "string",
    "street": "string"
  },
  "debtorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "debtorName": "string",
  "instructedAmount": {
    "amount": "string",
    "currency": "str"
  },
  "mandateRelatedInformation": {
    "dateOfSignature": "string",
    "mandateIdentification": "string"
  },
  "paymentIdentification": {
    "endToEndIdentification": "string",
    "transactionIdentification": "string"
  },
  "paymentTypeInformation": {
    "sequenceType": "string"
  },
  "purposeCode": "stri",
  "remittanceInformationStructured": {
    "reference": "string",
    "referenceIssuer": "string",
    "referenceType": "string"
  },
  "remittanceInformationUnstructured": "string",
  "requestedExecutionDate": "stringstri",
  "requestedExecutionTime": "stringstringstrin",
  "serviceLevel": "string",
  "ultimateCreditor": "string",
  "ultimateDebtor": "string"
}

Properties

Name Type Description Required Restrictions
creditorAccount Account Beneficiary’s account. true none
creditorAddress Address-PG none false none
creditorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
creditorName string The Party whose account is credited with the payment. true none
creditorSchemeIdentification CreditorSchemeIdentification Credit party that signs the mandate. true none
debtorAccount Account Beneficiary’s account. true none
debtorAddress Address-PG none false none
debtorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
debtorName string none true none
instructedAmount Amount Transaction currency and amount. true none
mandateRelatedInformation Mandate Set of elements used to provide further details of the direct debit mandate signed between the creditor and the debtor. true none
paymentIdentification PaymentIdentification Payment instruction reference. false none
paymentTypeInformation PaymentTypeInformation Set of elements used to further specify the type of transaction. true none
purposeCode string The PurposeCode value or a similar explanation is not added to the payer’s Electronic account statement. This value can be shown on both the payers and the beneficiary’s on the Camt.053 account statement. false none
remittanceInformationStructured Remittance Payment details. Structured message, one entry (max 140 characters XML tags and data included).
Alternatives for structured remittance
information, see examples:
- Reference number (note: facility to use ISO 11649, International standard of Reference information)
false none
remittanceInformationUnstructured string Payment details. Free text, one occurrence (max 140 characters).
Payment reason (according to current recurrent payment standard) can be given in this element.
false none
requestedExecutionDate string Debit date given by the customer. A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. false none
requestedExecutionTime string Debit date given by the customer. A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ) or local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm). These representations are aligned with ISO 8601. false none
serviceLevel string Agreement under which or rules under which the transaction should be processed. Only SEPA is allowed. false none
ultimateCreditor string Party which is the ultimate beneficiary of the payment. For example, the payment can be credited to an account of a financing company, with the ultimate beneficiary being the customer of the financing company. false none
ultimateDebtor string The Party that originally ordered goods or services and to whom the seller has sent the invoice. Ultimate Debtor can be used when the acceptor of the invoice is different than the payer. false none

CollectionDetails

{
  "creditorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "creditorAddress": {
    "addressLine1": "string",
    "addressLine2": "string",
    "buildingNumber": "string",
    "city": "string",
    "countryCode": "string",
    "postalCode": "string",
    "street": "string"
  },
  "creditorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "creditorName": "string",
  "creditorSchemeIdentification": {
    "identification": {
      "privateIdentification": "ABC123"
    }
  },
  "debtorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "debtorAddress": {
    "addressLine1": "string",
    "addressLine2": "string",
    "buildingNumber": "string",
    "city": "string",
    "countryCode": "string",
    "postalCode": "string",
    "street": "string"
  },
  "debtorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "debtorName": "string",
  "direction": "string",
  "instructedAmount": {
    "amount": "string",
    "currency": "str"
  },
  "lastStatusUpdateTimestamp": "2019-08-24T14:15:22Z",
  "mandateRelatedInformation": {
    "dateOfSignature": "string",
    "mandateIdentification": "string"
  },
  "paymentIdentification": {
    "endToEndIdentification": "string",
    "instructionIdentification": "string",
    "transactionIdentification": "string"
  },
  "paymentTypeInformation": {
    "sequenceType": "string"
  },
  "product": "SEPA_CREDIT_TRANSFER",
  "purposeCode": "string",
  "remittanceInformationStructured": {
    "reference": "string",
    "referenceIssuer": "string",
    "referenceType": "string"
  },
  "remittanceInformationUnstructured": "string",
  "requestedExecutionDate": "string",
  "requestedExecutionTime": "string",
  "serviceLevel": "string",
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ],
  "transactionStatus": "string",
  "ultimateCreditor": "string",
  "ultimateDebtor": "string"
}

Properties

Name Type Description Required Restrictions
creditorAccount Account Beneficiary’s account. false none
creditorAddress FullDetailsAddress none false none
creditorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
creditorName string The Party whose account is credited with the payment. false none
creditorSchemeIdentification CreditorSchemeIdentification Credit party that signs the mandate. false none
debtorAccount Account Beneficiary’s account. false none
debtorAddress FullDetailsAddress none false none
debtorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
debtorName string none false none
direction string Payment direction, as inferred based on current Payment Product, Debtor and Creditor Agents false none
instructedAmount Amount Transaction currency and amount. false none
lastStatusUpdateTimestamp string(date-time) Timestamp when the transaction status was last updated, expressed in UTC time format (YYYY-MM-DDThh:mm:ss.sssZ). The representation is aligned with ISO 8601. false none
mandateRelatedInformation Mandate Set of elements used to provide further details of the direct debit mandate signed between the creditor and the debtor. false none
paymentIdentification FullPaymentIdentification Payment instruction reference. false none
paymentTypeInformation PaymentTypeInformation Set of elements used to further specify the type of transaction. false none
product string Payment Product type false none
purposeCode string The PurposeCode value or a similar explanation is not added to the payer’s Electronic account statement. This value can be shown on both the payers and the beneficiary’s on the Camt.053 account statement. false none
remittanceInformationStructured Remittance Payment details. Structured message, one entry (max 140 characters XML tags and data included).
Alternatives for structured remittance
information, see examples:
- Reference number (note: facility to use ISO 11649, International standard of Reference information)
false none
remittanceInformationUnstructured string Payment details. Free text, one occurrence (max 140 characters).
Payment reason (according to current recurrent payment standard) can be given in this element.
false none
requestedExecutionDate string Debit date given by the customer. A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. false none
requestedExecutionTime string Debit date given by the customer. A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ) or local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm). These representations are aligned with ISO 8601. false none
serviceLevel string none false none
tppMessages [TPPMessage] Messages to the TPP on operational issues. false none
transactionStatus string none true none
ultimateCreditor string Party which is the ultimate beneficiary of the payment. For example, the payment can be credited to an account of a financing company, with the ultimate beneficiary being the customer of the financing company. false none
ultimateDebtor string The Party that originally ordered goods or services and to whom the seller has sent the invoice. Ultimate Debtor can be used when the acceptor of the invoice is different than the payer. false none

Enumerated Values

Property Value
product SEPA_CREDIT_TRANSFER
product SEPA_DIRECT_DEBIT

CollectionResponse

{
  "collectionId": "string",
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ],
  "transactionFeeIndicator": true,
  "transactionStatus": "ACSC"
}

Properties

Name Type Description Required Restrictions
collectionId string Resource identification of the generated payment initiation resource. true none
tppMessages [TPPMessage] Messages to the TPP on operational issues. false none
transactionFeeIndicator boolean If equals "true", the transaction will involve transaction cost. false none
transactionStatus string PSD2 transaction status codes:
  • ACSC: Settlement on the debtor’s account has been completed.
    Usage: this can be used by the first agent to report to the debtor that the transaction has been completed.
    Warning: this status is provided for transaction status reasons, not for financial information. It can only be used after bilateral agreement.
  • ACSP: All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution.
  • ACTC: Authentication and syntactical and semantical validation are successful.
  • RCVD: Payment initiation has been received by the receiving agent.
  • PDNG: Payment initiation or individual transaction included in the payment initiation is pending. Further checks and status update will be performed.
  • RJCT: Payment initiation or individual transaction included in the payment initiation has been rejected.
true none

Enumerated Values

Property Value
transactionStatus ACSC
transactionStatus ACSP
transactionStatus ACTC
transactionStatus RCVD
transactionStatus PDNG
transactionStatus RJCT

CreateAccountMapping

{
  "identification": {
    "iban": "stringstringstr",
    "other": {
      "identification": "string",
      "scheme": "string"
    }
  }
}

Properties

Name Type Description Required Restrictions
identification Identification Unique and unambiguous identification for the account. true none

CreateAccountMappings

{
  "accountIds": [
    "string"
  ],
  "identification": {
    "iban": "stringstringstr",
    "other": {
      "identification": "string",
      "scheme": "string"
    }
  }
}

Properties

Name Type Description Required Restrictions
accountIds [string] IDs of the Mambu Accounts which will be correlated to the IBAN or proprietary identification. The association will be made on account currency. true none
identification Identification Unique and unambiguous identification for the account. true none

CreateBlockingRule

{
  "creditorMandate": {
    "creditorSchemeIdentification": {
      "identification": {
        "privateIdentification": "ABC123"
      }
    },
    "mandateRelatedInformation": {
      "mandateIdentification": "string"
    }
  },
  "product": "string"
}

Properties

Name Type Description Required Restrictions
creditorMandate CreditorMandate Collection mandate identification for blocking rule deletion false none
product string Payment Product to which this rule applies. For now, blocking rules can be applied to SEPA_DIRECT_DEBIT only true none

CreditTransferTransactionInformation

{
  "_metadata": {
    "paymentId": "string",
    "returnReason": "string",
    "transactionSn": 0,
    "transactionStatus": "string"
  },
  "additionalProperties": null
}

Provides information on the individual transaction(s) included in the message

Properties

Name Type Description Required Restrictions
_metadata SepaInstructionMetadata Instruction-level metadata of a SEPA instruction false none
additionalProperties any cdtTrfTxInf information included in the message, as provided by the originator false none

CreditorMandate

{
  "creditorSchemeIdentification": {
    "identification": {
      "privateIdentification": "ABC123"
    }
  },
  "mandateRelatedInformation": {
    "mandateIdentification": "string"
  }
}

Collection mandate identification for blocking rule deletion

Properties

Name Type Description Required Restrictions
creditorSchemeIdentification CreditorSchemeIdentification Credit party that signs the mandate. true none
mandateRelatedInformation MandateRelatedInformation none true none

CreditorSchemeIdentification

{
  "identification": {
    "privateIdentification": "ABC123"
  }
}

Credit party that signs the mandate.

Properties

Name Type Description Required Restrictions
identification object Object containing the identifier. true none
» privateIdentification string Unique and unambiguous identification of a person, eg, passport. true none

DeleteBlockingRule

{
  "creditorMandate": {
    "creditorSchemeIdentification": {
      "identification": {
        "privateIdentification": "ABC123"
      }
    },
    "mandateRelatedInformation": {
      "mandateIdentification": "string"
    }
  },
  "product": "string"
}

Properties

Name Type Description Required Restrictions
creditorMandate CreditorMandate Collection mandate identification for blocking rule deletion false none
product string Payment Product for blocking rule deletion true none

FIToFICstmrCdtTrf

{
  "_metadata": {
    "bulkSn": 0,
    "direction": "string",
    "procstatus": "string",
    "transactions": 0
  },
  "cdtTrfTxInf": [
    {
      "_metadata": {
        "paymentId": "string",
        "returnReason": "string",
        "transactionSn": 0,
        "transactionStatus": "string"
      },
      "additionalProperties": null
    }
  ],
  "grpHdr": {}
}

FI to FI Customer Credit Transfer

Properties

Name Type Description Required Restrictions
_metadata SepaMessageMetadata Message-level metadata of the current SEPA message false none
cdtTrfTxInf [CreditTransferTransactionInformation] [Provides information on the individual transaction(s) included in the message] false none
grpHdr object Set of characteristics shared by all individual transactions included in the message, as provided by the originator false none

FailedAccountMappingResponse

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ]
}

Properties

Name Type Description Required Restrictions
tppMessages [TPPMessage] Messages to the TPP on operational issues. true none

FailedPaymentResponse

{
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ]
}

Properties

Name Type Description Required Restrictions
tppMessages [TPPMessage] Messages to the TPP on operational issues. true none

FullDetailsAddress

{
  "addressLine1": "string",
  "addressLine2": "string",
  "buildingNumber": "string",
  "city": "string",
  "countryCode": "string",
  "postalCode": "string",
  "street": "string"
}

Properties

Name Type Description Required Restrictions
addressLine1 string none false none
addressLine2 string none false none
buildingNumber string none false none
city string none false none
countryCode string none false none
postalCode string none false none
street string none false none

FullPaymentIdentification

{
  "endToEndIdentification": "string",
  "instructionIdentification": "string",
  "transactionIdentification": "string"
}

Payment instruction reference.

Properties

Name Type Description Required Restrictions
endToEndIdentification string Unique identification assigned by the payer to identify the transaction. This identification will be returned to the payer and passed on to the beneficiary. false none
instructionIdentification string Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction. false none
transactionIdentification string Unique identification as assigned by the initiating party to be used as transaction identifier. If left empty, Mambu transaction id will be used. false none

GroupHeader

{
  "messageIdentification": "string"
}

GroupHeader information from the original instruction.

Properties

Name Type Description Required Restrictions
messageIdentification string Message Identification from the original instruction. true none

Identification

{
  "iban": "stringstringstr",
  "other": {
    "identification": "string",
    "scheme": "string"
  }
}

Unique and unambiguous identification for the account.

Properties

Name Type Description Required Restrictions
iban string ISO 13616 International Bank Account Number (IBAN) - identifier used internationally by financial institutions to uniquely identify the account of a customer. false none
other Other Unique identification of an account, as assigned by the account servicer, using other identification scheme. false none

IncomingPaymentResponse

{
  "messageId": "string",
  "messageType": "string"
}

Properties

Name Type Description Required Restrictions
messageId string Resource identification of the incoming message true none
messageType string URN namespace of the incoming message true none

InstitutionIdentification

{
  "bicfi": "stringst"
}

Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised identification scheme.

Properties

Name Type Description Required Restrictions
bicfi string ISO 9362 Business identifier code (BIC) - code allocated to a financial institution. true none

Mandate

{
  "dateOfSignature": "string",
  "mandateIdentification": "string"
}

Set of elements used to provide further details of the direct debit mandate signed between the creditor and the debtor.

Properties

Name Type Description Required Restrictions
dateOfSignature string Date on which the direct debit mandate has been signed by the debtor. true none
mandateIdentification string Unique identification, as assigned by the creditor, to unambiguously identify the mandate. true none

MandateRelatedInformation

{
  "mandateIdentification": "string"
}

Properties

Name Type Description Required Restrictions
mandateIdentification string Unique identification, as assigned by the creditor, to unambiguously identify the collection mandate. true none

Message

{
  "_metadata": {
    "bulkSn": 0,
    "direction": "string",
    "procstatus": "string",
    "transactions": 0
  },
  "cdtTrfTxInf": [
    {
      "_metadata": {
        "paymentId": "string",
        "returnReason": "string",
        "transactionSn": 0,
        "transactionStatus": "string"
      },
      "additionalProperties": null
    }
  ],
  "grpHdr": {}
}

List of SEPA instructions.

Properties

anyOf

Name Type Description Required Restrictions
anonymous FIToFICstmrCdtTrf FI to FI Customer Credit Transfer false none

or

Name Type Description Required Restrictions
anonymous PmtRtr Payment Return false none

Other

{
  "identification": "string",
  "scheme": "string"
}

Unique identification of an account, as assigned by the account servicer, using other identification scheme.

Properties

Name Type Description Required Restrictions
identification string Identification assigned by an institution. true none
scheme string Name of the identification scheme. true none

Payment

{
  "creditorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "creditorAddress": null,
  "creditorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "creditorName": "string",
  "debtorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "debtorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "debtorName": "string",
  "instructedAmount": {
    "amount": "string",
    "currency": "str"
  },
  "paymentIdentification": {
    "endToEndIdentification": "string",
    "transactionIdentification": "string"
  },
  "purposeCode": "stri",
  "remittanceInformationStructured": {
    "reference": "string",
    "referenceIssuer": "string",
    "referenceType": "string"
  },
  "remittanceInformationUnstructured": "string",
  "requestedExecutionDate": "stringstri",
  "requestedExecutionTime": "stringstringstrin",
  "ultimateCreditor": "string",
  "ultimateDebtor": "string"
}

Properties

Name Type Description Required Restrictions
creditorAccount Account Beneficiary’s account. true none
creditorAddress Address none false none
creditorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
creditorName string The Party whose account is credited with the payment. true none
debtorAccount Account Beneficiary’s account. true none
debtorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
debtorName string none true none
instructedAmount Amount Transaction currency and amount. true none
paymentIdentification PaymentIdentification Payment instruction reference. false none
purposeCode string The PurposeCode value or a similar explanation is not added to the payer’s Electronic account statement. This value can be shown on both the payers and the beneficiary’s on the Camt.053 account statement. false none
remittanceInformationStructured Remittance Payment details. Structured message, one entry (max 140 characters XML tags and data included).
Alternatives for structured remittance
information, see examples:
- Reference number (note: facility to use ISO 11649, International standard of Reference information)
false none
remittanceInformationUnstructured string Payment details. Free text, one occurrence (max 140 characters).
Payment reason (according to current recurrent payment standard) can be given in this element.
false none
requestedExecutionDate string Debit date given by the customer. A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. false none
requestedExecutionTime string Debit date given by the customer. A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ) or local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm). These representations are aligned with ISO 8601. false none
ultimateCreditor string Party which is the ultimate beneficiary of the payment. For example, the payment can be credited to an account of a financing company, with the ultimate beneficiary being the customer of the financing company. false none
ultimateDebtor string The Party that originally ordered goods or services and to whom the seller has sent the invoice. Ultimate Debtor can be used when the acceptor of the invoice is different than the payer. false none

PaymentDetails

{
  "creditorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "creditorAddress": null,
  "creditorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "creditorName": "string",
  "debtorAccount": {
    "currency": "str",
    "identification": {
      "iban": "stringstringstr",
      "other": {
        "identification": "string",
        "scheme": "string"
      }
    }
  },
  "debtorAgent": {
    "institutionIdentification": {
      "bicfi": "stringst"
    }
  },
  "debtorName": "string",
  "instructedAmount": {
    "amount": "string",
    "currency": "str"
  },
  "lastStatusUpdateTimestamp": "2019-08-24T14:15:22Z",
  "paymentIdentification": {
    "endToEndIdentification": "string",
    "instructionIdentification": "string",
    "transactionIdentification": "string"
  },
  "purposeCode": "string",
  "remittanceInformationStructured": {
    "reference": "string",
    "referenceIssuer": "string",
    "referenceType": "string"
  },
  "remittanceInformationUnstructured": "string",
  "requestedExecutionDate": "string",
  "requestedExecutionTime": "string",
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ],
  "transactionStatus": "string",
  "ultimateCreditor": "string",
  "ultimateDebtor": "string"
}

Properties

Name Type Description Required Restrictions
creditorAccount Account Beneficiary’s account. false none
creditorAddress Address none false none
creditorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
creditorName string The Party whose account is credited with the payment. false none
debtorAccount Account Beneficiary’s account. false none
debtorAgent Agent Financial institution servicing an account for the creditor. This field is mandatory when proprietary ('other') creditor account identification is used. false none
debtorName string none false none
instructedAmount Amount Transaction currency and amount. false none
lastStatusUpdateTimestamp string(date-time) Timestamp when the transaction status was last updated, expressed in UTC time format (YYYY-MM-DDThh:mm:ss.sssZ). The representation is aligned with ISO 8601. false none
paymentIdentification FullPaymentIdentification Payment instruction reference. false none
purposeCode string The PurposeCode value or a similar explanation is not added to the payer’s Electronic account statement. This value can be shown on both the payers and the beneficiary’s on the Camt.053 account statement. false none
remittanceInformationStructured Remittance Payment details. Structured message, one entry (max 140 characters XML tags and data included).
Alternatives for structured remittance
information, see examples:
- Reference number (note: facility to use ISO 11649, International standard of Reference information)
false none
remittanceInformationUnstructured string Payment details. Free text, one occurrence (max 140 characters).
Payment reason (according to current recurrent payment standard) can be given in this element.
false none
requestedExecutionDate string Debit date given by the customer. A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. false none
requestedExecutionTime string Debit date given by the customer. A particular point in the progression of time defined by a mandatory date and a mandatory time component, expressed in either UTC time format (YYYY-MM-DDThh:mm:ss.sssZ) or local time with UTC offset format (YYYY-MM-DDThh:mm:ss.sss+/-hh:mm). These representations are aligned with ISO 8601. false none
tppMessages [TPPMessage] Messages to the TPP on operational issues. false none
transactionStatus string none true none
ultimateCreditor string Party which is the ultimate beneficiary of the payment. For example, the payment can be credited to an account of a financing company, with the ultimate beneficiary being the customer of the financing company. false none
ultimateDebtor string The Party that originally ordered goods or services and to whom the seller has sent the invoice. Ultimate Debtor can be used when the acceptor of the invoice is different than the payer. false none

PaymentIdentification

{
  "endToEndIdentification": "string",
  "transactionIdentification": "string"
}

Payment instruction reference.

Properties

Name Type Description Required Restrictions
endToEndIdentification string Unique identification assigned by the payer to identify the transaction. This identification will be returned to the payer and passed on to the beneficiary. false none
transactionIdentification string Unique identification as assigned by the initiating party to be used as transaction identifier. If left empty, Mambu transaction id will be used. false none

PaymentResponse

{
  "paymentId": "string",
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ],
  "transactionFeeIndicator": true,
  "transactionStatus": "ACSC"
}

Properties

Name Type Description Required Restrictions
paymentId string Resource identification of the generated payment initiation resource. true none
tppMessages [TPPMessage] Messages to the TPP on operational issues. false none
transactionFeeIndicator boolean If equals "true", the transaction will involve transaction cost. false none
transactionStatus string PSD2 transaction status codes:
  • ACSC: Settlement on the debtor’s account has been completed.
    Usage: this can be used by the first agent to report to the debtor that the transaction has been completed.
    Warning: this status is provided for transaction status reasons, not for financial information. It can only be used after bilateral agreement.
  • ACSP: All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution.
  • ACTC: Authentication and syntactical and semantical validation are successful.
  • RCVD: Payment initiation has been received by the receiving agent.
  • PDNG: Payment initiation or individual transaction included in the payment initiation is pending. Further checks and status update will be performed.
  • RJCT: Payment initiation or individual transaction included in the payment initiation has been rejected.
true none

Enumerated Values

Property Value
transactionStatus ACSC
transactionStatus ACSP
transactionStatus ACTC
transactionStatus RCVD
transactionStatus PDNG
transactionStatus RJCT

PaymentTransactionInformation

{
  "_metadata": {
    "paymentId": "string",
    "returnReason": "string",
    "transactionSn": 0,
    "transactionStatus": "string"
  },
  "additionalProperties": null
}

Provides information on the individual transaction(s) included in the message

Properties

Name Type Description Required Restrictions
_metadata SepaInstructionMetadata Instruction-level metadata of a SEPA instruction false none
additionalProperties any txInf information included in the message, as provided by the originator false none

PaymentTypeInformation

{
  "sequenceType": "string"
}

Set of elements used to further specify the type of transaction.

Properties

Name Type Description Required Restrictions
sequenceType string Identifies the direct debit sequence, such as first, recurrent, final or one-off (FRST, RCUR, FNAL, OOFF). true none

PmtRtr

{
  "_metadata": {
    "bulkSn": 0,
    "direction": "string",
    "procstatus": "string",
    "transactions": 0
  },
  "grpHdr": {},
  "txInf": [
    {
      "_metadata": {
        "paymentId": "string",
        "returnReason": "string",
        "transactionSn": 0,
        "transactionStatus": "string"
      },
      "additionalProperties": null
    }
  ]
}

Payment Return

Properties

Name Type Description Required Restrictions
_metadata SepaMessageMetadata Message-level metadata of the current SEPA message false none
grpHdr object Set of characteristics shared by all individual transactions included in the message, as provided by the originator false none
txInf [PaymentTransactionInformation] [Provides information on the individual transaction(s) included in the message] false none

RefundReason

{
  "reasonCode": "MD01"
}

Properties

Name Type Description Required Restrictions
reasonCode string Reason for an interbank Refund, as defined in the SEPA guideline. MD01 - No Mandate, MD06 - Return of funds requested by end customer. true none

Enumerated Values

Property Value
reasonCode MD01
reasonCode MD06

RefundStatus

{
  "correlationId": "string",
  "status": "SUCCESS",
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ]
}

Properties

Name Type Description Required Restrictions
correlationId string ID used to correlate between a request and its asynchronous response true none
status string Status of the Refund processing. SUCCESS if the refund was properly processed and published towards ACH, FAILURE otherwise true none
tppMessages [TPPMessage] Messages to the TPP on operational issues. false none

Enumerated Values

Property Value
status SUCCESS
status FAILURE

Remittance

{
  "reference": "string",
  "referenceIssuer": "string",
  "referenceType": "string"
}

Payment details. Structured message, one entry (max 140 characters XML tags and data included). Alternatives for structured remittance information, see examples:

Properties

Name Type Description Required Restrictions
reference string The actual reference. true none
referenceIssuer string none false none
referenceType string none false none

RequestAccepted

{
  "correlationId": "string"
}

Properties

Name Type Description Required Restrictions
correlationId string ID used to correlate between a request and its asynchronous response true none

ReverseReason

{
  "reasonCode": "AM05"
}

Properties

Name Type Description Required Restrictions
reasonCode string Reason for an interbank Reverse, as defined in the SEPA guideline true none

Enumerated Values

Property Value
reasonCode AM05
reasonCode MS02
reasonCode MS03

SepaInstructionMetadata

{
  "paymentId": "string",
  "returnReason": "string",
  "transactionSn": 0,
  "transactionStatus": "string"
}

Instruction-level metadata of a SEPA instruction

Properties

Name Type Description Required Restrictions
paymentId string Resource identification of the generated payment initiation resource for the undelining instruction. Four outgoing messages this will contain the value of paymentId field returned in the Payment Initiation API. For incoming messages, this field will be populated once the message is picked up by the incoming scheduler. For incoming pacs.008 will contain an internal identification for the incoming payment order, for incoming pacs.004 the original payment order which is returned. false none
returnReason string Reason code for which this transaction was returned false none
transactionSn integer Instruction ID, as assigned by the Payment Gateway false none
transactionStatus string Status of the current transaction false none

SepaMessageMetadata

{
  "bulkSn": 0,
  "direction": "string",
  "procstatus": "string",
  "transactions": 0
}

Message-level metadata of the current SEPA message

Properties

Name Type Description Required Restrictions
bulkSn integer Bulk ID of the SEPA message, as assigned by the Payment Gateway false none
direction string Direction of the SEPA message. I (incoming) or O (outgoing) false none
procstatus string Processing status of the SEPA message false none
transactions integer Number of transactions in the SEPA message false none

SepaMessages

{
  "instructions": [
    {
      "_metadata": {
        "bulkSn": 0,
        "direction": "string",
        "procstatus": "string",
        "transactions": 0
      },
      "cdtTrfTxInf": [
        {
          "_metadata": {
            "paymentId": "string",
            "returnReason": "string",
            "transactionSn": 0,
            "transactionStatus": "string"
          },
          "additionalProperties": null
        }
      ],
      "grpHdr": {}
    }
  ],
  "tppMessages": [
    {
      "category": "ERROR",
      "code": "PARAMETER_NOT_SUPPORTED",
      "errorCode": "string",
      "errorReason": "string",
      "path": "string",
      "text": "string"
    }
  ]
}

Properties

Name Type Description Required Restrictions
instructions [Message] List of SEPA instructions false none
tppMessages [TPPMessage] Messages to the TPP on operational issues false none

TPPMessage

{
  "category": "ERROR",
  "code": "PARAMETER_NOT_SUPPORTED",
  "errorCode": "string",
  "errorReason": "string",
  "path": "string",
  "text": "string"
}

Messages to the TPP on operational issues.

Properties

Name Type Description Required Restrictions
category string Category designates the message severity. true none
code string Message error codes:
  • PARAMETER_NOT_SUPPORTED: The parameter is not supported by the API.
  • FORMAT_ERROR: Format of certain request fields are not matching the API requirements. An explicit path to the corresponding field might be added in the return message.
  • SERVICE_INVALID: The addressed service is not valid for the addressed resources or the submitted data.
  • PAYMENT_FAILED: The payment initiation POST request failed during the initial process.
true none
errorCode string Payment error code. Gives a more detailed analysis of any problems which may have occurred during the payment processing. false none
errorReason string Payment error reason. Gives a more detailed analysis of any problems which may have occurred during the payment processing. false none
path string none false none
text string Additional explaining text. false none

Enumerated Values

Property Value
category ERROR
category WARN
code PARAMETER_NOT_SUPPORTED
code FORMAT_ERROR
code SERVICE_INVALID
code PAYMENT_FAILED