partnerships.toml
An array of [[partnership]] tables. Every field, with types and
defaults:
| Field | Type | Required | Meaning |
|---|---|---|---|
id | string | yes | unique configuration key; appears in logs, journal, metrics |
local_id | string | yes | our AS2 identifier for this relationship |
remote_id | string | yes | the partner’s AS2 identifier |
remote_url | string | no | partner endpoint; present = this partnership can send |
cert_aliases.local | string | yes | keystore alias of our key + certificate |
cert_aliases.remote | string | yes | keystore alias of the partner’s certificate |
AS2 identifiers: 1–128 printable ASCII characters; names containing spaces or quotes are automatically sent quoted per RFC 4130 §6.2 and matched unquoted on receive.
[partnership.security]
| Field | Type | Default | Meaning |
|---|---|---|---|
sign | digest name | unsigned | signing digest: md5, sha-1, sha-224, sha-256, sha-384, sha-512; prefix rsassa-pss- for PSS (e.g. rsassa-pss-sha-256) |
encrypt | cipher name | unencrypted | see Supported algorithms |
compress | "before-signing" | "after-signing" | none | ZLIB compression placement |
content_transfer_encoding | "binary" | "base64" | "quoted-printable" | "binary" | outer MIME encoding of outbound messages |
Declared sign/encrypt are also enforced as an inbound floor — see
Partnerships.
[partnership.mdn]
| Field | Type | Default | Meaning |
|---|---|---|---|
request | bool | false | request a receipt when sending |
signed_micalg | digest name | unsigned receipt | request a signed receipt with this digest |
async_url | string | sync | deliver the receipt asynchronously to this URL |
[partnership.http_auth]
| Field | Type | Meaning |
|---|---|---|
username / password | string | HTTP Basic credentials sent when POSTing to this partner (messages and async receipts) |
[partnership.interop]
All booleans; defaults in parentheses:
| Flag | Meaning |
|---|---|
include_cert_in_signature (true) | embed our certificate in CMS signatures (Peppol requires true) |
rfc3851_micalgs (false) | RFC 3851 micalg spellings (sha256) on the wire |
quote_header_values (false) | quote outbound header values |
block_error_mdn (false) | never send negative receipts to this partner |
bc_style_gcm (false) | send AES-GCM in the BouncyCastle-compatible encoding |
force_decrypt (false) | attempt decryption even when the content-type does not announce it |
disable_decrypt (false) | skip decryption (wins over force_decrypt) |
force_verify (false) | attempt verification even when unannounced |
disable_verify (false) | skip verification (wins over force_verify) |
disable_decompress (false) | skip decompression |
verify_use_cert_in_body_part (false) | verify against the certificate embedded in the message instead of the pinned one |
disable_* flags weaken the inbound security floor for that layer and
exist for migrations; prefer removing them once the partner is fixed.