Key points
- A receipt is proof of payment, not a tax invoice. VAT invoices and other tax documents must be issued by you as the seller; the receipt page says so too.
- Pass receipt_email when creating the order and the receipt is emailed once after payment. locale (zh or en) sets the language of the checkout, the receipt page and the email.
- POST /v1/orders/{trade_no}/send_receipt sends or resends it. email is optional and is saved as the order's receipt_email. Unpaid orders return 409 conflict; each order allows 5 sends per hour, then 429 rate_limited.
- Paid orders carry receipt_url (signed and long-lived), receipt_number, receipt_email, receipt_sent_at and locale. Replies go to your onboarding contact address; sandbox receipts are marked [TEST].
Example
bash
curl -X POST "https://api.kukopay.com/v1/orders" \
-H "Content-Type: application/json" \
-H "X-Api-Key: $KUKOPAY_API_KEY" \
-d '{
"amount": 2990,
"currency": "USD",
"subject": "Premium plan",
"receipt_email": "[email protected]",
"locale": "en"
}'