Documentation
Everything you need to run AS2 exchanges on AS2Expert — from the first free station to automated EDIFACT flows.
Create your account
- Register on the home page with your name and work email. No credit card is needed.
- Open the activation email and set your password. The link is personal and expires, so use it soon after it arrives.
- Sign in at b2b.as2expert.com. Your account starts with one working station, its own AS2 ID, a certificate, and a preconfigured echo partner for testing.
Your first exchange 5 minutes
The echo partner returns everything you send it, which makes it the fastest way to prove your setup end to end:
- In the console, open Messages and choose Send.
- Select the echo partner, attach any file, keep signing and encryption enabled, and send.
- Within seconds the outbound message shows
COM OKandMDN OK, and the echoed copy arrives as an inbound message — decrypted, verified, ready to open.
That round trip exercises the full stack: signing, encryption, transmission, MDN generation and verification, and reception. If it works, your station is ready for real partners.
Stations
A station is your AS2 identity: an AS2 ID, a certificate, a receiving URL, and a set of folders (Inbox, Outbox, Sent…) holding its messages. Everything else — partners, messages, certificates in use — hangs off a station.
- Your receiving endpoint is
https://b2b.as2expert.com/AS2HttpReceiver. Give this URL, your AS2 ID and your public certificate to any partner that needs to send to you. - Accounts can hold several stations — useful to separate test from production traffic or to represent different legal entities.
- Access is isolated per station: users only ever see the stations that belong to their profile.
Partners
A partner profile tells AS2Expert how to talk to one counterparty:
- Identity — the partner's AS2 ID and public certificate (used to encrypt what you send them and verify what they sign).
- Endpoint — their receiving URL, plus optional HTTP authentication if their gateway requires it.
- Policy — signing algorithm, encryption algorithm, compression and MDN mode, chosen per partner: none, unsigned sync/async, or signed sync/async.
- Webhooks & firewall — optional event notifications and source-IP restrictions, per partner.
Certificates
All signing and encryption is X.509-based. The certificate manager lets you:
- Generate a self-signed certificate in one click — perfectly valid for AS2, and what most partners exchange in practice.
- Create a CSR and import the CA-issued result if your partner requires a chain of trust.
- Import partner certificates, inspect validity dates and fingerprints, and export public parts as a bundle to hand over.
- Rotate a certificate without downtime: import the new one, switch the station or partner to it, and retire the old one after the agreed cutover.
Sending & receiving
Every document becomes a message in a station folder, with the original payload, all AS2 headers, and a full event history.
Ways to send
- Console — pick a partner, attach one or several files, send.
- REST API —
POST /messages/sendwith the partner, subject and Base64 content. See the API reference. - SFTP — drop the file into the partner's outbound folder.
Receiving
Inbound messages are decrypted, their signature verified, and an MDN is returned to the sender according to their request — synchronously in the HTTP response or asynchronously to their return URL. The decrypted document is available in the console, over the API and via SFTP, and webhook events can notify your systems the moment it lands.
Message states & MDN
Each message carries four independent state flags. Green across the board means the exchange is complete and non-repudiable:
| Flag | Meaning | OK when… |
|---|---|---|
| COM | Transmission | ✓ the HTTP exchange with the partner completed. |
| Sign | Signature | ✓ the payload signature was created (outbound) or cryptographically verified (inbound). |
| Enc | Encryption | ✓ the payload was encrypted for the recipient or successfully decrypted. |
| MDN | Acknowledgement | ✓ the MDN was received, its signature checked and its integrity value (MIC) matches what was sent. |
An ER state always carries a reason in the message's
event trail — a rejected signature, an unreachable endpoint, an MDN
whose MIC does not match. AS2Expert verifies MDN integrity for real:
an acknowledgement that does not prove what was received is flagged,
not filed away.
EDIFACT tools
Any message that contains an EDIFACT interchange shows an EDIFACT action in the console. From there:
- Analyze — the interchange is parsed against the official UNECE directory of its release (D.93A through D.24A, 62 releases, all imported from pinned official sources). You get the structure, every segment explained with its official definition, code meanings, and validation diagnostics.
- Read it as a document — ORDERS, DESADV, INVOIC and friends are rendered as the business document they represent, with a one-click PDF for colleagues who don't read EDI.
- Compose a response — turn a received order into an ORDRSP or DESADV through schema-driven forms. Drafts are validated before they can be generated; generated payloads are immutable and SHA-256-identified.
- Automate acknowledgements — inbound EDIFACT can be analyzed automatically and CONTRL acknowledgements generated, approved and dispatched back over AS2 without anyone touching the console. Acknowledgements are never acknowledged, so loops cannot form.
Webhooks
Configure a webhook per partner to push message events to your
systems as they happen — reception, MDN outcomes, errors. Each
delivery is logged with its attempts and result, and can be replayed
from the log. Configuration is available in the console and over the
API (/webhooks/configure, /webhooks/get,
/webhooks/logs).
SFTP
Every station can be reached over SFTP with per-user credentials. The folder tree mirrors the station's folders; received documents appear as files you can poll and collect. It is the zero-integration path for ERPs that exchange files but not HTTP calls.
Connection
- Host:
b2b.as2expert.com - Port:
2234 - Auth: password or SSH public key (per SFTP user)
Create and manage SFTP users in the console under Stations → SFTP. Passwords are stored hashed (Argon2id).
Collecting received documents
Browse /stations/<station>/inbox (or
by-partner, by-date). Each message is a folder
with meta.json, the decrypted business files under
files/, and raw.eml.
Sending a document
Sending is not a plain drop — it is an atomic draft under
/stations/<station>/upload/<partner>/drafts/<your-id>/:
- Create the draft directory.
- Write
meta.json(subject and options; a_template.meta.jsonis provided next todrafts/). - Upload the payload(s) under
files/. - Write
submit.jsonwith{"action":"submit"}. - Poll
status.jsonuntilstateissubmitted(with asubmitted_message_id) orfailed(witherror_text).
The per-message size limit of your plan applies to SFTP uploads too.
REST API
Everything above is available programmatically through a token-secured JSON API — stations, partners, certificates, messages, sending and webhooks. See the full API reference.