Skip to content

feat(payments): payment orders and checkout - #102

Merged
Domantas merged 2 commits into
mainfrom
feat/payments-orders
Oct 19, 2026
Merged

Domantas merged 2 commits into
mainfrom
feat/payments-orders

Conversation

@Domantas

Copy link
Copy Markdown
Contributor

What

Payment orders and checkout (gateway campaign audit/payments-checkout, item sdk-all; same surface as @norbix.ai/ts v4.29.0).

  • Api client (source-generated): Payments.CreatePaymentOrderAsync, GetPaymentOrderAsync, GetPaymentOrdersAsync, StartPaymentCheckoutAsync.
  • Types regenerated from a private stack of the gateway branch (scripts/sync-types.py --api … --hub …): payment-order DTOs, PaymentOrderEventDto, Montonio (PaymentGatewayPlatform.Montonio, request + DTO), CodeFunctionDataDto.Order.
  • Code functions: CodeFunctionEvent.AsPaymentOrder() reads data.order (OrderEventId is the de-duplication key); AsPayment() unchanged.
  • README: Api payments row, Montonio, AsPaymentOrder(), a 'Payment orders and checkout' section.

Note: the regeneration also carries base gateway changes. UpdateAuthorizationSettings.AllowGuestUsers is now bool? (with AllowAnyoneToSignUp, AllowEmailRegistration, InviteOnly), and the field-kind typegen anchors moved from InternalsTypeGen to SharedTypeGen. Code that only sets those values still compiles. The major version is frozen, so this ships as a minor.

Checks

  • dotnet build -warnaserror clean · dotnet test: Coexistence 2 · Norbix.Sdk.Tests 100 · Norbix.Hub.Tests 258 — 0 failed (new: 4 Verify request tests, AsPaymentOrder + wrong-source, Montonio save body)
  • Live smoke on a private stack: create → same id again → get (Created, 630 cents EUR) → list contains it

🤖 Generated with Claude Code

Domantas and others added 2 commits October 19, 2026 14:28
…ckout a2d8be8d0

`python3 scripts/sync-types.py --api http://localhost:51949 --hub http://localhost:51948`
against a private gateway stack of the campaign branch. The build source-generates
the new methods. No type, property or route disappeared.

- Api: payment orders + checkout (CreatePaymentOrderAsync, GetPaymentOrderAsync,
  GetPaymentOrdersAsync, StartPaymentCheckoutAsync) with PaymentOrderDto,
  PaymentOrderLineDto, PaymentOrderCheckoutDto, PaymentOrderLineInput
- Hub: MontonioPaymentIntegrationRequest / Dto, PaymentOrderEventDto, PaymentEventDto,
  CodeFunctionDataDto.Order (the payments.order.* slot)
- other gateway changes on the same head: notification inbox, trigger definition,
  user import, AI context, more payment provider requests, unique indexes, warnings
- the Api host now exports the JsonSchemaFieldDto subclasses (gateway ticket C22),
  so the hand-kept block is gone
- UpdateAuthorizationSettings.AllowGuestUsers is now bool? (gateway change)
- coverage / endpoint snapshots updated to the new contract (additions, plus the
  driver's 8-property cap moving which fields are sampled)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tOrder for payments.order.* functions

- Api `Payments` module (source-generated from the regenerated DTOs):
  CreatePaymentOrderAsync (POST /payments/orders, same body + same
  idempotency key = same ord_ id), GetPaymentOrderAsync, GetPaymentOrdersAsync
  (buyerUserId / merchantReference / status filters), StartPaymentCheckoutAsync
  (POST /payments/orders/{Id}/checkout); one request test per method
- CodeFunctionEvent.AsPaymentOrder(): the data.order slot of a payments.order.*
  event (PaymentOrderEventDto, OrderEventId is the de-duplication key) with the
  same wrong-source error as the other views; AsPayment() keeps returning the callback
- Hub: a test that SavePaymentsIntegrationAsync sends the Montonio shape
- README: Api payments row, Montonio in the Hub payments row, AsPaymentOrder in
  the cloud function views, a "Payment orders and checkout" section

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

🚀 Release preview

Next version on merge to main: none

semantic-release dry-run output
[11:43:21 AM] [semantic-release] › ℹ  Running semantic-release version 25.0.9
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/github"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "analyzeCommits" from "@semantic-release/commit-analyzer"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "analyzeCommits" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "verifyRelease" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "generateNotes" from "@semantic-release/release-notes-generator"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "generateNotes" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "prepare" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/github"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "addChannel" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "addChannel" from "@semantic-release/github"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "success" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "success" from "@semantic-release/github"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "fail" from "@semantic-release/exec"
[11:43:21 AM] [semantic-release] › ✔  Loaded plugin "fail" from "@semantic-release/github"
[11:43:23 AM] [semantic-release] › ℹ  This test run was triggered on the branch refs/pull/102/merge, while semantic-release is configured to only publish from main, therefore a new version won’t be published.

If next_version is none, your commits don't trigger a release. Use feat: for minor (breaking changes too, until launch), fix: / perf: for patch.

@Domantas
Domantas merged commit aa89281 into main Oct 19, 2026
7 checks passed
@Domantas
Domantas deleted the feat/payments-orders branch October 19, 2026 11:46
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 3.25.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant