Skip to main content
POST
/
api
/
external
/
v2
/
sepa_mandates
Create a SEPA mandate
curl --request POST \
  --url https://app.pennylane.com/api/external/v2/sepa_mandates \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "bank": "BNP Paribas",
  "bic": "BNPAFRPP",
  "iban": "FR3612739000506556687647Z31",
  "sequence_type": "RCUR",
  "signed_at": "2025-04-24",
  "identifier": "K-02-2025-12345",
  "customer_id": 47334785
}'
{
  "id": 12345,
  "bank": "BNP Paribas",
  "bic": "BNPAFRPP",
  "iban": "FR3612739000506556687647Z31",
  "sequence_type": "RCUR",
  "signed_at": "2025-04-24",
  "identifier": "K-02-2023-12345",
  "customer": {
    "id": 42,
    "url": "https://app.pennylane.com/api/external/v2/customers/42"
  },
  "created_at": "2023-08-07T14:23:12.000Z",
  "updated_at": "2023-08-07T14:23:12.000Z"
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json
bic
string
required

Bank Identifier Code (BIC) of the customer's bank

Example:

"BNPAFRPP"

iban
string
required

International Bank Account Number (IBAN) of the customer

Example:

"FR3612739000506556687647Z31"

signed_at
string<date>
required

Date when the mandate was signed

Example:

"2025-04-24"

identifier
string
required

Unique identifier for the mandate

Example:

"K-02-2025-12345"

customer_id
integer
required

ID of the customer for which the mandate is created

Example:

47334785

bank
string

Name of the customer's bank

Example:

"BNP Paribas"

sequence_type
enum<string>
default:RCUR

SEPA mandate sequence type that defines the payment process.

  • FRST: First payment in a series of recurring payments
  • OOFF: One-off payment
  • RCUR: Recurring payment that is not the first payment
  • FNAL: Final payment in a series of recurring payments
Available options:
FRST,
OOFF,
RCUR,
FNAL
Example:

"RCUR"

Response

Renders the created SEPA mandate

id
integer
required

ID of the created SEPA mandate

Example:

12345

bank
string | null
required

Name of the customer's bank

Example:

"BNP Paribas"

bic
string
required

Bank Identifier Code (BIC) of the customer's bank

Example:

"BNPAFRPP"

iban
string
required

International Bank Account Number (IBAN) of the customer

Example:

"FR3612739000506556687647Z31"

sequence_type
enum<string>
default:RCUR
required

SEPA mandate sequence type that defines the payment process.

  • FRST: First payment in a series of recurring payments
  • OOFF: One-off payment
  • RCUR: Recurring payment that is not the first payment
  • FNAL: Final payment in a series of recurring payments
Available options:
FRST,
OOFF,
RCUR,
FNAL
Example:

"RCUR"

signed_at
string<date>
required

Date when the mandate was signed

Example:

"2025-04-24"

identifier
string
required

Unique identifier for the mandate

Example:

"K-02-2023-12345"

customer
object
required
created_at
string<date-time>
required

Creation date of the SEPA mandate

Example:

"2023-08-07T14:23:12.000Z"

updated_at
string<date-time>
required

Last update date of the SEPA mandate

Example:

"2023-08-07T14:23:12.000Z"

I