Challenges/construct-sap-purchase-order-bapi-from-order-data
DataWeaveADVANCED

Construct SAP Purchase Order BAPI from Order Data

Stratford Manufacturing needs to transform JSON data from a modern REST API into the XML structure required by SAP's BAPI_PO_CREATE1. In this challenge, you will learn to bridge modern APIs with legacy ERPs by mapping a flat JSON array into a multi-table BAPI structure with repeating XML elements. You will also practice handling strict enterprise integration rules, such as coercing and formatting diverse date inputs into SAP's required YYYYMMDD format.

// READY TO BEGIN

Make it
count.

  • 2 attempts on every challenge
  • XP points & leaderboard scored
  • Public profile & shared trail
  • Newsletter weekly with API replay
ƒ INTEGRATION FLOWctrl + scroll to zoom
// Built by practitioners

The fastest way
to learn integration.

Every challenge ships with a real-world payload, a graded test suite, and a walkthrough by a practitioner. No surface-level theory — just problems, solved.

Challenges
Modules
// You're reading in preview mode

You can read everything.
Coding requires an account.

🔒 IDE locked · sign in to enable
%dw 2.0
output application/json
---
payload
// Sign up to run, submit, and earn XP on this challenge
// Be first to rate this challenge!SCROLL TO READ ↓

The fastest way
to learn integration.

01.
Production payloads
Real CSV/JSON/XML you'll meet on day one — null fields, mixed casing, partial records.
02.
Design problems
What practitioners actually solve — null-safety, idempotency, retries, batch boundaries.
03.
Edge cases that break
Empty arrays, type coercion, deeply nested transforms, locale-specific dates.
CHALLENGES
MODULES
// Free forever · No credit card

Sign up.
Then code.

Free accounts get 3 attempts per challenge, full XP, and your trail progress synced across devices.

▶ Sign up freeHave an account? Sign in →
// WHAT YOU'LL BUILDHOW IT WORKS ↓
01.
Live DataWeave editor
Real DWL 2.0 IDE with helpers, modules, syntax highlighting.
02.
Test cases run on real runner
Same Go runner used in prod. Diffs show exactly which fields fail.
03.
3 graded attempts
Submit when you're ready. Score persists. Solution unlocks after pass or last attempt.
04.
Helpers & multi-module DWL
Bring in reusable %dw modules. Import, export, compose.
05.
XP & leaderboard
Points + XP awarded per challenge. Trail progress synced.
06.
Production-style payloads
Real CSV/JSON/XML — null fields, mixed casing, partial records.