PHP client for the KOMOJU Payments API — Full featured access to the KOMOJU payments system.
composer require komoju/komoju-sdk:^1.0.0-beta.1Requires PHP 7.4+ and the curl, json, and mbstring extensions.
<?php
require_once __DIR__ . '/vendor/autoload.php';
$config = Komoju\Configuration::getDefaultConfiguration()
->setApiKey('YOUR_SECRET_KEY');Get your API keys from the KOMOJU Merchant Settings.
Charge a customer directly with their payment details:
<?php
require_once __DIR__ . '/vendor/autoload.php';
$config = Komoju\Configuration::getDefaultConfiguration()
->setApiKey('YOUR_SECRET_KEY');
$paymentsApi = new Komoju\Api\PaymentsApi(new GuzzleHttp\Client(), $config);
try {
$payment = $paymentsApi->createPayment(
new Komoju\Model\CreatePaymentRequestWithPaymentDetails([
'amount' => 1000,
'currency' => 'JPY',
'payment_details' => new Komoju\Model\CreditCardPaymentDetails([
'type' => 'credit_card',
'number' => '4111111111111111',
'month' => 12,
'year' => 2025,
'verification_value' => '123',
]),
])
);
echo "Payment created: {$payment->getId()} ({$payment->getStatus()})\n";
// Capture an authorized payment
$captured = $paymentsApi->capturePayment(
$payment->getId(),
new Komoju\Model\CapturePaymentRequest()
);
echo "Captured at: {$captured->getCapturedAt()}\n";
} catch (Komoju\ApiException $e) {
echo "Error {$e->getCode()}: {$e->getMessage()}\n";
}Redirect customers to a KOMOJU-hosted checkout page:
<?php
require_once __DIR__ . '/vendor/autoload.php';
$config = Komoju\Configuration::getDefaultConfiguration()
->setApiKey('YOUR_SECRET_KEY');
$sessionsApi = new Komoju\Api\SessionsApi(new GuzzleHttp\Client(), $config);
try {
$session = $sessionsApi->createSession(
new Komoju\Model\CreateSessionRequestWithPaymentMode([
'mode' => 'payment',
'amount' => 5000,
'currency' => 'JPY',
'return_url' => 'https://example.com/thank-you',
'default_locale' => 'ja',
])
);
echo "Redirect customer to: {$session->getSessionUrl()}\n";
} catch (Komoju\ApiException $e) {
echo "Error {$e->getCode()}: {$e->getMessage()}\n";
}All API errors throw Komoju\ApiException:
try {
$payment = $paymentsApi->showPayment('pay_xxx');
} catch (Komoju\ApiException $e) {
echo $e->getCode(); // HTTP status code (e.g. 404, 422)
echo $e->getMessage(); // Human-readable description
print_r($e->getResponseBody()); // Full response body
}Full API reference is auto-generated in the docs/ directory.
All URIs are relative to https://komoju.com/api/v1
| Class | Method | HTTP request | Description |
|---|---|---|---|
| BarcodesApi | showBarcode | GET /barcodes/{payment_id} | Barcode: Show |
| DisbursementsApi | cancelDisbursement | POST /disbursements/{id}/cancel | Disbursement: Cancel |
| DisbursementsApi | createDisbursement | POST /disbursements | Disbursement: Create |
| DisbursementsApi | disbursementReport | GET /disbursements/report | Disbursement: Report |
| DisbursementsApi | listDisbursements | GET /disbursements | Disbursement: List |
| DisbursementsApi | showDisbursement | GET /disbursements/{id} | Disbursement: Show |
| EventsApi | listEvents | GET /events | Event: List |
| EventsApi | showEvent | GET /events/{id} | Event Show |
| OneClickApi | deleteExternalCustomer | DELETE /external_customers/{id} | External Customer: Destroy |
| PaymentsApi | cancelPayment | POST /payments/{id}/cancel | Payment: Cancel |
| PaymentsApi | capturePayment | POST /payments/{id}/capture | Payment: Capture |
| PaymentsApi | createPayment | POST /payments | Payment: Create |
| PaymentsApi | createRefundRequest | POST /payments/{id}/refund_request | Payment: Refund Request |
| PaymentsApi | finalizePayment | POST /payments/{id}/finalize | Payment: Finalize |
| PaymentsApi | listPaymentMethods | GET /payment_methods | Payment Method: List |
| PaymentsApi | listPayments | GET /payments | Payment: List |
| PaymentsApi | refundPayment | POST /payments/{id}/refund | Payment: Refund |
| PaymentsApi | showPayment | GET /payments/{id} | Payment: Show |
| PaymentsApi | updatePayment | PATCH /payments/{id} | Payment: Update |
| PlatformModelApi | balanceTransfer | POST /balances/{currency}/transfer | Balance: Transfer |
| PlatformModelApi | createFile | POST /merchants/{merchant_id}/files | File: Create |
| PlatformModelApi | createMerchant | POST /merchants | Merchant: Create |
| PlatformModelApi | createMerchantBalanceTransfer | POST /merchants/{merchant_id}/balances/{currency}/transfer | Balance: Transfer |
| PlatformModelApi | editMerchantBalanceSettings | PATCH /merchants/{merchant_id}/balances/{currency}/settings | Balances: Edit Settings |
| PlatformModelApi | listLiveApplicationPaymentMethods | GET /live_application/{merchant_id}/payment_methods | Live Application: Payment Methods |
| PlatformModelApi | listMerchants | GET /merchants | Merchant: List |
| PlatformModelApi | listSubmerchantPayments | GET /merchants/{merchant_id}/payments | Payment: List for Merchant |
| PlatformModelApi | listSubmerchantSettlements | GET /merchants/{merchant_id}/settlements | Settlement: List |
| PlatformModelApi | merchantBalanceTransactions | GET /merchants/{merchant_id}/balances/{currency}/transactions | Balance: Transactions |
| PlatformModelApi | showFile | GET /merchants/{merchant_id}/files/{id} | File: Show |
| PlatformModelApi | showLiveApplication | GET /live_application/{merchant_id} | Live Application: Show |
| PlatformModelApi | showLiveApplicationPaymentMethod | GET /live_application/{merchant_id}/payment_methods/{payment_method} | Live Application: Show Payment Method |
| PlatformModelApi | showMerchant | GET /merchants/{id} | Merchant: Show |
| PlatformModelApi | showMerchantBalance | GET /merchants/{merchant_id}/balances/{currency} | Balance: Show |
| PlatformModelApi | showMerchantBalanceSettings | GET /merchants/{merchant_id}/balances/{currency}/settings | Balance: Show Settings |
| PlatformModelApi | showMerchantBalanceTransaction | GET /merchants/{merchant_id}/balances/{currency}/transactions/{transaction_uuid} | Balance: Transaction |
| PlatformModelApi | showSubmerchantSettlement | GET /merchants/{merchant_id}/settlements/{id} | Settlement: Show |
| PlatformModelApi | simulateLiveApplicationPaymentMethodStatus | PATCH /live_application/{merchant_id}/payment_methods/{payment_method}/simulate_status | Live Application: Simulate Payment Method Status |
| PlatformModelApi | simulateLiveApplicationStatus | PATCH /live_application/{merchant_id}/simulate_status | Live Application: Simulate Status |
| PlatformModelApi | submerchantSettlementCSV | GET /merchants/{merchant_id}/settlements/{id}/csv | Settlement: CSV |
| PlatformModelApi | submerchantSettlementPDF | GET /merchants/{merchant_id}/settlements/{id}/pdf | Settlement: PDF |
| PlatformModelApi | submerchantSettlementXLS | GET /merchants/{merchant_id}/settlements/{id}/xls | Settlement: XLS |
| PlatformModelApi | updateLiveApplication | PATCH /live_application/{merchant_id} | Live Application: Update |
| PlatformModelApi | updateLiveApplicationPaymentMethod | PATCH /live_application/{merchant_id}/payment_methods/{payment_method} | Live Application: Update Payment Method |
| PlatformModelApi | updateMerchant | PATCH /merchants/{id} | Merchant: Update |
| SecureTokensApi | createSecureToken | POST /secure_tokens | SecureToken: Create |
| SecureTokensApi | showSecureToken | GET /secure_tokens/{id} | SecureToken: Show |
| SessionsApi | cancelSession | POST /sessions/{id}/cancel | Session: Cancel |
| SessionsApi | createSession | POST /sessions | Session: Create |
| SessionsApi | paySession | POST /sessions/{id}/pay | Session: Pay |
| SessionsApi | showSession | GET /sessions/{id} | Session: Show |
| SettlementsApi | listSettlements | GET /settlements | Settlement: Index |
| SettlementsApi | showSettlement | GET /settlements/{id} | Settlement: Show |
| SettlementsApi | showSettlementCSV | GET /settlements/{id}/csv | Settlement: CSV |
| SettlementsApi | showSettlementPDF | GET /settlements/{id}/pdf | Settlement: PDF |
| SettlementsApi | showSettlementXLS | GET /settlements/{id}/xls | Settlement: XLS |
| SettlementsApi | showTransaction | GET /balances/{currency}/transactions/{transaction_uuid} | Balance: Transaction |
| SubscriptionsApi | createCustomer | POST /customers | Customer: Create |
| SubscriptionsApi | createSubscription | POST /subscriptions | Subscription: Create |
| SubscriptionsApi | deleteCustomer | DELETE /customers/{id} | Customer: Destroy |
| SubscriptionsApi | deleteSubscription | DELETE /subscriptions/{id} | Subscription: Destroy |
| SubscriptionsApi | listCustomers | GET /customers | Customer: List |
| SubscriptionsApi | listSubscriptions | GET /subscriptions | Subscription: List |
| SubscriptionsApi | showCustomer | GET /customers/{id} | Customer: Show |
| SubscriptionsApi | showSubscription | GET /subscriptions/{id} | Subscription: Show |
| SubscriptionsApi | updateCustomer | PATCH /customers/{id} | Customer: Update |
| TokensApi | createToken | POST /tokens | Token: Create |
- APIError
- APIErrorBody
- Address
- Auto
- AvailablePaymentMethod
- Balance
- BalanceSettings
- BalanceShow
- BalanceTransactionList
- BalanceTransferRequest
- BalanceTransferServiceRecord
- BarcodePendingResponse
- BarcodeReadyResponse
- CancelDisbursementRequest
- CapturePaymentRequest
- CapturePaymentRequestTax
- CountryCode
- CreateCustomerRequest
- CreateDisbursementRequest
- CreateFileRequest
- CreateMerchantBalanceTransferRequest
- CreateMerchantRequest
- CreatePaymentRequest
- CreatePaymentRequestWithCustomer
- CreatePaymentRequestWithPaymentDetails
- CreatePaymentRequestWithPaymentDetailsTax
- CreateRefundRequestRequest
- CreateSecureTokenRequest
- CreateSecureTokenRequestWithCustomer
- CreateSecureTokenRequestWithPaymentDetails
- CreateSessionRequest
- CreateSessionRequestWithCustomerMode
- CreateSessionRequestWithCustomerPaymentMode
- CreateSessionRequestWithPaymentMode
- CreateSubscriptionRequest
- CreateTokenRequest
- Currency
- Customer
- CustomerList
- CustomerSource
- DeleteExternalCustomerResponse
- Disbursement
- DisbursementList
- DisbursementStatus
- EditMerchantBalanceSettingsRequest
- ErroredField
- Event
- EventList
- Field
- FieldFieldProperties
- FinalizePaymentRequest
- FraudDetails
- IndustryType
- Installments
- Intent
- LineItem
- LiveApplication
- LiveApplicationRequest
- LiveApplicationStatus
- LiveApplicationWithSubmittedFields
- Locale
- MerchantBalance
- MerchantData
- MerchantFile
- MerchantRole
- MerchantSubmissionStatus
- PaySessionRequest
- PaySessionResponse
- Payment
- PaymentData
- PaymentDataRequest
- PaymentDetailsAU
- PaymentDetailsAlipay
- PaymentDetailsAlipayHK
- PaymentDetailsAll
- PaymentDetailsAupay
- PaymentDetailsBancontact
- PaymentDetailsBankTransfer
- PaymentDetailsBitCash
- PaymentDetailsBlik
- PaymentDetailsCVS
- PaymentDetailsCreditCard
- PaymentDetailsCreditCardBrazil
- PaymentDetailsCreditCardKorea
- PaymentDetailsCreditCardKoreaSocialId
- PaymentDetailsCreditCardTerminal
- PaymentDetailsCultureVoucher
- PaymentDetailsDana
- PaymentDetailsDocomo
- PaymentDetailsDokuWallet
- PaymentDetailsDospara
- PaymentDetailsDragonpay
- PaymentDetailsEnets
- PaymentDetailsEpospay
- PaymentDetailsEps
- PaymentDetailsFpx
- PaymentDetailsGCash
- PaymentDetailsGiropay
- PaymentDetailsHappyMoney
- PaymentDetailsIdeal
- PaymentDetailsKakaopay
- PaymentDetailsKonbini
- PaymentDetailsMerpay
- PaymentDetailsMobile
- PaymentDetailsMobileJapan
- PaymentDetailsMultibanco
- PaymentDetailsMybank
- PaymentDetailsNarvesen
- PaymentDetailsNaverpay
- PaymentDetailsNetCash
- PaymentDetailsOnlyCreditCards
- PaymentDetailsOvo
- PaymentDetailsPaidy
- PaymentDetailsPayEasy
- PaymentDetailsPayPay
- PaymentDetailsPayco
- PaymentDetailsPaypost
- PaymentDetailsPaysafeCard
- PaymentDetailsPaysafeCash
- PaymentDetailsPaysera
- PaymentDetailsPayu
- PaymentDetailsPerlas
- PaymentDetailsPix
- PaymentDetailsPoli
- PaymentDetailsPrzelewy24
- PaymentDetailsRakutenpay
- PaymentDetailsSepaTransfer
- PaymentDetailsSofortbanking
- PaymentDetailsSoftbank
- PaymentDetailsTNG
- PaymentDetailsToss
- PaymentDetailsTruemoney
- PaymentDetailsUnionpay
- PaymentDetailsWebMoney
- PaymentDetailsWechatpay
- PaymentList
- PaymentMethod
- PaymentMethodBrands
- PaymentMethodInstallmentsInner
- PaymentMethodStatus
- PaymentMethodsList
- PaymentStatus
- PaymentType
- PlatformDetails
- PlatformMerchantPaymentList
- PlatformPayment
- PrepaidCards
- ProcessingMerchant
- Refund
- RefundPaymentRequest
- RefundRequest
- RefundRequestStatus
- ResponsePaymentDetailsAU
- ResponsePaymentDetailsAlipay
- ResponsePaymentDetailsAlipayHK
- ResponsePaymentDetailsAll
- ResponsePaymentDetailsAupay
- ResponsePaymentDetailsBancontact
- ResponsePaymentDetailsBankTransfer
- ResponsePaymentDetailsBitCash
- ResponsePaymentDetailsBlik
- ResponsePaymentDetailsCVS
- ResponsePaymentDetailsCreditCard
- ResponsePaymentDetailsCreditCardBrazil
- ResponsePaymentDetailsCreditCardKorea
- ResponsePaymentDetailsCreditCardTerminal
- ResponsePaymentDetailsCultureVoucher
- ResponsePaymentDetailsDana
- ResponsePaymentDetailsDocomo
- ResponsePaymentDetailsDokuWallet
- ResponsePaymentDetailsDospara
- ResponsePaymentDetailsDragonpay
- ResponsePaymentDetailsEnets
- ResponsePaymentDetailsEpospay
- ResponsePaymentDetailsEps
- ResponsePaymentDetailsFpx
- ResponsePaymentDetailsGCash
- ResponsePaymentDetailsGiropay
- ResponsePaymentDetailsHappyMoney
- ResponsePaymentDetailsIdeal
- ResponsePaymentDetailsKakaopay
- ResponsePaymentDetailsKonbini
- ResponsePaymentDetailsMerpay
- ResponsePaymentDetailsMobile
- ResponsePaymentDetailsMobileJapan
- ResponsePaymentDetailsMultibanco
- ResponsePaymentDetailsMybank
- ResponsePaymentDetailsNarvesen
- ResponsePaymentDetailsNaverpay
- ResponsePaymentDetailsNetCash
- ResponsePaymentDetailsOvo
- ResponsePaymentDetailsPaidy
- ResponsePaymentDetailsPayEasy
- ResponsePaymentDetailsPayPay
- ResponsePaymentDetailsPayco
- ResponsePaymentDetailsPaypost
- ResponsePaymentDetailsPaysafeCard
- ResponsePaymentDetailsPaysafeCash
- ResponsePaymentDetailsPaysera
- ResponsePaymentDetailsPayu
- ResponsePaymentDetailsPerlas
- ResponsePaymentDetailsPix
- ResponsePaymentDetailsPoli
- ResponsePaymentDetailsPrzelewy24
- ResponsePaymentDetailsRakutenpay
- ResponsePaymentDetailsSepaTransfer
- ResponsePaymentDetailsSofortbanking
- ResponsePaymentDetailsSoftbank
- ResponsePaymentDetailsTNG
- ResponsePaymentDetailsToss
- ResponsePaymentDetailsTruemoney
- ResponsePaymentDetailsUnionpay
- ResponsePaymentDetailsWebMoney
- ResponsePaymentDetailsWechatpay
- SecureToken
- SerializedSubmerchant
- SerializedSubmerchantActivePaymentMethodsInner
- SerializedSubmerchantExpirySettingsInner
- Session
- SessionMode
- SessionStatus
- Settlement
- SettlementDownload
- SettlementFrequency
- SettlementList
- SettlementShow
- SharedDetails
- SharedDetailsCorrections
- SharedDetailsDisbursements
- SharedDetailsMisc
- SharedDetailsPayments
- SharedDetailsPlatformModel
- SharedDetailsRefunds
- ShowBarcodeResponse
- SimulateLiveApplicationPaymentMethodStatusRequest
- StatementDescriptor
- Status
- Submerchant
- SubmerchantListItem
- SubmerchantsList
- SubmittedField
- SubmittedFieldAllOfValue
- Subscription
- SubscriptionCustomer
- SubscriptionList
- SubscriptionPaymentDetails
- SubscriptionPeriod
- TerminalError
- TerminalErrorBody
- ThreeDsAuthResult
- Token
- TokenPaymentDetails
- Transaction
- Transfer
- UpdateCustomerRequest
- UpdateMerchantRequest
- UpdateMerchantRequestExpirySettingsInner
- UpdatePaymentMethodRequest
- UpdatePaymentRequest
Authentication schemes defined for the API:
- Type: HTTP basic authentication (KOMOJU API key as username, blank password)
- Use
$config->setApiKey('YOUR_SECRET_KEY')for convenience
- KOMOJU Developer Documentation
- KOMOJU Merchant Dashboard
- For SDK issues, open an issue on GitHub