canonical: https://jentic.com/apis/na.worldline-solutions.com/worldline-na

# Na Worldline Solutions Worldline Payment APIs

Worldline Payment APIs (North America) is the merchant-facing payments platform formerly branded Bambora and now part of Worldline. The 23-endpoint API covers card payments, voids, returns, completions, recurring billing, customer profiles with stored cards, settlement and commission reports, and PCI-friendly tokenization. Authentication uses a Passcode value in the Authorization header plus a Sub-Merchant-Id header for partner accounts processing on behalf of merchants. Production base URL is https://api.na.bambora.com/v1.

## For AI agents

Process card payments, manage stored customer profiles and recurring billing, run voids, returns, and completions, and pull settlement and commission reports through Worldline's North American payments API.

## Scope

Does not handle accounting, payroll, tax filing, or fraud-screening rule design - use for North American card processing, recurring billing, and settlement reporting only.

## Capabilities

- Authorise and capture card payments in a single call or as separate auth-then-completion steps
- Void or return a payment by transaction ID, including partial returns
- Tokenize cards via `/scripts/tokenization/tokens` to keep PAN data out of merchant systems
- Create and update customer payment profiles with stored card vaulting
- Bill stored profiles on a recurring schedule via `/recurring/{accountId}`
- Pull settlement, commission, and merchant statement reports for reconciliation

## Use cases

### Card-Present and Card-Not-Present Payments

Process one-time card payments by posting to /payments, then optionally complete a pre-authorisation with `/payments/{transId}/completions` or void it with `/payments/{transId}/void.` The same endpoint shape supports card-on-file flows when paired with /profiles for stored cards. Suits e-commerce checkouts, hosted invoice flows, and back-office order-by-phone capture for merchants in the US and Canada.

Example prompt: Charge $49.99 USD on card token tok_abc via POST /payments and confirm the response shows an approved status.

### Stored-Profile Recurring Billing

Vault a customer's card under a profile via POST /profiles, then bill the profile on a schedule using `/recurring/{accountId}` or by calling /payments with the profile reference. Profiles support multiple cards via `/profiles/{profileId}/cards`, so subscription products can offer 'change card on file' without re-collecting full PAN. Cuts PCI scope by keeping card data out of the merchant's systems.

Example prompt: Create a profile with POST /profiles, attach a card via POST `/profiles/{profileId}/cards`, then trigger a $19.99 monthly charge.

### Refund and Reconciliation Operations

Operations teams void unprocessed authorisations with POST `/payments/{transId}/void` and refund captured payments with POST `/payments/{transId}/returns`, including partial amounts. For reconciliation, GET `/reports/settlement` and `/reports/statements` return structured data that finance can match against bank deposits and processor fees. Replaces manual back-office work in the Worldline merchant portal.

Example prompt: Refund $25 of a $100 transaction via POST `/payments/{transId}/returns` and email the confirmation code to the customer.

### Sub-Merchant Reporting for Platforms

Marketplaces and SaaS platforms that process on behalf of merchants use `/reports/merchants` and `/reports/commissions` to track per-sub-merchant volume and platform commission. The Sub-Merchant-Id header scopes calls to a particular sub-merchant, which keeps multi-tenant accounting clean. Useful for ISVs that need to bill platform fees and produce 1099-K-style reporting.

Example prompt: Pull the commission report for May 2026 with GET `/reports/commissions` and post a per-sub-merchant CSV to the finance bucket.

### AI Agent Payment Operations

Wire Worldline payments into an AI agent through Jentic so it can charge cards, issue refunds, and pull reports on demand. Through Jentic the Authorization Passcode and Sub-Merchant-Id are held in the encrypted vault, and the agent picks the right operation from 23 endpoints via intent search. Lets a finance copilot answer 'refund order 4821' or 'send me the settlement report' without sharing payment credentials in chat.

Example prompt: Search Jentic for 'refund a Worldline payment', execute POST `/payments/{transId}/returns` for the named transaction, and confirm the refund ID in chat.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/payments` | Authorise and capture a card payment |
| POST | `/payments/{transId}/returns` | Issue a full or partial refund |
| POST | `/payments/{transId}/void` | Void an unsettled authorisation |
| POST | `/payments/{transId}/completions` | Capture a previously authorised payment |
| POST | `/profiles` | Create a customer profile with vaulted cards |
| POST | `/profiles/{profileId}/cards` | Add a card to an existing profile |
| GET | `/reports/settlement` | Pull settlement batch reports |
| POST | `/scripts/tokenization/tokens` | Generate a single-use card token |

## Key resources

- **Payments** — Authorise, capture, void, return, complete, and look up card transactions
- **Profiles** — Create and manage customer profiles with vaulted cards
- **Recurring** — Bill stored profiles on a recurring schedule
- **Reports** — Pull settlement, statement, merchant, and commission reports
- **Tokenization** — Generate single-use card tokens to keep PAN data out of merchant systems

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 66 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 73 / 100
  - Developer Experience & Jentic Compatibility: 68 / 100
  - AI-Readiness & Agent Experience: 57 / 100
  - Agent Usability: 94 / 100
  - Security: 50 / 100
  - AI Discoverability: 59 / 100
- **View full report:** https://jentic.com/apis/na.worldline-solutions.com/worldline-na/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Worldline by hand means holding its Passcode and Sub-Merchant-Id, setting both headers on every call against api.na.bambora.com, and mapping the payment, profile, and settlement calls yourself. Through Jentic you install once, import Worldline Payment APIs from the API Directory, store the credentials once, and your agent calls it.
- **Permission scoping:** Worldline puts the transaction id in the URL path (`/payments/{transId}/returns`, `/payments/{transId}/void`), so a rule can pin your agent to one payment. You choose the operations it may call, so money-moving ones like refunds or voids are not included unless you add them.
- **Credential handling:** Your Worldline Passcode and Sub-Merchant-Id are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'process a card payment' or 'refund a transaction', and Jentic returns the matching Worldline operation with its parameter schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Stripe API** — Global card processing and full payments stack with broader feature surface
- **Braintree API** — PayPal-owned card and wallet processing with PayPal and Venmo support
- **Adyen Account Service** — Enterprise omnichannel payments platform with platform/marketplace tooling
- **PayPal Invoicing API** — Invoice and dunning flows that pair with card-processing capture in Worldline

## FAQ

### What authentication does the Worldline Payment API use?

The API uses an API key passed in the Authorization header as the Passcode value, defined as the Passcode security scheme in the spec. Partner platforms also send a Sub-Merchant-Id header to scope the call to a sub-merchant. Through Jentic, both headers live in the encrypted vault and are injected at execution time so credentials never enter the agent's prompt.

### Can I issue a partial refund through the Worldline API?

Yes. POST `/payments/{transId}/returns` accepts an amount field, so you can refund less than the original transaction value. For uncaptured authorisations use POST `/payments/{transId}/void` instead, which releases the auth without producing a refund record.

### How do I bill a saved card on a recurring schedule?

Create a profile with POST /profiles, attach the card via POST `/profiles/{profileId}/cards`, and run scheduled charges through `/recurring/{accountId}` or by posting to /payments with the profile reference. Profiles let you vault cards once and reuse them so the merchant avoids storing PAN data.

### Where do I get reconciliation data for Worldline payments?

GET `/reports/settlement` returns the settlement batches that cleared to your bank, GET `/reports/statements` returns merchant statements, and GET `/reports/commissions` covers platform commissions for sub-merchant deployments. Match these against bank deposits during month-end close.

### What rate limits apply to the Worldline Payment API?

The OpenAPI spec does not declare specific rate limits. Worldline applies per-merchant throttles in production; build clients with exponential backoff on HTTP 429 and contact your Worldline account team before running large historical-report pulls or batch-billing campaigns.

### How do I refund a Worldline payment from an AI agent through Jentic?

Install the Jentic SDK with pip install jentic. Use SearchRequest with 'refund a Worldline payment' to surface POST `/payments/{transId}/returns`, LoadRequest for its schema, and ExecutionRequest to call it with the transaction ID. Get an agent API key through Jentic One, the self-hosted execution layer.

### Can I limit what my agent is allowed to do with the Worldline Payments API?

Yes. Because you run Jentic One yourself, your own rules decide which of the 23 Worldline operations the agent may call, so money-moving ones like POST `/payments/{transId}/returns` and POST `/payments/{transId}/void` are excluded unless you add them. Worldline also puts the transaction id in the URL path, such as `/payments/{transId}/void`, so a rule can pin the agent to a single payment. The Passcode and Sub-Merchant-Id credentials are held by your instance and injected at execution time, so the agent never sees them.
