Skip to content

Mandates

Mandates allow Legal Entities to initiate a transfer of funds from somebody else's account, to theirs.

The transfer is made using SEPA Direct Debit (SDDE) and can be used to receive one-time or recurring payments.

Info icon

Information – SEPA Creditor Identifier mandatory in France

In France, only companies holding a SEPA creditor identifier (SCI) are allowed to use Mandates and SDDE. A physical person cannot be allowed to actively retrieve funds from somebody else's account.

Warning icon

Important – Mandates should be kept as proofs in case of litigations

As litigations rules of the SEPA Network are generally in favor of the debtor, it is strongly recommended that Mandates be kept indefinitely to be used as proof if needs be.

Structure

json
{
	"documentId": 0,
	"documentTag": "string",
	"documentStatus": "PENDING",
	"documentTypeId": 0,
	"documentType": "string",
	"residenceId": 0,
	"clientId": 0,
	"userId": 0,
	"userLastname": "string",
	"userFirstname": "string",
	"fileName": "string",
	"temporaryUrl": "string",
	"temporaryUrlThumb": "string",
	"createdDate": "string",
	"modifiedDate": "string",
	"totalRows": 0
}
code icon

API – Swagger documentation available

For a complete list of Mandate attributes, check the Mandates section of the Swagger.

Creation

As of today, Treezor doesn't offer electronic signature services. Therefore, isPaper should always be true and you should assume the physical mandate signature. This paper Mandate must include the UMR (uniqueMandateReference attribute of the Mandate object).

Mandatory parameters

AttributeTypeDescription
sddTypestringDefines the type of SDD. May be:
  • core – To debit individuals (physical persons).
  • b2b – To debit legal entities.
sequenceTypestringDefines whether the debtor will be debited multiple times:
  • one-off – For a one-time payment.
  • recurrent – For recurring payments.
isPaperbooleanIndicates whether the mandate is a paper-based document or electronically signed. Always set to true.
userIdintegerThe unique identifier of the end user requesting the SDD.
debtorNamestringFull name of the debited end user (person or entity). Format: alphanumeric with at least 3 alphabetic characters.
debtorAddressstringThe address of the debited end user.
debtorCitystringCity in which the debited end user is domiciled.
debtorZipCodestringPostcode of the city in which the debited end user is domiciled.
debtorCountrystringCountry in which the debited end user is domiciled. Format: ISO 3166-1 alpha-2.
debtorIbanstringIBAN of the debited end user.
signatureDatestringDate on which the Mandate has been signed by the end user.
Format: YYYY-MM-DD

To create a Mandate, use the following request.

bash
curl -X POST {baseUrl}/v1/mandates \
	--header 'Authorization: Bearer {accessToken}' \
	--header 'Content-Type: application/json' \
	-d '{payload}'

Here is an example of {payload}:

json
{
    "sddType":"core",
	"isPaper":true,
	"userId":123456,
	"debtorName":"Alex Oak",
	"debtorAddress":"99 Rosewood lane",
	"debtorCity":"Paris",
	"debtorZipCode":"75001",
	"debtorCountry":"FR",
	"debtorIban":"FR763000100794123XXXXXXXXXX",
	"debtorBic":"BDFXXXXXXXXX",
	"sequenceType":"recurrent",
	"signatureDate":"2020-04-01",
	"createdIp":"0.0.0.0"
}

Returns the Mandate object, with the corresponding mandateId.

The mandateStatus set to VALIDATED, as Treezor assumes you had it signed by the end user as requested.

json
{
    "mandates": [
        {
            "mandateId": 2356,
            "title": "M",
            "legalInformations": "Treezor",
            "uniqueMandateReference": "79069343D1A80C931FABBC5813E3DB",
            "mandateStatus": "VALIDATED",
            "userId": 1529390,
            "debtorName": "Alex Oak",
            "debtorAddress": "99 Rosewood lane",
            "debtorCity": "Paris",
            "debtorZipCode": "75001",
            "debtorCountry": "FR",
            "debtorIban": "FR763000100794123XXXXXXXX",
            "debtorBic": "BDFXXXXXX",
            "sequenceType": "recurrent",
            "creditorName": "Treezor",
            "sepaCreditorIdentifier": "FR90ZZZ874785",
            "creditorAddress": "99 Rosewood lane",
            "creditorCity": "Paris",
            "creditorZipCode": "75001",
            "creditorCountry": "FR",
            "signatureDate": "2020-04-01",
            "debtorSignatureIp": "",
            "signed": 0,
            "revocationSignatureDate": null,
            "debtorIdentificationCode": "",
            "debtorReferencePartyName": "",
            "debtorReferenceIdentificationCode": "",
            "creditorReferencePartyName": "",
            "creditorReferenceIdentificationCode": "",
            "contractIdentificationNumber": "",
            "contractDescription": "",
            "createdDate": null,
            "codeStatus": 220001,
            "informationStatus": "Mandat complété",
            "isPaper": true,
            "userIdUltimateCreditor": 0
        }
    ]
}
Note icon

Note – Contact your Treezor Account Manager if you encounter a 22026 error

This error indicates Unable to create the mandate. User does not have sepa creditor identifier. It means you need to contact your Treezor Account Manager to set up an SCI (SEPA Creditor Identifier) for that User.

Endpoints

EndpointScope
/v1/mandates
 Create a mandate
read_write
/v1/mandates
 Search for mandates
read_only
/v1/mandates/{mandateId}
 Retrieve a mandate
read_only
/v1/mandates/{mandateId}
 Revoke a mandate
read_write