In short:
ak-payment-integrationhelps you take payments in your app with 9 providers: SePay and PayFS in Vietnam, plus Stripe, PayPal, Polar, Paddle, Creem, Dodo Payments and Lemon Squeezy internationally. Whichever provider you use, it keeps the same safety gates and tests in a sandbox. It does not treat a "Thank you" page as proof of payment, and it does not change the API version you use on its own.
Disclosure: I maintain AgentKit and have an affiliate relationship with it: the AgentKit link in this post is an affiliate link; buying through it gets you 30% off.
Summary
Use it when you need to add payments to an app, pick a provider, add recurring plans, fix a misbehaving webhook, or merge orders from several providers into one table. You do not need it for work that does not touch money, checkout or payment webhooks.
flowchart LR
A["Need to take payments in the app"] --> B["ak-payment-integration"]
B --> C["Pick or keep a provider"]
C --> D["Checkout + safe webhook"]
D --> E["Test in a sandbox"]
E --> F["Report the state changes checked"]It revolves around 4 concepts:
| Concept | Question | Example |
|---|---|---|
| Provider and task | Which provider, and which part of the work? | /ak-payment-integration sepay then "add a webhook that confirms bank transfers" |
| The server holds the truth | When is an order considered paid? | Only when a valid webhook arrives; the server decides amount, currency and state |
| Safe webhooks | What if an event arrives twice, out of order, or with a bad signature? | Check the signature on the raw body, store an idempotency key, skip duplicate events |
| Merchant of Record | Who is the seller of record and handles taxes across countries? | Polar, Creem, Dodo Payments, Lemon Squeezy and Paddle handle tax for you; PayPal does not |
Quick pick: selling in VND by bank transfer, look at SePay or PayFS. A SaaS selling globally that does not want to handle tax, look at the Merchants of Record. Need a marketplace or a deeply customized checkout, look at Stripe. Fees, limits and API versions change over time, so the skill checks the official docs again before pinning them in code.
Sample prompt for a VietQR bank transfer:
/ak-payment-integration sepay Add VietQR bank transfer payment to <shop name>.
Outcome: customers scan the QR, and the order moves to "paid" automatically when the money arrives.
Constraints: prices in VND, keep the existing orders table, the webhook uses HMAC.
Done when: tests for duplicate webhooks, bad signatures and underpaid transfers never deliver by mistake.This skill has no flags. After the command you write the provider name, then the task ([provider] [task]). If you have not picked a provider, leave the first part out and describe the market, currency and tax needs.
Below is the detailed version: the run flow, 5 situations with prompts, how to write the input, the change history by ak release, and common pitfalls. The detailed version and the interactive page are for subscribers. Your agent can also search them through the portal's MCP.
Opens when your account has subscriber access
This guide is for subscribers
Once your account has access, the full piece, the interactive visual and the agent call all open.
- Sign in or create a modernEngineer accountReading access belongs to your account email.
- Choose a plan on the pricing page1, 3 or 12 months, paid by VietQR bank transfer. Access opens about a minute after the money arrives.
- Or redeem a Facebook subscriber codePeople supporting the page on Facebook get an activation code by message each month.
Already a subscriber? Sign in to read.
Use this piece in your agent
Get an API keyCopy the text below and paste it into Claude Code, Codex or whichever agent you use. The agent reads the piece and checks it against the repo you have open.
Read "ak-payment-integration: add payments with safe webhooks" on modernEngineer and apply it to this repo.
1. Call the content_get tool of the modernengineer MCP server with locale "en", slug "ak-payment-integration". If the modernengineer MCP server is not connected, stop and walk me through connecting it from https://modernengineer.dev/en/mcp.
2. Summarize the main steps of the piece and point out which apply to this repo.
3. Propose concrete changes and ask me before editing any file.Connect MCP in Claude Code (once)
claude mcp add --transport http modernengineer \
https://api.modernengineer.dev/mcp \
--header "Authorization: Bearer <API key>"Reading the full piece over MCP needs an API key from a subscriber account or one that bought this guide. Without access, the agent only gets the opening.
- Version
- v1.0.0
- Updated
- 22/10/2026
- Licence
- All rights reserved
- Slug
- ak-payment-integration


