Skip to main content

Getting Started with Docmail

Docmail is a print-and-post API. You send us documents and addresses; we print, envelope, and post them via Royal Mail.

Quick Orientation

What you want to doWhere to go
Send your first test letterQuickstart guides
Understand test vs live modeTest Mode
Set up your accountAccount Setup
Go live with real mailingsGoing Live

The 60-Second Version

  1. Create account at https://www.cfhdocmail.com (free, instant)
  2. Enable API access - visit Admin, then My Login Details and ensure "Allow web service access?" is checked
  3. Send test mailing - prefix the name in the CustomerApplication field with [Test]
  4. Check status - poll GetStatus until you receive a response of Mailing submitted
  5. Go live - Complete the approval questionnaire, configure payment and remove [Test] prefix

How Docmail Works

Every mailing follows the same lifecycle:

Key concept: Docmail processes asynchronously. When you submit a mailing, you get a tracking ID immediately. The actual processing (validation, proof generation, pricing) happens in the background. You must poll GetStatus or use callbacks to know when it's complete.

Two Ways to Submit

ApproachBest forCalls needed
Zip file (recommended)Most integrations, batch processing3 calls
Individual callsFine-grained control, conditional logic6+ calls

The zip approach bundles your document, address list, and configuration into a single file. Docmail unpacks and processes it asynchronously. Simpler, faster, fewer round-trips.

It's a SOAP API

Docmail uses SOAP over HTTPS, not REST. If you're used to REST APIs:

REST conceptSOAP equivalent
Endpoint per resourceSingle endpoint, operation in payload
HTTP status codesAlways 200; check response body for errors
JSONXML (with JSON option in response payload)
OpenAPI specWSDL at https://www.cfhdocmail.com/LiveAPI2/DMWS.asmx?WSDL

Most languages have SOAP client libraries that handle the XML for you. See the quickstart for your language.

Environments

EnvironmentPurposeEndpoint
LiveReal mailings, real money, real posthttps://www.cfhdocmail.com/LiveAPI2/DMWS.asmx
TestSame endpoint, [Test] prefix triggers test modeSame as above

There is no separate sandbox server. Test mode is activated by prefixing your CustomerApplication parameter with [Test]. See Test Mode.

Next Steps

First time? Pick your language and follow the quickstart:

Already explored? Read about going live when you're ready for production.