From 3f733df6226399e6a75ba597586f45e176c72a81 Mon Sep 17 00:00:00 2001 From: Damilola Odujoko Date: Fri, 8 Aug 2025 16:50:47 +0100 Subject: [PATCH 01/16] feat: begin the restructure of the repo for better dev exp --- package.json | 17 +- pnpm-lock.yaml | 1746 +- {base => src/assets/base}/paystack.yaml | 2 +- .../main}/examples/customer/create.yaml | 0 .../main}/examples/customer/validate.yaml | 0 .../dedicated-virtual-account/create.yaml | 0 .../assets/main}/examples/plan/create.yaml | 0 .../assets/main}/examples/refund/create.yaml | 0 .../assets/main}/examples/split/create.yaml | 0 .../main}/examples/subaccount/create.yaml | 0 .../main}/examples/subscription/create.yaml | 0 .../transaction/VerifyTransaction.yaml | 0 .../transaction/charge-authorization.yaml | 0 .../examples/transaction/initialize.yaml | 0 .../examples/transaction/partial-debit.yaml | 0 .../examples/transfer-recipient/create.yaml | 0 .../assets/main}/examples/transfer/bulk.yaml | 0 .../main}/examples/transfer/initiate.yaml | 0 .../assets/main}/examples/transfer/list.yaml | 0 .../examples/verification/resolve-bank.yaml | 0 {main => src/assets/main}/paystack.yaml | 0 .../assets/main}/resources/balance/fetch.yaml | 0 .../main}/resources/balance/ledger.yaml | 0 .../main}/resources/bulk-charge/charges.yaml | 0 .../main}/resources/bulk-charge/fetch.yaml | 0 .../main}/resources/bulk-charge/index.yaml | 0 .../main}/resources/bulk-charge/pause.yaml | 0 .../resources/bulk-charge/resume-charge.yaml | 0 .../assets/main}/resources/charge/create.yaml | 0 .../main}/resources/charge/reference.yaml | 0 .../resources/charge/submit-address.yaml | 0 .../resources/charge/submit-birthday.yaml | 0 .../main}/resources/charge/submit-otp.yaml | 0 .../main}/resources/charge/submit-phone.yaml | 0 .../main}/resources/charge/submit-pin.yaml | 0 .../resources/customer/authorization.yaml | 0 .../main}/resources/customer/create.yaml | 0 .../resources/customer/customer-code.yaml | 0 .../resources/customer/identification.yaml | 0 .../main}/resources/customer/index.yaml | 0 .../assets/main}/resources/customer/list.yaml | 0 .../main}/resources/customer/risk-action.yaml | 0 .../dedicated-virtual-account/account-id.yaml | 0 .../dedicated-virtual-account/add-split.yaml | 0 .../dedicated-virtual-account/create.yaml | 0 .../dedicated-virtual-account/index.yaml | 0 .../dedicated-virtual-account/list.yaml | 0 .../dedicated-virtual-account/providers.yaml | 0 .../main}/resources/dispute/dispute-id.yaml | 0 .../main}/resources/dispute/evidence.yaml | 0 .../main}/resources/dispute/export.yaml | 0 .../assets/main}/resources/dispute/list.yaml | 0 .../main}/resources/dispute/resolve.yaml | 0 .../main}/resources/dispute/transaction.yaml | 0 .../main}/resources/dispute/upload-url.yaml | 0 .../integration/payment-session.yaml | 0 .../assets/main}/resources/page/index.yaml | 0 .../assets/main}/resources/page/page-id.yaml | 0 .../assets/main}/resources/page/product.yaml | 0 .../resources/page/slug-availability.yaml | 0 .../resources/payment-request/archive.yaml | 0 .../resources/payment-request/finalize.yaml | 0 .../resources/payment-request/index.yaml | 0 .../resources/payment-request/notify.yaml | 0 .../payment-request/payment-request-id.yaml | 0 .../resources/payment-request/totals.yaml | 0 .../resources/payment-request/verify.yaml | 0 .../assets/main}/resources/plan/create.yaml | 0 .../assets/main}/resources/plan/index.yaml | 0 .../assets/main}/resources/plan/list.yaml | 0 .../main}/resources/plan/plan-code.yaml | 0 .../assets/main}/resources/product/index.yaml | 0 .../main}/resources/product/product-id.yaml | 0 .../assets/main}/resources/refund/create.yaml | 0 .../assets/main}/resources/refund/fetch.yaml | 0 .../assets/main}/resources/refund/index.yaml | 0 .../assets/main}/resources/refund/list.yaml | 0 .../main}/resources/settlement/fetch.yaml | 0 .../resources/settlement/transaction.yaml | 0 .../main}/resources/split/add-subaccount.yaml | 0 .../assets/main}/resources/split/create.yaml | 0 .../assets/main}/resources/split/index.yaml | 0 .../assets/main}/resources/split/list.yaml | 0 .../resources/split/remove-subaccount.yaml | 0 .../main}/resources/split/split-id.yaml | 0 .../main}/resources/subaccount/create.yaml | 0 .../main}/resources/subaccount/index.yaml | 0 .../main}/resources/subaccount/list.yaml | 0 .../resources/subaccount/subaccount-code.yaml | 0 .../main}/resources/subscription/create.yaml | 0 .../main}/resources/subscription/disable.yaml | 0 .../main}/resources/subscription/enable.yaml | 0 .../main}/resources/subscription/index.yaml | 0 .../main}/resources/subscription/list.yaml | 0 .../resources/subscription/manage-email.yaml | 0 .../resources/subscription/manage-link.yaml | 0 .../subscription/subscription-code.yaml | 0 .../transaction/charge-authorization.yaml | 0 .../transaction/check-authorization.yaml | 0 .../main}/resources/transaction/event.yaml | 0 .../main}/resources/transaction/export.yaml | 0 .../main}/resources/transaction/fetch.yaml | 0 .../resources/transaction/initialize.yaml | 0 .../main}/resources/transaction/list.yaml | 0 .../resources/transaction/partial-debit.yaml | 0 .../main}/resources/transaction/session.yaml | 0 .../main}/resources/transaction/timeline.yaml | 0 .../main}/resources/transaction/totals.yaml | 0 .../main}/resources/transaction/verify.yaml | 0 .../resources/transfer-recipient/bulk.yaml | 0 .../resources/transfer-recipient/create.yaml | 0 .../resources/transfer-recipient/index.yaml | 0 .../resources/transfer-recipient/list.yaml | 0 .../transfer-recipient-code.yaml | 0 .../assets/main}/resources/transfer/bulk.yaml | 0 .../transfer/disable-otp-finalize.yaml | 0 .../main}/resources/transfer/disable-otp.yaml | 0 .../main}/resources/transfer/enable-otp.yaml | 0 .../main}/resources/transfer/export.yaml | 0 .../main}/resources/transfer/finalize.yaml | 0 .../main}/resources/transfer/index.yaml | 0 .../main}/resources/transfer/initiate.yaml | 0 .../assets/main}/resources/transfer/list.yaml | 0 .../main}/resources/transfer/resend-otp.yaml | 0 .../resources/transfer/transfer-code.yaml | 0 .../main}/resources/transfer/verify.yaml | 0 .../main}/resources/verification/bank.yaml | 0 .../resources/verification/card-bin.yaml | 0 .../main}/resources/verification/country.yaml | 0 .../resources/verification/resolve-bank.yaml | 0 .../main}/resources/verification/state.yaml | 0 .../resources/verification/validate-bank.yaml | 0 .../assets/main}/responses/accepted.yaml | 0 .../assets/main}/responses/bulk-response.yaml | 0 .../assets/main}/responses/created.yaml | 0 .../main}/responses/customer/create.yaml | 0 .../main}/responses/customer/validate.yaml | 0 .../dedicated-virtual-account/create.yaml | 0 .../assets/main}/responses/error.yaml | 0 {main => src/assets/main}/responses/ok.yaml | 0 .../assets/main}/responses/plan/create.yaml | 0 .../assets/main}/responses/refund/create.yaml | 0 .../assets/main}/responses/response.yaml | 0 .../assets/main}/responses/split/create.yaml | 0 .../main}/responses/subaccount/create.yaml | 0 .../main}/responses/subscription/create.yaml | 0 .../transaction/charge-authorization.yaml | 0 .../responses/transaction/initialize.yaml | 0 .../responses/transaction/partial-debit.yaml | 0 .../responses/transfer-recipient/create.yaml | 0 .../assets/main}/responses/transfer/bulk.yaml | 0 .../assets/main}/responses/transfer/list.yaml | 0 .../main}/responses/transfer/transfer.yaml | 0 .../assets/main}/responses/unauthorized.yaml | 0 .../responses/verification/resolve-bank.yaml | 0 .../main}/schemas/bulk-charge/Initiate.yaml | 0 .../assets/main}/schemas/channel/Bank.yaml | 0 .../assets/main}/schemas/channel/EFT.yaml | 0 .../main}/schemas/channel/MobileMoney.yaml | 0 .../assets/main}/schemas/channel/USSD.yaml | 0 .../assets/main}/schemas/charge/Charge.yaml | 0 .../assets/main}/schemas/charge/Create.yaml | 0 .../main}/schemas/charge/SubmitAddress.yaml | 0 .../main}/schemas/charge/SubmitBirthday.yaml | 0 .../main}/schemas/charge/SubmitOTP.yaml | 0 .../main}/schemas/charge/SubmitPhone.yaml | 0 .../main}/schemas/charge/SubmitPin.yaml | 0 .../main}/schemas/customer/Customer.yaml | 0 .../customer/CustomerAuthorization.yaml | 0 .../main}/schemas/customer/CustomerBase.yaml | 0 .../customer/CustomerIdentification.yaml | 0 .../schemas/customer/CustomerRequired.yaml | 0 .../schemas/customer/CustomerRiskAction.yaml | 0 .../dedicated-virtual-account/Create.yaml | 0 .../dedicated-virtual-account/Split.yaml | 0 .../main}/schemas/dispute/Evidence.yaml | 0 .../assets/main}/schemas/dispute/Resolve.yaml | 0 .../assets/main}/schemas/dispute/Update.yaml | 0 .../schemas/integration/PaymentSession.yaml | 0 .../assets/main}/schemas/page/Create.yaml | 0 .../assets/main}/schemas/page/Product.yaml | 0 .../assets/main}/schemas/page/Update.yaml | 0 .../main}/schemas/payment-request/Create.yaml | 0 .../main}/schemas/payment-request/Update.yaml | 0 .../assets/main}/schemas/plan/Create.yaml | 0 .../assets/main}/schemas/plan/Update.yaml | 0 .../assets/main}/schemas/product/Create.yaml | 0 .../assets/main}/schemas/product/Update.yaml | 0 .../assets/main}/schemas/refund/Create.yaml | 0 .../assets/main}/schemas/split/Create.yaml | 0 .../main}/schemas/split/Subaccount.yaml | 0 .../assets/main}/schemas/split/Update.yaml | 0 .../main}/schemas/subaccount/Create.yaml | 0 .../main}/schemas/subaccount/Update.yaml | 0 .../main}/schemas/subscription/Create.yaml | 0 .../main}/schemas/subscription/Toggle.yaml | 0 .../transaction/ChargeAuthorization.yaml | 0 .../transaction/CheckAuthorization.yaml | 0 .../main}/schemas/transaction/Initialize.yaml | 0 .../schemas/transaction/PartialDebit.yaml | 0 .../schemas/transfer-recipient/Bulk.yaml | 0 .../schemas/transfer-recipient/Create.yaml | 0 .../schemas/transfer-recipient/Update.yaml | 0 .../assets/main}/schemas/transfer/Bulk.yaml | 0 .../main}/schemas/transfer/DisableOTP.yaml | 0 .../main}/schemas/transfer/Finalize.yaml | 0 .../main}/schemas/transfer/Initiate.yaml | 0 .../main}/schemas/transfer/ResendOTP.yaml | 0 .../schemas/verification/validate-bank.yaml | 0 .../responses/ApplePayOkResponse.yaml | 5 + .../responses/BalanceCheckSuccess.yaml | 5 + .../responses/BalanceFetchLedgerSuccess.yaml | 5 + ...ulkChargeFetchBulkBatchChargesSuccess.yaml | 5 + .../responses/BulkChargeFetchSuccess.yaml | 5 + .../responses/BulkChargeInitiateSuccess.yaml | 5 + .../responses/BulkChargeListSuccess.yaml | 5 + .../responses/BulkChargePauseSuccess.yaml | 5 + .../responses/BulkChargeResumeSuccess.yaml | 5 + .../responses/ChargeCheckPendingSuccess.yaml | 5 + .../responses/ChargeCreateSuccess.yaml | 5 + .../ChargeSubmitBirthdaySuccess.yaml | 5 + .../responses/ChargeSubmitOtpSuccess.yaml | 5 + .../responses/ChargeSubmitPhoneSuccess.yaml | 5 + .../responses/ChargeSubmitPinSuccess.yaml | 5 + ...ustomerAuthorizationInitializeSuccess.yaml | 5 + .../CustomerAuthorizationVerifySuccess.yaml | 5 + .../responses/CustomerCreateSuccess.yaml | 5 + ...ustomerDeactivateAuthorizationSuccess.yaml | 5 + ...merDirectDebitActivationChargeSuccess.yaml | 5 + ...omerFetchMandateAuthorizationsSuccess.yaml | 5 + .../responses/CustomerFetchSuccess.yaml | 5 + .../CustomerInitializeDirectDebitSuccess.yaml | 5 + .../responses/CustomerListSuccess.yaml | 5 + .../responses/CustomerUpdateSuccess.yaml | 5 + .../responses/CustomerValidateSuccess.yaml | 5 + .../CustomerWhitelistBlacklistSuccess.yaml | 5 + .../DedicatedNubanCreateSuccess.yaml | 5 + .../DedicatedNubanDeactivateSuccess.yaml | 5 + .../responses/DedicatedNubanFetchSuccess.yaml | 5 + .../DirectDebitActivationChargeSuccess.yaml | 5 + .../responses/DisputeAddEvidenceSuccess.yaml | 5 + .../responses/DisputeExportSuccess.yaml | 5 + .../responses/DisputeFetchSuccess.yaml | 5 + .../responses/DisputeListSuccess.yaml | 5 + .../DisputeListTransactionSuccess.yaml | 5 + .../responses/DisputeResolveSuccess.yaml | 5 + .../responses/DisputeUpdateSuccess.yaml | 5 + .../responses/DisputeUploadURLSuccess.yaml | 5 + .../MiscellaneousListBanksSuccess.yaml | 5 + .../MiscellaneousListCountriesSuccess.yaml | 5 + .../MiscellaneousListStatesSuccess.yaml | 5 + .../components/responses/NotFound.yaml | 8 + .../openapi/components/responses/Ok.yaml | 5 + .../responses/OrderCreateSuccess.yaml | 5 + .../responses/OrderFetchProductSuccess.yaml | 5 + .../responses/OrderFetchSuccess.yaml | 5 + .../responses/OrderListSuccess.yaml | 5 + .../responses/OrderValidateSuccess.yaml | 5 + .../responses/PageAddProductsSuccess.yaml | 5 + .../PageCheckSlugAvailabilitySuccess.yaml | 5 + .../responses/PageCreateSuccess.yaml | 5 + .../responses/PageFetchSuccess.yaml | 5 + .../components/responses/PageListSuccess.yaml | 5 + .../responses/PageUpdateSuccess.yaml | 5 + .../PaymentRequestArchiveSuccess.yaml | 5 + .../PaymentRequestCreateSuccess.yaml | 5 + .../PaymentRequestFinalizeSuccess.yaml | 5 + .../responses/PaymentRequestListSuccess.yaml | 5 + ...PaymentRequestSendNotificationSuccess.yaml | 5 + .../responses/PaymentRequestTotalSuccess.yaml | 5 + .../PaymentRequestUpdateSuccess.yaml | 5 + .../PaymentRequestVerifySuccess.yaml | 5 + .../responses/PlanCreateSuccess.yaml | 5 + .../responses/PlanFetchSuccess.yaml | 5 + .../components/responses/PlanListSuccess.yaml | 5 + .../responses/PlanUpdateSuccess.yaml | 5 + .../responses/ProductCreateSuccess.yaml | 5 + .../responses/ProductDeleteSuccess.yaml | 5 + .../responses/ProductFetchSuccess.yaml | 5 + .../responses/ProductListsSuccess.yaml | 5 + .../responses/ProductUpdateSuccess.yaml | 5 + .../responses/RefundCreateSuccess.yaml | 5 + .../responses/RefundFetchSuccess.yaml | 5 + .../responses/RefundListSuccess.yaml | 5 + .../SplitAddUpdateSubaccountSuccess.yaml | 5 + .../responses/SplitCreateSuccess.yaml | 5 + .../responses/SplitFetchSuccess.yaml | 5 + .../responses/SplitListSuccess.yaml | 5 + .../SplitRemoveSubaccountSuccess.yaml | 5 + .../responses/SplitUpdateSuccess.yaml | 5 + .../responses/StorefrontCreateSuccess.yaml | 5 + .../responses/StorefrontDeleteSuccess.yaml | 5 + .../responses/StorefrontFetchSuccess.yaml | 5 + .../responses/StorefrontListSuccess.yaml | 5 + .../responses/StorefrontUpdateSuccess.yaml | 5 + .../responses/SubaccountCreateSuccess.yaml | 5 + .../responses/SubaccountFetchSuccess.yaml | 5 + .../responses/SubaccountListSuccess.yaml | 5 + .../responses/SubaccountUpdateSuccess.yaml | 5 + .../responses/SubscriptionCreateSuccess.yaml | 5 + .../responses/SubscriptionDisableSuccess.yaml | 5 + .../responses/SubscriptionFetchSuccess.yaml | 5 + .../responses/SubscriptionListSuccess.yaml | 5 + .../TerminalCommissionDeviceSuccess.yaml | 5 + .../TerminalDecommissionDeviceSuccess.yaml | 5 + .../responses/TerminalGetStatusSuccess.yaml | 5 + .../responses/TerminalGetSuccess.yaml | 5 + .../responses/TerminalListsSuccess.yaml | 5 + .../responses/TerminalUpdateSuccess.yaml | 5 + .../responses/TransactionChargeSuccess.yaml | 5 + .../responses/TransactionExportSuccess.yaml | 5 + .../responses/TransactionFetchSuccess.yaml | 5 + ...ansactionInitializeBadRequestResponse.yaml | 5 + .../TransactionInitializeSuccess.yaml | 5 + .../responses/TransactionListSuccess.yaml | 5 + .../TransactionPartialDebitSuccess.yaml | 5 + .../responses/TransactionTimelineSuccess.yaml | 5 + .../responses/TransactionTotalsSuccess.yaml | 5 + .../responses/TransactionVerifySuccess.yaml | 5 + .../responses/TransferBulkSuccess.yaml | 5 + .../responses/TransferCreateSuccess.yaml | 5 + .../responses/TransferDisablesOtpSuccess.yaml | 5 + .../responses/TransferEnablesOtpSuccess.yaml | 5 + .../responses/TransferFetchSuccess.yaml | 5 + .../TransferFinalizeDisablesOtpSuccess.yaml | 5 + .../responses/TransferListSuccess.yaml | 5 + .../TransferRecipientBulkCreateSuccess.yaml | 5 + .../TransferRecipientCreateSuccess.yaml | 5 + .../TransferRecipientDeleteSuccess.yaml | 5 + .../TransferRecipientFetchSuccess.yaml | 5 + .../TransferRecipientListSuccess.yaml | 5 + .../TransferRecipientUpdateSuccess.yaml | 5 + .../responses/TransferResendsOtpSuccess.yaml | 5 + .../responses/TransferVerifySuccess.yaml | 5 + .../components/responses/Unauthorized.yaml | 8 + ...rificationResolveAccountNumberSuccess.yaml | 5 + .../VerificationResolveCardBINSuccess.yaml | 5 + .../VerificationValidateAccountSuccess.yaml | 5 + .../schemas/ApplePayCreateOkModel.yaml | 11 + .../components/schemas/ApplePayParam.yaml | 9 + .../schemas/BalanceCheckResponse.yaml | 14 + .../schemas/BalanceCheckResponseArray.yaml | 9 + .../schemas/BalanceFetchLedgerResponse.yaml | 35 + .../BalanceFetchLedgerResponseArray.yaml | 36 + .../openapi/components/schemas/Bank.yaml | 8 + .../schemas/BankValidateRequest.yaml | 39 + ...lkChargeFetchBulkBatchChargesResponse.yaml | 35 + ...rgeFetchBulkBatchChargesResponseArray.yaml | 131 + .../schemas/BulkChargeFetchResponse.yaml | 44 + .../schemas/BulkChargeInitiate.yaml | 11 + .../schemas/BulkChargeInitiateResponse.yaml | 44 + .../schemas/BulkChargeListResponse.yaml | 37 + .../schemas/BulkChargeListResponseArray.yaml | 30 + .../schemas/BulkChargePauseResponse.yaml | 9 + .../schemas/BulkChargeResumeResponse.yaml | 9 + .../ChannelOptionMobileMoneyArray.yaml | 18 + .../schemas/ChargeAuthorizationResponse.yaml | 187 + .../schemas/ChargeCheckPendingResponse.yaml | 202 + .../components/schemas/ChargeCreate.yaml | 38 + .../schemas/ChargeCreateResponse.yaml | 194 + .../schemas/ChargeMobileMoneyResponse.yaml | 40 + .../components/schemas/ChargeResponse.yaml | 131 + .../schemas/ChargeSubmitAddress.yaml | 23 + .../schemas/ChargeSubmitBirthday.yaml | 11 + .../schemas/ChargeSubmitBirthdayResponse.yaml | 20 + .../components/schemas/ChargeSubmitOTP.yaml | 11 + .../schemas/ChargeSubmitOtpResponse.yaml | 193 + .../components/schemas/ChargeSubmitPhone.yaml | 11 + .../schemas/ChargeSubmitPhoneResponse.yaml | 23 + .../components/schemas/ChargeSubmitPin.yaml | 11 + .../schemas/ChargeSubmitPinResponse.yaml | 193 + ...nelFetchPaymentSessionTimeoutResponse.yaml | 17 + ...elUpdatePaymentSessionTimeoutResponse.yaml | 17 + .../openapi/components/schemas/Currency.yaml | 9 + ...ustomerAuthorizationInitializeAccount.yaml | 13 + ...ustomerAuthorizationInitializeAddress.yaml | 18 + ...ustomerAuthorizationInitializeRequest.yaml | 25 + ...stomerAuthorizationInitializeResponse.yaml | 14 + ...erAuthorizationInitializeResponseData.yaml | 15 + .../CustomerAuthorizationVerifyResponse.yaml | 14 + ...erAuthorizationVerifyResponseCustomer.yaml | 11 + ...stomerAuthorizationVerifyResponseData.yaml | 22 + .../components/schemas/CustomerCreate.yaml | 19 + .../schemas/CustomerCreateResponse.yaml | 71 + .../CustomerDeactivateAuthorization.yaml | 7 + ...stomerDeactivateAuthorizationResponse.yaml | 9 + ...merDirectDebitActivationChargeRequest.yaml | 8 + ...erDirectDebitActivationChargeResponse.yaml | 11 + ...merFetchMandateAuthorizationsResponse.yaml | 19 + ...etchMandateAuthorizationsResponseData.yaml | 62 + ...etchMandateAuthorizationsResponseMeta.yaml | 18 + .../schemas/CustomerFetchResponse.yaml | 92 + .../CustomerInitializeDirectDebitAccount.yaml | 13 + .../CustomerInitializeDirectDebitAddress.yaml | 18 + .../CustomerInitializeDirectDebitRequest.yaml | 9 + ...CustomerInitializeDirectDebitResponse.yaml | 14 + ...omerInitializeDirectDebitResponseData.yaml | 15 + .../schemas/CustomerListResponse.yaml | 37 + .../schemas/CustomerListResponseArray.yaml | 43 + .../schemas/CustomerRiskAction.yaml | 14 + .../schemas/CustomerRiskActionResponse.yaml | 68 + .../components/schemas/CustomerUpdate.yaml | 14 + .../schemas/CustomerUpdateResponse.yaml | 56 + .../components/schemas/CustomerValidate.yaml | 39 + .../schemas/CustomerValidateResponse.yaml | 9 + .../CustomerWhitelistBlacklistResponse.yaml | 68 + .../schemas/DedicatedNubanCreateResponse.yaml | 114 + .../DedicatedNubanDeactivateResponse.yaml | 75 + .../schemas/DedicatedNubanFetchResponse.yaml | 88 + .../schemas/DedicatedNubanListResponse.yaml | 35 + .../DedicatedNubanListResponseArray.yaml | 71 + .../DedicatedVirtualAccountAssign.yaml | 48 + .../DedicatedVirtualAccountCreate.yaml | 20 + .../schemas/DedicatedVirtualAccountSplit.yaml | 15 + .../DirectDebitActivationChargeRequest.yaml | 12 + .../DirectDebitActivationChargeResponse.yaml | 11 + ...rectDebitMandateAuthorizationCustomer.yaml | 23 + .../DirectDebitMandateAuthorizationData.yaml | 47 + ...DebitMandateAuthorizationListResponse.yaml | 19 + .../DirectDebitMandateAuthorizationMeta.yaml | 18 + .../schemas/DisputeAddEvidenceResponse.yaml | 44 + .../components/schemas/DisputeEvidence.yaml | 26 + .../schemas/DisputeExportResponse.yaml | 20 + .../schemas/DisputeFetchResponse.yaml | 222 + .../schemas/DisputeHistoryArray.yaml | 12 + .../schemas/DisputeListResponse.yaml | 35 + .../schemas/DisputeListResponseArray.yaml | 193 + .../DisputeListTransactionResponse.yaml | 200 + .../schemas/DisputeMessagesArray.yaml | 12 + .../components/schemas/DisputeResolve.yaml | 24 + .../schemas/DisputeResolveResponse.yaml | 100 + .../components/schemas/DisputeUpdate.yaml | 12 + .../schemas/DisputeUpdateResponse.yaml | 222 + .../schemas/DisputeUploadURLResponse.yaml | 20 + .../openapi/components/schemas/EFT.yaml | 5 + .../EftDebitOrderCreateMandateResponse.yaml | 80 + .../EftDebitOrderFetchMandateResponse.yaml | 80 + .../EftDebitOrderListMandateResponse.yaml | 41 + ...EftDebitOrderListMandateResponseArray.yaml | 63 + .../EftDebitOrderLogMandateResponse.yaml | 41 + .../EftDebitOrderLogMandateResponseArray.yaml | 95 + .../EftDebitOrderUpdateMandateResponse.yaml | 80 + .../openapi/components/schemas/Error.yaml | 23 + .../openapi/components/schemas/ErrorMeta.yaml | 6 + .../components/schemas/ErrorRecordsArray.yaml | 24 + .../schemas/FormulaSubaccountsArray.yaml | 24 + .../InitializeAuthorizationCardResponse.yaml | 23 + ...alizeAuthorizationDirectdebitResponse.yaml | 23 + .../schemas/MetadataCustomFieldsArray.yaml | 12 + .../MiscellaneousListBanksResponse.yaml | 14 + .../MiscellaneousListBanksResponseArray.yaml | 50 + .../MiscellaneousListCountriesResponse.yaml | 14 + ...scellaneousListCountriesResponseArray.yaml | 187 + .../MiscellaneousListProvidersResponse.yaml | 14 + ...scellaneousListProvidersResponseArray.yaml | 51 + .../MiscellaneousListStatesResponse.yaml | 14 + .../MiscellaneousListStatesResponseArray.yaml | 12 + .../components/schemas/MobileMoney.yaml | 10 + .../schemas/OrderCancelResponse.yaml | 9 + .../components/schemas/OrderCreate.yaml | 39 + .../schemas/OrderCreateResponse.yaml | 143 + .../schemas/OrderDeliverResponse.yaml | 9 + .../schemas/OrderFetchProductResponse.yaml | 38 + .../OrderFetchProductResponseArray.yaml | 102 + .../schemas/OrderFetchResponse.yaml | 165 + .../components/schemas/OrderItems.yaml | 20 + .../components/schemas/OrderItemsArray.yaml | 66 + .../components/schemas/OrderListResponse.yaml | 38 + .../schemas/OrderListResponseArray.yaml | 83 + .../schemas/OrderRefundResponse.yaml | 9 + .../components/schemas/OrderShipping.yaml | 27 + .../schemas/OrderValidateResponse.yaml | 130 + .../schemas/PageAddProductsResponse.yaml | 85 + .../PageCheckSlugAvailabilityResponse.yaml | 9 + .../components/schemas/PageCreate.yaml | 79 + .../schemas/PageCreateResponse.yaml | 53 + .../components/schemas/PageFetchResponse.yaml | 78 + .../components/schemas/PageListResponse.yaml | 35 + .../schemas/PageListResponseArray.yaml | 76 + .../components/schemas/PageProduct.yaml | 9 + .../components/schemas/PageProductsArray.yaml | 48 + .../components/schemas/PageUpdate.yaml | 16 + .../schemas/PageUpdateResponse.yaml | 80 + ...aymentChannelCreateBankChargeResponse.yaml | 23 + ...hannelCreateDirectDebitChargeResponse.yaml | 241 + ...PaymentChannelCreateEFTChargeResponse.yaml | 23 + ...hannelCreateMobileMoneyChargeResponse.yaml | 239 + ...elCreatePayWithTransferChargeResponse.yaml | 46 + .../PaymentChannelCreateQRChargeResponse.yaml | 26 + ...aymentChannelCreateUSSDChargeResponse.yaml | 26 + .../PaymentRequestArchiveResponse.yaml | 9 + .../schemas/PaymentRequestCreate.yaml | 70 + .../schemas/PaymentRequestCreateResponse.yaml | 81 + .../PaymentRequestFinalizeResponse.yaml | 135 + .../schemas/PaymentRequestLineItemsArray.yaml | 12 + .../schemas/PaymentRequestListResponse.yaml | 37 + .../PaymentRequestListResponseArray.yaml | 111 + .../PaymentRequestNotificationsArray.yaml | 9 + .../schemas/PaymentRequestPendingArray.yaml | 9 + ...aymentRequestSendNotificationResponse.yaml | 9 + .../PaymentRequestSuccessfulArray.yaml | 9 + .../schemas/PaymentRequestTaxArray.yaml | 9 + .../schemas/PaymentRequestTotalArray.yaml | 9 + .../schemas/PaymentRequestTotalResponse.yaml | 29 + .../schemas/PaymentRequestUpdate.yaml | 68 + .../schemas/PaymentRequestUpdateResponse.yaml | 122 + .../schemas/PaymentRequestVerifyResponse.yaml | 141 + .../schemas/PaymentRequestViewResponse.yaml | 168 + .../components/schemas/PaymentSession.yaml | 8 + .../components/schemas/PlanCreate.yaml | 36 + .../schemas/PlanCreateResponse.yaml | 62 + .../components/schemas/PlanFetchResponse.yaml | 102 + .../components/schemas/PlanListResponse.yaml | 35 + .../schemas/PlanListResponseArray.yaml | 80 + .../components/schemas/PlanUpdate.yaml | 32 + .../schemas/PlanUpdateResponse.yaml | 9 + .../PreAuthorizationCaptureResponse.yaml | 219 + .../PreAuthorizationInitializeResponse.yaml | 23 + .../schemas/PreAuthorizationListResponse.yaml | 35 + .../PreAuthorizationListResponseArray.yaml | 70 + .../PreAuthorizationReleaseResponse.yaml | 20 + ...horizationReserveWithAuthCodeResponse.yaml | 151 + ...zationReserveWithSelfCheckoutResponse.yaml | 23 + .../PreAuthorizationVerifyResponse.yaml | 37 + .../schemas/PreAuthorizationViewResponse.yaml | 110 + .../components/schemas/ProductCreate.yaml | 36 + .../schemas/ProductCreateResponse.yaml | 119 + .../schemas/ProductDeleteResponse.yaml | 9 + .../schemas/ProductFetchResponse.yaml | 132 + .../schemas/ProductListsResponse.yaml | 35 + .../schemas/ProductListsResponseArray.yaml | 113 + .../components/schemas/ProductUpdate.yaml | 31 + .../schemas/ProductUpdateResponse.yaml | 128 + .../components/schemas/RefundCreate.yaml | 23 + .../schemas/RefundCreateResponse.yaml | 137 + .../schemas/RefundFetchResponse.yaml | 121 + .../schemas/RefundListResponse.yaml | 38 + .../schemas/RefundListResponseArray.yaml | 111 + .../openapi/components/schemas/Response.yaml | 8 + .../schemas/ShareSubaccountsArray.yaml | 21 + .../SplitAddUpdateSubaccountResponse.yaml | 61 + .../components/schemas/SplitCreate.yaml | 44 + .../schemas/SplitCreateResponse.yaml | 61 + .../schemas/SplitFetchResponse.yaml | 61 + .../components/schemas/SplitListResponse.yaml | 35 + .../schemas/SplitListResponseArray.yaml | 50 + .../SplitRemoveSubaccountResponse.yaml | 9 + .../components/schemas/SplitSubaccounts.yaml | 8 + .../schemas/SplitSubaccountsArray.yaml | 44 + .../components/schemas/SplitUpdate.yaml | 21 + .../schemas/SplitUpdateResponse.yaml | 61 + .../schemas/StorefrontAddProducts.yaml | 9 + .../schemas/StorefrontContactsArray.yaml | 15 + .../components/schemas/StorefrontCreate.yaml | 24 + .../schemas/StorefrontCreateResponse.yaml | 85 + .../schemas/StorefrontDeleteResponse.yaml | 9 + .../schemas/StorefrontDuplicateResponse.yaml | 85 + .../schemas/StorefrontFetchResponse.yaml | 109 + .../schemas/StorefrontListResponse.yaml | 35 + .../schemas/StorefrontListResponseArray.yaml | 40 + .../schemas/StorefrontProductResponse.yaml | 104 + .../schemas/StorefrontShippingResponse.yaml | 38 + .../components/schemas/StorefrontUpdate.yaml | 15 + .../schemas/StorefrontUpdateResponse.yaml | 9 + .../components/schemas/SubaccountCreate.yaml | 37 + .../schemas/SubaccountCreateResponse.yaml | 86 + .../schemas/SubaccountFetchResponse.yaml | 86 + .../schemas/SubaccountListResponse.yaml | 35 + .../schemas/SubaccountListResponseArray.yaml | 45 + .../components/schemas/SubaccountUpdate.yaml | 35 + .../schemas/SubaccountUpdateResponse.yaml | 86 + .../schemas/SubscriptionCreate.yaml | 25 + .../schemas/SubscriptionCreateResponse.yaml | 71 + .../schemas/SubscriptionDisableResponse.yaml | 9 + .../schemas/SubscriptionFetchResponse.yaml | 178 + .../schemas/SubscriptionListResponse.yaml | 35 + .../SubscriptionListResponseArray.yaml | 180 + .../schemas/SubscriptionToggle.yaml | 11 + .../schemas/TerminalActivationToggle.yaml | 10 + .../TerminalCommissionDeviceResponse.yaml | 9 + .../schemas/TerminalCountsResponse.yaml | 20 + .../TerminalDecommissionDeviceResponse.yaml | 9 + .../schemas/TerminalGetResponse.yaml | 48 + .../schemas/TerminalGetStatusResponse.yaml | 20 + .../schemas/TerminalListsResponse.yaml | 33 + .../schemas/TerminalListsResponseArray.yaml | 34 + .../components/schemas/TerminalSendEvent.yaml | 21 + .../schemas/TerminalSendEventData.yaml | 13 + .../components/schemas/TerminalUpate.yaml | 12 + .../schemas/TerminalUpdateResponse.yaml | 9 + .../TransactionChargeAuthorization.yaml | 52 + .../schemas/TransactionChargeResponse.yaml | 131 + ...TransactionCheckAuthorizationResponse.yaml | 20 + .../schemas/TransactionExportResponse.yaml | 20 + .../schemas/TransactionFetchResponse.yaml | 201 + .../schemas/TransactionInitialize.yaml | 81 + .../TransactionInitializeBadRequestModel.yaml | 34 + .../TransactionInitializeResponse.yaml | 23 + .../schemas/TransactionListResponse.yaml | 40 + .../schemas/TransactionListResponseArray.yaml | 179 + .../schemas/TransactionPartialDebit.yaml | 32 + .../TransactionPartialDebitResponse.yaml | 143 + ...actionPendingTransfersByCurrencyArray.yaml | 9 + .../schemas/TransactionTimelineResponse.yaml | 12 + ...TransactionTotalVolumeByCurrencyArray.yaml | 9 + .../schemas/TransactionTotalsResponse.yaml | 33 + .../schemas/TransactionVerifyResponse.yaml | 181 + .../TransferApprovalGetSettingsResponse.yaml | 41 + ...ransferApprovalUpdateSettingsResponse.yaml | 41 + .../components/schemas/TransferBase.yaml | 24 + .../components/schemas/TransferBulk.yaml | 15 + .../schemas/TransferBulkResponse.yaml | 14 + .../schemas/TransferBulkResponseArray.yaml | 21 + .../schemas/TransferCreateResponse.yaml | 72 + .../schemas/TransferDisablesOtpResponse.yaml | 9 + .../schemas/TransferEnablesOtpResponse.yaml | 9 + .../schemas/TransferFeesBreakdownArray.yaml | 12 + .../schemas/TransferFetchResponse.yaml | 160 + .../schemas/TransferFetchZAResponse.yaml | 180 + .../components/schemas/TransferFinalize.yaml | 11 + .../schemas/TransferFinalizeDisableOTP.yaml | 7 + .../TransferFinalizeDisablesOtpResponse.yaml | 9 + .../components/schemas/TransferInitiate.yaml | 30 + .../schemas/TransferListResponse.yaml | 35 + .../schemas/TransferListResponseArray.yaml | 135 + .../schemas/TransferRecipientBulk.yaml | 13 + .../TransferRecipientBulkCreateResponse.yaml | 23 + .../schemas/TransferRecipientCreate.yaml | 33 + .../TransferRecipientCreateResponse.yaml | 80 + .../TransferRecipientDeleteResponse.yaml | 9 + .../schemas/TransferRecipientErrorsArray.yaml | 11 + .../TransferRecipientFetchResponse.yaml | 79 + .../TransferRecipientListResponse.yaml | 35 + .../TransferRecipientListResponseArray.yaml | 70 + .../schemas/TransferRecipientUpdate.yaml | 8 + .../TransferRecipientUpdateResponse.yaml | 9 + .../components/schemas/TransferResendOTP.yaml | 11 + .../schemas/TransferResendsOtpResponse.yaml | 9 + .../schemas/TransferVerifyResponse.yaml | 144 + .../openapi/components/schemas/USSD.yaml | 10 + ...ificationResolveAccountNumberResponse.yaml | 23 + .../VerificationResolveCardBINResponse.yaml | 41 + .../VerificationValidateAccountResponse.yaml | 20 + .../schemas/VerifyAccessCodeGHResponse.yaml | 221 + .../schemas/VerifyAccessCodeKEResponse.yaml | 218 + .../schemas/VerifyAccessCodeNGResponse.yaml | 237 + .../VerifyAccessCodeSupportedBanksArray.yaml | 18 + .../schemas/VerifyAccessCodeZAResponse.yaml | 223 + .../VerifyAuthorizationCardResponse.yaml | 30 + ...erifyAuthorizationDirectdebitResponse.yaml | 87 + .../schemas/VerifyCodeGHResponse.yaml | 221 + .../schemas/VerifyCodeKEResponse.yaml | 243 + .../schemas/VerifyCodeNGResponse.yaml | 241 + .../VerifyCodeSupportedBanksArray.yaml | 18 + .../schemas/VerifyCodeZAResponse.yaml | 223 + .../schemas/VerifyMultiSplitResponse.yaml | 285 + .../components/schemas/VerifyResponse.yaml | 261 + .../schemas/VerifySingleSplitResponse.yaml | 293 + src/assets/openapi/openapi.yaml | 363 + .../paths/address_verification_states.yaml | 27 + .../openapi/paths/apple-pay_domain.yaml | 74 + src/assets/openapi/paths/balance.yaml | 19 + src/assets/openapi/paths/balance_ledger.yaml | 41 + src/assets/openapi/paths/bank.yaml | 43 + src/assets/openapi/paths/bank_resolve.yaml | 25 + src/assets/openapi/paths/bank_validate.yaml | 20 + src/assets/openapi/paths/bulkcharge.yaml | 70 + .../paths/bulkcharge_pause_{code}.yaml | 25 + .../paths/bulkcharge_resume_{code}.yaml | 25 + .../openapi/paths/bulkcharge_{code}.yaml | 25 + .../paths/bulkcharge_{code}_charges.yaml | 46 + src/assets/openapi/paths/charge.yaml | 58 + .../openapi/paths/charge_submit_address.yaml | 20 + .../openapi/paths/charge_submit_birthday.yaml | 24 + .../openapi/paths/charge_submit_otp.yaml | 24 + .../openapi/paths/charge_submit_phone.yaml | 24 + .../openapi/paths/charge_submit_pin.yaml | 24 + .../openapi/paths/charge_{reference}.yaml | 24 + src/assets/openapi/paths/country.yaml | 14 + src/assets/openapi/paths/customer.yaml | 85 + .../customer_authorization_initialize.yaml | 24 + ...omer_authorization_verify_{reference}.yaml | 22 + .../customer_deactivate_authorization.yaml | 25 + .../paths/customer_set_risk_action.yaml | 25 + src/assets/openapi/paths/customer_{code}.yaml | 50 + .../paths/customer_{code}_identification.yaml | 31 + ...er_{id}_directdebit-activation-charge.yaml | 32 + ...d}_directdebit-mandate-authorizations.yaml | 20 + ...customer_{id}_initialize-direct-debit.yaml | 30 + .../openapi/paths/decision_bin_{bin}.yaml | 20 + .../openapi/paths/dedicated_account.yaml | 75 + .../paths/dedicated_account_assign.yaml | 20 + ...dedicated_account_available_providers.yaml | 14 + .../paths/dedicated_account_requery.yaml | 30 + .../paths/dedicated_account_split.yaml | 42 + .../paths/dedicated_account_{account_id}.yaml | 42 + .../paths/directdebit_activation-charge.yaml | 19 + .../directdebit_mandate-authorizations.yaml | 35 + src/assets/openapi/paths/dispute.yaml | 49 + src/assets/openapi/paths/dispute_export.yaml | 41 + .../paths/dispute_transaction_{id}.yaml | 21 + src/assets/openapi/paths/dispute_{id}.yaml | 43 + .../openapi/paths/dispute_{id}_evidence.yaml | 27 + .../openapi/paths/dispute_{id}_resolve.yaml | 29 + .../paths/dispute_{id}_upload_url.yaml | 21 + .../integration_payment_session_timeout.yaml | 43 + src/assets/openapi/paths/order.yaml | 57 + .../openapi/paths/order_product_{id}.yaml | 20 + .../openapi/paths/order_{code}_validate.yaml | 20 + src/assets/openapi/paths/order_{id}.yaml | 20 + src/assets/openapi/paths/page.yaml | 57 + .../page_check_slug_availability_{slug}.yaml | 20 + src/assets/openapi/paths/page_{id}.yaml | 42 + .../openapi/paths/page_{id}_product.yaml | 26 + src/assets/openapi/paths/paymentrequest.yaml | 74 + .../paths/paymentrequest_archive_{id}.yaml | 18 + .../paths/paymentrequest_finalize_{id}.yaml | 18 + .../paths/paymentrequest_notify_{id}.yaml | 18 + .../openapi/paths/paymentrequest_totals.yaml | 14 + .../paths/paymentrequest_verify_{id}.yaml | 20 + .../openapi/paths/paymentrequest_{id}.yaml | 42 + src/assets/openapi/paths/plan.yaml | 67 + src/assets/openapi/paths/plan_{code}.yaml | 42 + src/assets/openapi/paths/product.yaml | 59 + src/assets/openapi/paths/product_{id}.yaml | 56 + src/assets/openapi/paths/refund.yaml | 57 + src/assets/openapi/paths/refund_{id}.yaml | 20 + src/assets/openapi/paths/settlement.yaml | 25 + .../paths/settlement_{id}_transaction.yaml | 20 + src/assets/openapi/paths/split.yaml | 81 + src/assets/openapi/paths/split_{id}.yaml | 56 + .../paths/split_{id}_subaccount_add.yaml | 31 + .../paths/split_{id}_subaccount_remove.yaml | 30 + src/assets/openapi/paths/storefront.yaml | 50 + .../paths/storefront_verify_{slug}.yaml | 20 + src/assets/openapi/paths/storefront_{id}.yaml | 56 + .../paths/storefront_{id}_duplicate.yaml | 20 + .../openapi/paths/storefront_{id}_order.yaml | 20 + .../paths/storefront_{id}_product.yaml | 42 + .../paths/storefront_{id}_publish.yaml | 20 + src/assets/openapi/paths/subaccount.yaml | 58 + .../openapi/paths/subaccount_{code}.yaml | 50 + src/assets/openapi/paths/subscription.yaml | 67 + .../openapi/paths/subscription_disable.yaml | 20 + .../openapi/paths/subscription_enable.yaml | 20 + .../openapi/paths/subscription_{code}.yaml | 20 + .../subscription_{code}_manage_email.yaml | 18 + .../subscription_{code}_manage_link.yaml | 18 + src/assets/openapi/paths/terminal.yaml | 28 + .../paths/terminal_commission_device.yaml | 21 + .../paths/terminal_decommission_device.yaml | 21 + .../openapi/paths/terminal_{id}_event.yaml | 28 + .../openapi/paths/terminal_{terminal_id}.yaml | 43 + ...rminal_{terminal_id}_event_{event_id}.yaml | 28 + .../terminal_{terminal_id}_presence.yaml | 22 + src/assets/openapi/paths/transaction.yaml | 130 + .../transaction_charge_authorization.yaml | 24 + .../openapi/paths/transaction_export.yaml | 65 + .../openapi/paths/transaction_initialize.yaml | 27 + .../paths/transaction_partial_debit.yaml | 24 + .../paths/transaction_timeline_{id}.yaml | 29 + .../openapi/paths/transaction_totals.yaml | 34 + .../paths/transaction_verify_{reference}.yaml | 26 + .../openapi/paths/transaction_{id}.yaml | 26 + .../openapi/paths/transaction_{id}_event.yaml | 22 + .../paths/transaction_{id}_session.yaml | 22 + src/assets/openapi/paths/transfer.yaml | 105 + src/assets/openapi/paths/transfer_bulk.yaml | 24 + .../openapi/paths/transfer_disable_otp.yaml | 16 + .../paths/transfer_disable_otp_finalize.yaml | 24 + .../openapi/paths/transfer_enable_otp.yaml | 16 + src/assets/openapi/paths/transfer_export.yaml | 48 + .../paths/transfer_finalize_transfer.yaml | 20 + .../openapi/paths/transfer_resend_otp.yaml | 24 + .../paths/transfer_verify_{reference}.yaml | 24 + src/assets/openapi/paths/transfer_{code}.yaml | 25 + .../openapi/paths/transferrecipient.yaml | 72 + .../openapi/paths/transferrecipient_bulk.yaml | 24 + .../paths/transferrecipient_{code}.yaml | 69 + {sdk => src/assets/sdk}/paystack.yaml | 0 .../assets/use_cases}/betting.yaml | 0 .../assets/use_cases}/lending.yaml | 0 .../assets/use_cases}/marketplace.yaml | 0 .../assets/use_cases}/membership.yaml | 0 .../assets/use_cases}/savings.yaml | 0 .../assets/use_cases}/wallet.yaml | 0 src/index.js | 27 + src/views/index.html | 30 + temp/paystack.yaml | 16789 ++++++++++++++++ 789 files changed, 41763 insertions(+), 380 deletions(-) rename {base => src/assets/base}/paystack.yaml (99%) rename {main => src/assets/main}/examples/customer/create.yaml (100%) rename {main => src/assets/main}/examples/customer/validate.yaml (100%) rename {main => src/assets/main}/examples/dedicated-virtual-account/create.yaml (100%) rename {main => src/assets/main}/examples/plan/create.yaml (100%) rename {main => src/assets/main}/examples/refund/create.yaml (100%) rename {main => src/assets/main}/examples/split/create.yaml (100%) rename {main => src/assets/main}/examples/subaccount/create.yaml (100%) rename {main => src/assets/main}/examples/subscription/create.yaml (100%) rename {main => src/assets/main}/examples/transaction/VerifyTransaction.yaml (100%) rename {main => src/assets/main}/examples/transaction/charge-authorization.yaml (100%) rename {main => src/assets/main}/examples/transaction/initialize.yaml (100%) rename {main => src/assets/main}/examples/transaction/partial-debit.yaml (100%) rename {main => src/assets/main}/examples/transfer-recipient/create.yaml (100%) rename {main => src/assets/main}/examples/transfer/bulk.yaml (100%) rename {main => src/assets/main}/examples/transfer/initiate.yaml (100%) rename {main => src/assets/main}/examples/transfer/list.yaml (100%) rename {main => src/assets/main}/examples/verification/resolve-bank.yaml (100%) rename {main => src/assets/main}/paystack.yaml (100%) rename {main => src/assets/main}/resources/balance/fetch.yaml (100%) rename {main => src/assets/main}/resources/balance/ledger.yaml (100%) rename {main => src/assets/main}/resources/bulk-charge/charges.yaml (100%) rename {main => src/assets/main}/resources/bulk-charge/fetch.yaml (100%) rename {main => src/assets/main}/resources/bulk-charge/index.yaml (100%) rename {main => src/assets/main}/resources/bulk-charge/pause.yaml (100%) rename {main => src/assets/main}/resources/bulk-charge/resume-charge.yaml (100%) rename {main => src/assets/main}/resources/charge/create.yaml (100%) rename {main => src/assets/main}/resources/charge/reference.yaml (100%) rename {main => src/assets/main}/resources/charge/submit-address.yaml (100%) rename {main => src/assets/main}/resources/charge/submit-birthday.yaml (100%) rename {main => src/assets/main}/resources/charge/submit-otp.yaml (100%) rename {main => src/assets/main}/resources/charge/submit-phone.yaml (100%) rename {main => src/assets/main}/resources/charge/submit-pin.yaml (100%) rename {main => src/assets/main}/resources/customer/authorization.yaml (100%) rename {main => src/assets/main}/resources/customer/create.yaml (100%) rename {main => src/assets/main}/resources/customer/customer-code.yaml (100%) rename {main => src/assets/main}/resources/customer/identification.yaml (100%) rename {main => src/assets/main}/resources/customer/index.yaml (100%) rename {main => src/assets/main}/resources/customer/list.yaml (100%) rename {main => src/assets/main}/resources/customer/risk-action.yaml (100%) rename {main => src/assets/main}/resources/dedicated-virtual-account/account-id.yaml (100%) rename {main => src/assets/main}/resources/dedicated-virtual-account/add-split.yaml (100%) rename {main => src/assets/main}/resources/dedicated-virtual-account/create.yaml (100%) rename {main => src/assets/main}/resources/dedicated-virtual-account/index.yaml (100%) rename {main => src/assets/main}/resources/dedicated-virtual-account/list.yaml (100%) rename {main => src/assets/main}/resources/dedicated-virtual-account/providers.yaml (100%) rename {main => src/assets/main}/resources/dispute/dispute-id.yaml (100%) rename {main => src/assets/main}/resources/dispute/evidence.yaml (100%) rename {main => src/assets/main}/resources/dispute/export.yaml (100%) rename {main => src/assets/main}/resources/dispute/list.yaml (100%) rename {main => src/assets/main}/resources/dispute/resolve.yaml (100%) rename {main => src/assets/main}/resources/dispute/transaction.yaml (100%) rename {main => src/assets/main}/resources/dispute/upload-url.yaml (100%) rename {main => src/assets/main}/resources/integration/payment-session.yaml (100%) rename {main => src/assets/main}/resources/page/index.yaml (100%) rename {main => src/assets/main}/resources/page/page-id.yaml (100%) rename {main => src/assets/main}/resources/page/product.yaml (100%) rename {main => src/assets/main}/resources/page/slug-availability.yaml (100%) rename {main => src/assets/main}/resources/payment-request/archive.yaml (100%) rename {main => src/assets/main}/resources/payment-request/finalize.yaml (100%) rename {main => src/assets/main}/resources/payment-request/index.yaml (100%) rename {main => src/assets/main}/resources/payment-request/notify.yaml (100%) rename {main => src/assets/main}/resources/payment-request/payment-request-id.yaml (100%) rename {main => src/assets/main}/resources/payment-request/totals.yaml (100%) rename {main => src/assets/main}/resources/payment-request/verify.yaml (100%) rename {main => src/assets/main}/resources/plan/create.yaml (100%) rename {main => src/assets/main}/resources/plan/index.yaml (100%) rename {main => src/assets/main}/resources/plan/list.yaml (100%) rename {main => src/assets/main}/resources/plan/plan-code.yaml (100%) rename {main => src/assets/main}/resources/product/index.yaml (100%) rename {main => src/assets/main}/resources/product/product-id.yaml (100%) rename {main => src/assets/main}/resources/refund/create.yaml (100%) rename {main => src/assets/main}/resources/refund/fetch.yaml (100%) rename {main => src/assets/main}/resources/refund/index.yaml (100%) rename {main => src/assets/main}/resources/refund/list.yaml (100%) rename {main => src/assets/main}/resources/settlement/fetch.yaml (100%) rename {main => src/assets/main}/resources/settlement/transaction.yaml (100%) rename {main => src/assets/main}/resources/split/add-subaccount.yaml (100%) rename {main => src/assets/main}/resources/split/create.yaml (100%) rename {main => src/assets/main}/resources/split/index.yaml (100%) rename {main => src/assets/main}/resources/split/list.yaml (100%) rename {main => src/assets/main}/resources/split/remove-subaccount.yaml (100%) rename {main => src/assets/main}/resources/split/split-id.yaml (100%) rename {main => src/assets/main}/resources/subaccount/create.yaml (100%) rename {main => src/assets/main}/resources/subaccount/index.yaml (100%) rename {main => src/assets/main}/resources/subaccount/list.yaml (100%) rename {main => src/assets/main}/resources/subaccount/subaccount-code.yaml (100%) rename {main => src/assets/main}/resources/subscription/create.yaml (100%) rename {main => src/assets/main}/resources/subscription/disable.yaml (100%) rename {main => src/assets/main}/resources/subscription/enable.yaml (100%) rename {main => src/assets/main}/resources/subscription/index.yaml (100%) rename {main => src/assets/main}/resources/subscription/list.yaml (100%) rename {main => src/assets/main}/resources/subscription/manage-email.yaml (100%) rename {main => src/assets/main}/resources/subscription/manage-link.yaml (100%) rename {main => src/assets/main}/resources/subscription/subscription-code.yaml (100%) rename {main => src/assets/main}/resources/transaction/charge-authorization.yaml (100%) rename {main => src/assets/main}/resources/transaction/check-authorization.yaml (100%) rename {main => src/assets/main}/resources/transaction/event.yaml (100%) rename {main => src/assets/main}/resources/transaction/export.yaml (100%) rename {main => src/assets/main}/resources/transaction/fetch.yaml (100%) rename {main => src/assets/main}/resources/transaction/initialize.yaml (100%) rename {main => src/assets/main}/resources/transaction/list.yaml (100%) rename {main => src/assets/main}/resources/transaction/partial-debit.yaml (100%) rename {main => src/assets/main}/resources/transaction/session.yaml (100%) rename {main => src/assets/main}/resources/transaction/timeline.yaml (100%) rename {main => src/assets/main}/resources/transaction/totals.yaml (100%) rename {main => src/assets/main}/resources/transaction/verify.yaml (100%) rename {main => src/assets/main}/resources/transfer-recipient/bulk.yaml (100%) rename {main => src/assets/main}/resources/transfer-recipient/create.yaml (100%) rename {main => src/assets/main}/resources/transfer-recipient/index.yaml (100%) rename {main => src/assets/main}/resources/transfer-recipient/list.yaml (100%) rename {main => src/assets/main}/resources/transfer-recipient/transfer-recipient-code.yaml (100%) rename {main => src/assets/main}/resources/transfer/bulk.yaml (100%) rename {main => src/assets/main}/resources/transfer/disable-otp-finalize.yaml (100%) rename {main => src/assets/main}/resources/transfer/disable-otp.yaml (100%) rename {main => src/assets/main}/resources/transfer/enable-otp.yaml (100%) rename {main => src/assets/main}/resources/transfer/export.yaml (100%) rename {main => src/assets/main}/resources/transfer/finalize.yaml (100%) rename {main => src/assets/main}/resources/transfer/index.yaml (100%) rename {main => src/assets/main}/resources/transfer/initiate.yaml (100%) rename {main => src/assets/main}/resources/transfer/list.yaml (100%) rename {main => src/assets/main}/resources/transfer/resend-otp.yaml (100%) rename {main => src/assets/main}/resources/transfer/transfer-code.yaml (100%) rename {main => src/assets/main}/resources/transfer/verify.yaml (100%) rename {main => src/assets/main}/resources/verification/bank.yaml (100%) rename {main => src/assets/main}/resources/verification/card-bin.yaml (100%) rename {main => src/assets/main}/resources/verification/country.yaml (100%) rename {main => src/assets/main}/resources/verification/resolve-bank.yaml (100%) rename {main => src/assets/main}/resources/verification/state.yaml (100%) rename {main => src/assets/main}/resources/verification/validate-bank.yaml (100%) rename {main => src/assets/main}/responses/accepted.yaml (100%) rename {main => src/assets/main}/responses/bulk-response.yaml (100%) rename {main => src/assets/main}/responses/created.yaml (100%) rename {main => src/assets/main}/responses/customer/create.yaml (100%) rename {main => src/assets/main}/responses/customer/validate.yaml (100%) rename {main => src/assets/main}/responses/dedicated-virtual-account/create.yaml (100%) rename {main => src/assets/main}/responses/error.yaml (100%) rename {main => src/assets/main}/responses/ok.yaml (100%) rename {main => src/assets/main}/responses/plan/create.yaml (100%) rename {main => src/assets/main}/responses/refund/create.yaml (100%) rename {main => src/assets/main}/responses/response.yaml (100%) rename {main => src/assets/main}/responses/split/create.yaml (100%) rename {main => src/assets/main}/responses/subaccount/create.yaml (100%) rename {main => src/assets/main}/responses/subscription/create.yaml (100%) rename {main => src/assets/main}/responses/transaction/charge-authorization.yaml (100%) rename {main => src/assets/main}/responses/transaction/initialize.yaml (100%) rename {main => src/assets/main}/responses/transaction/partial-debit.yaml (100%) rename {main => src/assets/main}/responses/transfer-recipient/create.yaml (100%) rename {main => src/assets/main}/responses/transfer/bulk.yaml (100%) rename {main => src/assets/main}/responses/transfer/list.yaml (100%) rename {main => src/assets/main}/responses/transfer/transfer.yaml (100%) rename {main => src/assets/main}/responses/unauthorized.yaml (100%) rename {main => src/assets/main}/responses/verification/resolve-bank.yaml (100%) rename {main => src/assets/main}/schemas/bulk-charge/Initiate.yaml (100%) rename {main => src/assets/main}/schemas/channel/Bank.yaml (100%) rename {main => src/assets/main}/schemas/channel/EFT.yaml (100%) rename {main => src/assets/main}/schemas/channel/MobileMoney.yaml (100%) rename {main => src/assets/main}/schemas/channel/USSD.yaml (100%) rename {main => src/assets/main}/schemas/charge/Charge.yaml (100%) rename {main => src/assets/main}/schemas/charge/Create.yaml (100%) rename {main => src/assets/main}/schemas/charge/SubmitAddress.yaml (100%) rename {main => src/assets/main}/schemas/charge/SubmitBirthday.yaml (100%) rename {main => src/assets/main}/schemas/charge/SubmitOTP.yaml (100%) rename {main => src/assets/main}/schemas/charge/SubmitPhone.yaml (100%) rename {main => src/assets/main}/schemas/charge/SubmitPin.yaml (100%) rename {main => src/assets/main}/schemas/customer/Customer.yaml (100%) rename {main => src/assets/main}/schemas/customer/CustomerAuthorization.yaml (100%) rename {main => src/assets/main}/schemas/customer/CustomerBase.yaml (100%) rename {main => src/assets/main}/schemas/customer/CustomerIdentification.yaml (100%) rename {main => src/assets/main}/schemas/customer/CustomerRequired.yaml (100%) rename {main => src/assets/main}/schemas/customer/CustomerRiskAction.yaml (100%) rename {main => src/assets/main}/schemas/dedicated-virtual-account/Create.yaml (100%) rename {main => src/assets/main}/schemas/dedicated-virtual-account/Split.yaml (100%) rename {main => src/assets/main}/schemas/dispute/Evidence.yaml (100%) rename {main => src/assets/main}/schemas/dispute/Resolve.yaml (100%) rename {main => src/assets/main}/schemas/dispute/Update.yaml (100%) rename {main => src/assets/main}/schemas/integration/PaymentSession.yaml (100%) rename {main => src/assets/main}/schemas/page/Create.yaml (100%) rename {main => src/assets/main}/schemas/page/Product.yaml (100%) rename {main => src/assets/main}/schemas/page/Update.yaml (100%) rename {main => src/assets/main}/schemas/payment-request/Create.yaml (100%) rename {main => src/assets/main}/schemas/payment-request/Update.yaml (100%) rename {main => src/assets/main}/schemas/plan/Create.yaml (100%) rename {main => src/assets/main}/schemas/plan/Update.yaml (100%) rename {main => src/assets/main}/schemas/product/Create.yaml (100%) rename {main => src/assets/main}/schemas/product/Update.yaml (100%) rename {main => src/assets/main}/schemas/refund/Create.yaml (100%) rename {main => src/assets/main}/schemas/split/Create.yaml (100%) rename {main => src/assets/main}/schemas/split/Subaccount.yaml (100%) rename {main => src/assets/main}/schemas/split/Update.yaml (100%) rename {main => src/assets/main}/schemas/subaccount/Create.yaml (100%) rename {main => src/assets/main}/schemas/subaccount/Update.yaml (100%) rename {main => src/assets/main}/schemas/subscription/Create.yaml (100%) rename {main => src/assets/main}/schemas/subscription/Toggle.yaml (100%) rename {main => src/assets/main}/schemas/transaction/ChargeAuthorization.yaml (100%) rename {main => src/assets/main}/schemas/transaction/CheckAuthorization.yaml (100%) rename {main => src/assets/main}/schemas/transaction/Initialize.yaml (100%) rename {main => src/assets/main}/schemas/transaction/PartialDebit.yaml (100%) rename {main => src/assets/main}/schemas/transfer-recipient/Bulk.yaml (100%) rename {main => src/assets/main}/schemas/transfer-recipient/Create.yaml (100%) rename {main => src/assets/main}/schemas/transfer-recipient/Update.yaml (100%) rename {main => src/assets/main}/schemas/transfer/Bulk.yaml (100%) rename {main => src/assets/main}/schemas/transfer/DisableOTP.yaml (100%) rename {main => src/assets/main}/schemas/transfer/Finalize.yaml (100%) rename {main => src/assets/main}/schemas/transfer/Initiate.yaml (100%) rename {main => src/assets/main}/schemas/transfer/ResendOTP.yaml (100%) rename {main => src/assets/main}/schemas/verification/validate-bank.yaml (100%) create mode 100644 src/assets/openapi/components/responses/ApplePayOkResponse.yaml create mode 100644 src/assets/openapi/components/responses/BalanceCheckSuccess.yaml create mode 100644 src/assets/openapi/components/responses/BalanceFetchLedgerSuccess.yaml create mode 100644 src/assets/openapi/components/responses/BulkChargeFetchBulkBatchChargesSuccess.yaml create mode 100644 src/assets/openapi/components/responses/BulkChargeFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/BulkChargeInitiateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/BulkChargeListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/BulkChargePauseSuccess.yaml create mode 100644 src/assets/openapi/components/responses/BulkChargeResumeSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ChargeCheckPendingSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ChargeCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ChargeSubmitBirthdaySuccess.yaml create mode 100644 src/assets/openapi/components/responses/ChargeSubmitOtpSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ChargeSubmitPhoneSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ChargeSubmitPinSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerAuthorizationInitializeSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerAuthorizationVerifySuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerDeactivateAuthorizationSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerDirectDebitActivationChargeSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerFetchMandateAuthorizationsSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerInitializeDirectDebitSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerValidateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DedicatedNubanCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DedicatedNubanDeactivateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DedicatedNubanFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DirectDebitActivationChargeSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeAddEvidenceSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeExportSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeListTransactionSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeResolveSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/DisputeUploadURLSuccess.yaml create mode 100644 src/assets/openapi/components/responses/MiscellaneousListBanksSuccess.yaml create mode 100644 src/assets/openapi/components/responses/MiscellaneousListCountriesSuccess.yaml create mode 100644 src/assets/openapi/components/responses/MiscellaneousListStatesSuccess.yaml create mode 100644 src/assets/openapi/components/responses/NotFound.yaml create mode 100644 src/assets/openapi/components/responses/Ok.yaml create mode 100644 src/assets/openapi/components/responses/OrderCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/OrderFetchProductSuccess.yaml create mode 100644 src/assets/openapi/components/responses/OrderFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/OrderListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/OrderValidateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PageAddProductsSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PageCheckSlugAvailabilitySuccess.yaml create mode 100644 src/assets/openapi/components/responses/PageCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PageFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PageListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PageUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestArchiveSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestFinalizeSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestSendNotificationSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestTotalSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PaymentRequestVerifySuccess.yaml create mode 100644 src/assets/openapi/components/responses/PlanCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PlanFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PlanListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/PlanUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ProductCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ProductDeleteSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ProductFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ProductListsSuccess.yaml create mode 100644 src/assets/openapi/components/responses/ProductUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/RefundCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/RefundFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/RefundListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SplitAddUpdateSubaccountSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SplitCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SplitFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SplitListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SplitRemoveSubaccountSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SplitUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/StorefrontCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/StorefrontDeleteSuccess.yaml create mode 100644 src/assets/openapi/components/responses/StorefrontFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/StorefrontListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/StorefrontUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubaccountCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubaccountFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubaccountListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubaccountUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubscriptionCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubscriptionDisableSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubscriptionFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/SubscriptionListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TerminalCommissionDeviceSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TerminalDecommissionDeviceSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TerminalGetStatusSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TerminalGetSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TerminalListsSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TerminalUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionChargeSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionExportSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionInitializeBadRequestResponse.yaml create mode 100644 src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransactionVerifySuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferBulkSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferDisablesOtpSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferEnablesOtpSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferFinalizeDisablesOtpSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferRecipientBulkCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferRecipientCreateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferRecipientDeleteSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferRecipientFetchSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferRecipientListSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferRecipientUpdateSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferResendsOtpSuccess.yaml create mode 100644 src/assets/openapi/components/responses/TransferVerifySuccess.yaml create mode 100644 src/assets/openapi/components/responses/Unauthorized.yaml create mode 100644 src/assets/openapi/components/responses/VerificationResolveAccountNumberSuccess.yaml create mode 100644 src/assets/openapi/components/responses/VerificationResolveCardBINSuccess.yaml create mode 100644 src/assets/openapi/components/responses/VerificationValidateAccountSuccess.yaml create mode 100644 src/assets/openapi/components/schemas/ApplePayCreateOkModel.yaml create mode 100644 src/assets/openapi/components/schemas/ApplePayParam.yaml create mode 100644 src/assets/openapi/components/schemas/BalanceCheckResponse.yaml create mode 100644 src/assets/openapi/components/schemas/BalanceCheckResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/BalanceFetchLedgerResponse.yaml create mode 100644 src/assets/openapi/components/schemas/BalanceFetchLedgerResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/Bank.yaml create mode 100644 src/assets/openapi/components/schemas/BankValidateRequest.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponse.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeInitiate.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeInitiateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargePauseResponse.yaml create mode 100644 src/assets/openapi/components/schemas/BulkChargeResumeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChannelOptionMobileMoneyArray.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeAuthorizationResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeCreate.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeMobileMoneyResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitBirthday.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitBirthdayResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitPhone.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitPin.yaml create mode 100644 src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ControlPanelFetchPaymentSessionTimeoutResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ControlPanelUpdatePaymentSessionTimeoutResponse.yaml create mode 100644 src/assets/openapi/components/schemas/Currency.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAccount.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAddress.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponseData.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseCustomer.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseData.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerCreate.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerDeactivateAuthorization.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerDeactivateAuthorizationResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeRequest.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseData.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseMeta.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAccount.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAddress.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerInitializeDirectDebitRequest.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponseData.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerRiskAction.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerRiskActionResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerValidate.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerValidateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/CustomerWhitelistBlacklistResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedNubanCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedNubanDeactivateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedNubanFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedNubanListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedNubanListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedVirtualAccountAssign.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedVirtualAccountCreate.yaml create mode 100644 src/assets/openapi/components/schemas/DedicatedVirtualAccountSplit.yaml create mode 100644 src/assets/openapi/components/schemas/DirectDebitActivationChargeRequest.yaml create mode 100644 src/assets/openapi/components/schemas/DirectDebitActivationChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationCustomer.yaml create mode 100644 src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationData.yaml create mode 100644 src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationMeta.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeAddEvidenceResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeEvidence.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeExportResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeHistoryArray.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeMessagesArray.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeResolve.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeResolveResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/DisputeUploadURLResponse.yaml create mode 100644 src/assets/openapi/components/schemas/EFT.yaml create mode 100644 src/assets/openapi/components/schemas/EftDebitOrderCreateMandateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/EftDebitOrderFetchMandateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/EftDebitOrderListMandateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/EftDebitOrderListMandateResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/EftDebitOrderUpdateMandateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/Error.yaml create mode 100644 src/assets/openapi/components/schemas/ErrorMeta.yaml create mode 100644 src/assets/openapi/components/schemas/ErrorRecordsArray.yaml create mode 100644 src/assets/openapi/components/schemas/FormulaSubaccountsArray.yaml create mode 100644 src/assets/openapi/components/schemas/InitializeAuthorizationCardResponse.yaml create mode 100644 src/assets/openapi/components/schemas/InitializeAuthorizationDirectdebitResponse.yaml create mode 100644 src/assets/openapi/components/schemas/MetadataCustomFieldsArray.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListBanksResponse.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListCountriesResponse.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListCountriesResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListProvidersResponse.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListProvidersResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListStatesResponse.yaml create mode 100644 src/assets/openapi/components/schemas/MiscellaneousListStatesResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/MobileMoney.yaml create mode 100644 src/assets/openapi/components/schemas/OrderCancelResponse.yaml create mode 100644 src/assets/openapi/components/schemas/OrderCreate.yaml create mode 100644 src/assets/openapi/components/schemas/OrderCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/OrderDeliverResponse.yaml create mode 100644 src/assets/openapi/components/schemas/OrderFetchProductResponse.yaml create mode 100644 src/assets/openapi/components/schemas/OrderFetchProductResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/OrderFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/OrderItems.yaml create mode 100644 src/assets/openapi/components/schemas/OrderItemsArray.yaml create mode 100644 src/assets/openapi/components/schemas/OrderListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/OrderListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/OrderRefundResponse.yaml create mode 100644 src/assets/openapi/components/schemas/OrderShipping.yaml create mode 100644 src/assets/openapi/components/schemas/OrderValidateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PageAddProductsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PageCheckSlugAvailabilityResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PageCreate.yaml create mode 100644 src/assets/openapi/components/schemas/PageCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PageFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PageListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PageListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/PageProduct.yaml create mode 100644 src/assets/openapi/components/schemas/PageProductsArray.yaml create mode 100644 src/assets/openapi/components/schemas/PageUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/PageUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentChannelCreateBankChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentChannelCreateDirectDebitChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentChannelCreateEFTChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentChannelCreateMobileMoneyChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentChannelCreatePayWithTransferChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentChannelCreateQRChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentChannelCreateUSSDChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestArchiveResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestCreate.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestFinalizeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestLineItemsArray.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestNotificationsArray.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestPendingArray.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestSendNotificationResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestSuccessfulArray.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestTaxArray.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestTotalArray.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestTotalResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestVerifyResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentRequestViewResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PaymentSession.yaml create mode 100644 src/assets/openapi/components/schemas/PlanCreate.yaml create mode 100644 src/assets/openapi/components/schemas/PlanCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PlanFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PlanListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PlanListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/PlanUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/PlanUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationCaptureResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationInitializeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationReleaseResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationReserveWithAuthCodeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationReserveWithSelfCheckoutResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationVerifyResponse.yaml create mode 100644 src/assets/openapi/components/schemas/PreAuthorizationViewResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ProductCreate.yaml create mode 100644 src/assets/openapi/components/schemas/ProductCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ProductDeleteResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ProductFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ProductListsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/ProductListsResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/ProductUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/ProductUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/RefundCreate.yaml create mode 100644 src/assets/openapi/components/schemas/RefundCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/RefundFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/RefundListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/RefundListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/Response.yaml create mode 100644 src/assets/openapi/components/schemas/ShareSubaccountsArray.yaml create mode 100644 src/assets/openapi/components/schemas/SplitAddUpdateSubaccountResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SplitCreate.yaml create mode 100644 src/assets/openapi/components/schemas/SplitCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SplitFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SplitListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SplitListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/SplitRemoveSubaccountResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SplitSubaccounts.yaml create mode 100644 src/assets/openapi/components/schemas/SplitSubaccountsArray.yaml create mode 100644 src/assets/openapi/components/schemas/SplitUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/SplitUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontAddProducts.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontContactsArray.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontCreate.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontDeleteResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontDuplicateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontProductResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontShippingResponse.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/StorefrontUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubaccountCreate.yaml create mode 100644 src/assets/openapi/components/schemas/SubaccountCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubaccountFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubaccountListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/SubaccountUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/SubaccountUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubscriptionCreate.yaml create mode 100644 src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubscriptionDisableResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubscriptionListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/SubscriptionToggle.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalActivationToggle.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalCommissionDeviceResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalCountsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalDecommissionDeviceResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalGetResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalGetStatusResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalListsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalListsResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalSendEvent.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalSendEventData.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalUpate.yaml create mode 100644 src/assets/openapi/components/schemas/TerminalUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionChargeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionCheckAuthorizationResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionExportResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionInitialize.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionInitializeBadRequestModel.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionInitializeResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionPartialDebit.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionPendingTransfersByCurrencyArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionTimelineResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionTotalVolumeByCurrencyArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionTotalsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferApprovalGetSettingsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferApprovalUpdateSettingsResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferBase.yaml create mode 100644 src/assets/openapi/components/schemas/TransferBulk.yaml create mode 100644 src/assets/openapi/components/schemas/TransferBulkResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferBulkResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransferCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferDisablesOtpResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferEnablesOtpResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferFeesBreakdownArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransferFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferFetchZAResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferFinalize.yaml create mode 100644 src/assets/openapi/components/schemas/TransferFinalizeDisableOTP.yaml create mode 100644 src/assets/openapi/components/schemas/TransferFinalizeDisablesOtpResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferInitiate.yaml create mode 100644 src/assets/openapi/components/schemas/TransferListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientBulk.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientBulkCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientCreate.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientDeleteResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientErrorsArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientListResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientUpdate.yaml create mode 100644 src/assets/openapi/components/schemas/TransferRecipientUpdateResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferResendOTP.yaml create mode 100644 src/assets/openapi/components/schemas/TransferResendsOtpResponse.yaml create mode 100644 src/assets/openapi/components/schemas/TransferVerifyResponse.yaml create mode 100644 src/assets/openapi/components/schemas/USSD.yaml create mode 100644 src/assets/openapi/components/schemas/VerificationResolveAccountNumberResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerificationResolveCardBINResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyAccessCodeGHResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyAccessCodeKEResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyAccessCodeNGResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyAccessCodeSupportedBanksArray.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyAccessCodeZAResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyAuthorizationCardResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyAuthorizationDirectdebitResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyCodeGHResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyCodeKEResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyCodeNGResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyCodeSupportedBanksArray.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyCodeZAResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyMultiSplitResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifyResponse.yaml create mode 100644 src/assets/openapi/components/schemas/VerifySingleSplitResponse.yaml create mode 100644 src/assets/openapi/openapi.yaml create mode 100644 src/assets/openapi/paths/address_verification_states.yaml create mode 100644 src/assets/openapi/paths/apple-pay_domain.yaml create mode 100644 src/assets/openapi/paths/balance.yaml create mode 100644 src/assets/openapi/paths/balance_ledger.yaml create mode 100644 src/assets/openapi/paths/bank.yaml create mode 100644 src/assets/openapi/paths/bank_resolve.yaml create mode 100644 src/assets/openapi/paths/bank_validate.yaml create mode 100644 src/assets/openapi/paths/bulkcharge.yaml create mode 100644 src/assets/openapi/paths/bulkcharge_pause_{code}.yaml create mode 100644 src/assets/openapi/paths/bulkcharge_resume_{code}.yaml create mode 100644 src/assets/openapi/paths/bulkcharge_{code}.yaml create mode 100644 src/assets/openapi/paths/bulkcharge_{code}_charges.yaml create mode 100644 src/assets/openapi/paths/charge.yaml create mode 100644 src/assets/openapi/paths/charge_submit_address.yaml create mode 100644 src/assets/openapi/paths/charge_submit_birthday.yaml create mode 100644 src/assets/openapi/paths/charge_submit_otp.yaml create mode 100644 src/assets/openapi/paths/charge_submit_phone.yaml create mode 100644 src/assets/openapi/paths/charge_submit_pin.yaml create mode 100644 src/assets/openapi/paths/charge_{reference}.yaml create mode 100644 src/assets/openapi/paths/country.yaml create mode 100644 src/assets/openapi/paths/customer.yaml create mode 100644 src/assets/openapi/paths/customer_authorization_initialize.yaml create mode 100644 src/assets/openapi/paths/customer_authorization_verify_{reference}.yaml create mode 100644 src/assets/openapi/paths/customer_deactivate_authorization.yaml create mode 100644 src/assets/openapi/paths/customer_set_risk_action.yaml create mode 100644 src/assets/openapi/paths/customer_{code}.yaml create mode 100644 src/assets/openapi/paths/customer_{code}_identification.yaml create mode 100644 src/assets/openapi/paths/customer_{id}_directdebit-activation-charge.yaml create mode 100644 src/assets/openapi/paths/customer_{id}_directdebit-mandate-authorizations.yaml create mode 100644 src/assets/openapi/paths/customer_{id}_initialize-direct-debit.yaml create mode 100644 src/assets/openapi/paths/decision_bin_{bin}.yaml create mode 100644 src/assets/openapi/paths/dedicated_account.yaml create mode 100644 src/assets/openapi/paths/dedicated_account_assign.yaml create mode 100644 src/assets/openapi/paths/dedicated_account_available_providers.yaml create mode 100644 src/assets/openapi/paths/dedicated_account_requery.yaml create mode 100644 src/assets/openapi/paths/dedicated_account_split.yaml create mode 100644 src/assets/openapi/paths/dedicated_account_{account_id}.yaml create mode 100644 src/assets/openapi/paths/directdebit_activation-charge.yaml create mode 100644 src/assets/openapi/paths/directdebit_mandate-authorizations.yaml create mode 100644 src/assets/openapi/paths/dispute.yaml create mode 100644 src/assets/openapi/paths/dispute_export.yaml create mode 100644 src/assets/openapi/paths/dispute_transaction_{id}.yaml create mode 100644 src/assets/openapi/paths/dispute_{id}.yaml create mode 100644 src/assets/openapi/paths/dispute_{id}_evidence.yaml create mode 100644 src/assets/openapi/paths/dispute_{id}_resolve.yaml create mode 100644 src/assets/openapi/paths/dispute_{id}_upload_url.yaml create mode 100644 src/assets/openapi/paths/integration_payment_session_timeout.yaml create mode 100644 src/assets/openapi/paths/order.yaml create mode 100644 src/assets/openapi/paths/order_product_{id}.yaml create mode 100644 src/assets/openapi/paths/order_{code}_validate.yaml create mode 100644 src/assets/openapi/paths/order_{id}.yaml create mode 100644 src/assets/openapi/paths/page.yaml create mode 100644 src/assets/openapi/paths/page_check_slug_availability_{slug}.yaml create mode 100644 src/assets/openapi/paths/page_{id}.yaml create mode 100644 src/assets/openapi/paths/page_{id}_product.yaml create mode 100644 src/assets/openapi/paths/paymentrequest.yaml create mode 100644 src/assets/openapi/paths/paymentrequest_archive_{id}.yaml create mode 100644 src/assets/openapi/paths/paymentrequest_finalize_{id}.yaml create mode 100644 src/assets/openapi/paths/paymentrequest_notify_{id}.yaml create mode 100644 src/assets/openapi/paths/paymentrequest_totals.yaml create mode 100644 src/assets/openapi/paths/paymentrequest_verify_{id}.yaml create mode 100644 src/assets/openapi/paths/paymentrequest_{id}.yaml create mode 100644 src/assets/openapi/paths/plan.yaml create mode 100644 src/assets/openapi/paths/plan_{code}.yaml create mode 100644 src/assets/openapi/paths/product.yaml create mode 100644 src/assets/openapi/paths/product_{id}.yaml create mode 100644 src/assets/openapi/paths/refund.yaml create mode 100644 src/assets/openapi/paths/refund_{id}.yaml create mode 100644 src/assets/openapi/paths/settlement.yaml create mode 100644 src/assets/openapi/paths/settlement_{id}_transaction.yaml create mode 100644 src/assets/openapi/paths/split.yaml create mode 100644 src/assets/openapi/paths/split_{id}.yaml create mode 100644 src/assets/openapi/paths/split_{id}_subaccount_add.yaml create mode 100644 src/assets/openapi/paths/split_{id}_subaccount_remove.yaml create mode 100644 src/assets/openapi/paths/storefront.yaml create mode 100644 src/assets/openapi/paths/storefront_verify_{slug}.yaml create mode 100644 src/assets/openapi/paths/storefront_{id}.yaml create mode 100644 src/assets/openapi/paths/storefront_{id}_duplicate.yaml create mode 100644 src/assets/openapi/paths/storefront_{id}_order.yaml create mode 100644 src/assets/openapi/paths/storefront_{id}_product.yaml create mode 100644 src/assets/openapi/paths/storefront_{id}_publish.yaml create mode 100644 src/assets/openapi/paths/subaccount.yaml create mode 100644 src/assets/openapi/paths/subaccount_{code}.yaml create mode 100644 src/assets/openapi/paths/subscription.yaml create mode 100644 src/assets/openapi/paths/subscription_disable.yaml create mode 100644 src/assets/openapi/paths/subscription_enable.yaml create mode 100644 src/assets/openapi/paths/subscription_{code}.yaml create mode 100644 src/assets/openapi/paths/subscription_{code}_manage_email.yaml create mode 100644 src/assets/openapi/paths/subscription_{code}_manage_link.yaml create mode 100644 src/assets/openapi/paths/terminal.yaml create mode 100644 src/assets/openapi/paths/terminal_commission_device.yaml create mode 100644 src/assets/openapi/paths/terminal_decommission_device.yaml create mode 100644 src/assets/openapi/paths/terminal_{id}_event.yaml create mode 100644 src/assets/openapi/paths/terminal_{terminal_id}.yaml create mode 100644 src/assets/openapi/paths/terminal_{terminal_id}_event_{event_id}.yaml create mode 100644 src/assets/openapi/paths/terminal_{terminal_id}_presence.yaml create mode 100644 src/assets/openapi/paths/transaction.yaml create mode 100644 src/assets/openapi/paths/transaction_charge_authorization.yaml create mode 100644 src/assets/openapi/paths/transaction_export.yaml create mode 100644 src/assets/openapi/paths/transaction_initialize.yaml create mode 100644 src/assets/openapi/paths/transaction_partial_debit.yaml create mode 100644 src/assets/openapi/paths/transaction_timeline_{id}.yaml create mode 100644 src/assets/openapi/paths/transaction_totals.yaml create mode 100644 src/assets/openapi/paths/transaction_verify_{reference}.yaml create mode 100644 src/assets/openapi/paths/transaction_{id}.yaml create mode 100644 src/assets/openapi/paths/transaction_{id}_event.yaml create mode 100644 src/assets/openapi/paths/transaction_{id}_session.yaml create mode 100644 src/assets/openapi/paths/transfer.yaml create mode 100644 src/assets/openapi/paths/transfer_bulk.yaml create mode 100644 src/assets/openapi/paths/transfer_disable_otp.yaml create mode 100644 src/assets/openapi/paths/transfer_disable_otp_finalize.yaml create mode 100644 src/assets/openapi/paths/transfer_enable_otp.yaml create mode 100644 src/assets/openapi/paths/transfer_export.yaml create mode 100644 src/assets/openapi/paths/transfer_finalize_transfer.yaml create mode 100644 src/assets/openapi/paths/transfer_resend_otp.yaml create mode 100644 src/assets/openapi/paths/transfer_verify_{reference}.yaml create mode 100644 src/assets/openapi/paths/transfer_{code}.yaml create mode 100644 src/assets/openapi/paths/transferrecipient.yaml create mode 100644 src/assets/openapi/paths/transferrecipient_bulk.yaml create mode 100644 src/assets/openapi/paths/transferrecipient_{code}.yaml rename {sdk => src/assets/sdk}/paystack.yaml (100%) rename {use_cases => src/assets/use_cases}/betting.yaml (100%) rename {use_cases => src/assets/use_cases}/lending.yaml (100%) rename {use_cases => src/assets/use_cases}/marketplace.yaml (100%) rename {use_cases => src/assets/use_cases}/membership.yaml (100%) rename {use_cases => src/assets/use_cases}/savings.yaml (100%) rename {use_cases => src/assets/use_cases}/wallet.yaml (100%) create mode 100644 src/index.js create mode 100644 src/views/index.html create mode 100644 temp/paystack.yaml diff --git a/package.json b/package.json index 0011aed..ed35e4c 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,8 @@ "version": "1.0.0", "description": "The OpenAPI specification for the Paystack API", "author": "Damilola Odujoko", - "main": "index.js", + "main": "src/index.js", + "type": "module", "scripts": { "build": "pnpm build-main && pnpm build-wallet && pnpm build-membership && pnpm build-marketplace && pnpm build-betting && pnpm build-lending && pnpm build-savings", "build-main": "swagger-cli bundle main/paystack.yaml --outfile dist/paystack.yaml --type yaml", @@ -15,7 +16,11 @@ "build-savings": "swagger-cli bundle use_cases/savings.yaml --outfile dist/savings.yaml --type yaml", "lint": "pnpm lint-main && pnpm lint-sdk", "lint-main": "spectral lint dist/paystack.yaml", - "lint-sdk": "spectral lint ./sdk/paystack.yaml" + "lint-sdk": "spectral lint ./sdk/paystack.yaml", + "split:main": "redocly split ./src/assets/base/paystack.yaml --outDir=./src/assets/openapi", + "bundle:main": "redocly bundle ./src/assets/openapi/openapi.yaml --output temp/paystack.yaml --remove-unused-components", + "start": "nodemon src/index.js", + "dev": "pnpm bundle:main && pnpm start" }, "repository": { "type": "git", @@ -33,7 +38,11 @@ "devDependencies": { "@apidevtools/swagger-cli": "^4.0.4", "@quobix/vacuum": "^0.10.1", - "@redocly/cli": "^1.22.1", - "@stoplight/spectral-cli": "^6.5.1" + "@redocly/cli": "^2.0.2", + "@stoplight/spectral-cli": "^6.5.1", + "express": "^5.1.0", + "nodemon": "^3.1.10", + "open": "^10.2.0", + "yaml": "^2.8.1" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 922c0cf..477e72f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,11 +15,23 @@ importers: specifier: ^0.10.1 version: 0.10.1 '@redocly/cli': - specifier: ^1.22.1 - version: 1.22.1(enzyme@3.11.0) + specifier: ^2.0.2 + version: 2.0.2(@opentelemetry/api@1.9.0)(ajv@8.17.1)(core-js@3.38.1) '@stoplight/spectral-cli': specifier: ^6.5.1 version: 6.11.1 + express: + specifier: ^5.1.0 + version: 5.1.0 + nodemon: + specifier: ^3.1.10 + version: 3.1.10 + open: + specifier: ^10.2.0 + version: 10.2.0 + yaml: + specifier: ^2.8.1 + version: 2.8.1 packages: @@ -47,17 +59,18 @@ packages: '@asyncapi/specs@4.3.1': resolution: {integrity: sha512-EfexhJu/lwF8OdQDm28NKLJHFkx0Gb6O+rcezhZYLPIoNYKXJMh2J1vFGpwmfAcTTh+ffK44Oc2Hs1Q4sLBp+A==} + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + engines: {node: '>=6.9.0'} + '@babel/runtime@7.25.6': resolution: {integrity: sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==} engines: {node: '>=6.9.0'} - '@cfaester/enzyme-adapter-react-18@0.8.0': - resolution: {integrity: sha512-3Z3ThTUouHwz8oIyhTYQljEMNRFtlVyc3VOOHCbxs47U6cnXs8K9ygi/c1tv49s7MBlTXeIcuN+Ttd9aPtILFQ==} - peerDependencies: - enzyme: ^3.11.0 - react: '>=18' - react-dom: '>=18' - '@emotion/is-prop-valid@1.2.2': resolution: {integrity: sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==} @@ -70,21 +83,61 @@ packages: '@exodus/schemasafe@1.3.0': resolution: {integrity: sha512-5Aap/GaRupgNx/feGBwLLTVv8OQFfv3pq2lPRzPg9R+IOBnDgghTGW7l7EuVXOvg5cc/xSAlRW8rBrjIC3Nvqw==} + '@faker-js/faker@7.6.0': + resolution: {integrity: sha512-XK6BTq1NDMo9Xqw/YkYyGjSsg44fbNwYRx7QK2CuoQgyy+f1rrTDHoExVM5PsyXCtfl2vs2vVJ0MN0yN6LppRw==} + engines: {node: '>=14.0.0', npm: '>=6.0.0'} + + '@humanwhocodes/momoa@2.0.4': + resolution: {integrity: sha512-RE815I4arJFtt+FVeU1Tgp9/Xvecacji8w/V6XtXsWWH/wz/eNkNbhb+ny/+PlVZjV0rxQpRSQKNKE3lcktHEA==} + engines: {node: '>=10.10.0'} + + '@isaacs/balanced-match@4.0.1': + resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} + engines: {node: 20 || >=22} + + '@isaacs/brace-expansion@5.0.0': + resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} + engines: {node: 20 || >=22} + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@jest/schemas@29.6.3': + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jsdevtools/ono@7.1.3': resolution: {integrity: sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==} + '@jsep-plugin/assignment@1.3.0': + resolution: {integrity: sha512-VVgV+CXrhbMI3aSusQyclHkenWSAm95WaiKrMxRFam3JSUiIaQjoMIw2sEs/OX4XifnqeQUN4DYbJjlA8EfktQ==} + engines: {node: '>= 10.16.0'} + peerDependencies: + jsep: ^0.4.0||^1.0.0 + '@jsep-plugin/regex@1.0.3': resolution: {integrity: sha512-XfZgry4DwEZvSFtS/6Y+R48D7qJYJK6R9/yJFyUFHCIUMEEHuJ4X95TDgJp5QkmzfLYvapMPzskV5HpIDrREug==} engines: {node: '>= 10.16.0'} peerDependencies: jsep: ^0.4.0||^1.0.0 + '@jsep-plugin/regex@1.0.4': + resolution: {integrity: sha512-q7qL4Mgjs1vByCaTnDFcBnV9HS7GVPJX5vyVoCgZHNSC9rjwIlmbXG5sUuorR5ndfHAIlJ8pVStxvjXHbNvtUg==} + engines: {node: '>= 10.16.0'} + peerDependencies: + jsep: ^0.4.0||^1.0.0 + '@jsep-plugin/ternary@1.1.3': resolution: {integrity: sha512-qtLGzCNzPVJ3kdH6/zoLWDPjauHIKiLSBAR71Wa0+PWvGA8wODUQvRgxtpUA5YqAYL3CQ8S4qXhd/9WuWTZirg==} engines: {node: '>= 10.16.0'} peerDependencies: jsep: ^0.4.0||^1.0.0 + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -97,6 +150,108 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@opentelemetry/api-logs@0.202.0': + resolution: {integrity: sha512-fTBjMqKCfotFWfLzaKyhjLvyEyq5vDKTTFfBmx21btv3gvy8Lq6N5Dh2OzqeuN4DjtpSvNT1uNVfg08eD2Rfxw==} + engines: {node: '>=8.0.0'} + + '@opentelemetry/api@1.9.0': + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} + + '@opentelemetry/context-async-hooks@2.0.1': + resolution: {integrity: sha512-XuY23lSI3d4PEqKA+7SLtAgwqIfc6E/E9eAQWLN1vlpC53ybO3o6jW4BsXo1xvz9lYyyWItfQDDLzezER01mCw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/core@2.0.1': + resolution: {integrity: sha512-MaZk9SJIDgo1peKevlbhP6+IwIiNPNmswNL4AF0WaQJLbHXjr9SrZMgS12+iqr9ToV4ZVosCcc0f8Rg67LXjxw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/exporter-trace-otlp-http@0.202.0': + resolution: {integrity: sha512-/hKE8DaFCJuaQqE1IxpgkcjOolUIwgi3TgHElPVKGdGRBSmJMTmN/cr6vWa55pCJIXPyhKvcMrbrya7DZ3VmzA==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/otlp-exporter-base@0.202.0': + resolution: {integrity: sha512-nMEOzel+pUFYuBJg2znGmHJWbmvMbdX5/RhoKNKowguMbURhz0fwik5tUKplLcUtl8wKPL1y9zPnPxeBn65N0Q==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/otlp-transformer@0.202.0': + resolution: {integrity: sha512-5XO77QFzs9WkexvJQL9ksxL8oVFb/dfi9NWQSq7Sv0Efr9x3N+nb1iklP1TeVgxqJ7m1xWiC/Uv3wupiQGevMw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/resources@2.0.1': + resolution: {integrity: sha512-dZOB3R6zvBwDKnHDTB4X1xtMArB/d324VsbiPkX/Yu0Q8T2xceRthoIVFhJdvgVM2QhGVUyX9tzwiNxGtoBJUw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + + '@opentelemetry/sdk-logs@0.202.0': + resolution: {integrity: sha512-pv8QiQLQzk4X909YKm0lnW4hpuQg4zHwJ4XBd5bZiXcd9urvrJNoNVKnxGHPiDVX/GiLFvr5DMYsDBQbZCypRQ==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.4.0 <1.10.0' + + '@opentelemetry/sdk-metrics@2.0.1': + resolution: {integrity: sha512-wf8OaJoSnujMAHWR3g+/hGvNcsC16rf9s1So4JlMiFaFHiE4HpIA3oUh+uWZQ7CNuK8gVW/pQSkgoa5HkkOl0g==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.9.0 <1.10.0' + + '@opentelemetry/sdk-trace-base@2.0.1': + resolution: {integrity: sha512-xYLlvk/xdScGx1aEqvxLwf6sXQLXCjk3/1SQT9X9AoN5rXRhkdvIFShuNNmtTEPRBqcsMbS4p/gJLNI2wXaDuQ==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + + '@opentelemetry/sdk-trace-node@2.0.1': + resolution: {integrity: sha512-UhdbPF19pMpBtCWYP5lHbTogLWx9N0EBxtdagvkn5YtsAnCBZzL7SjktG+ZmupRgifsHMjwUaCCaVmqGfSADmA==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/semantic-conventions@1.34.0': + resolution: {integrity: sha512-aKcOkyrorBGlajjRdVoJWHTxfxO1vCNHLJVlSDaRHDIdjU+pX8IYQPvPDkYiujKLbRnWU+1TBwEt0QRgSm4SGA==} + engines: {node: '>=14'} + + '@protobufjs/aspromise@1.1.2': + resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} + + '@protobufjs/base64@1.1.2': + resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} + + '@protobufjs/codegen@2.0.4': + resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + + '@protobufjs/eventemitter@1.1.0': + resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + + '@protobufjs/fetch@1.1.0': + resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + + '@protobufjs/float@1.0.2': + resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + + '@protobufjs/inquire@1.1.0': + resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + + '@protobufjs/path@1.1.2': + resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + + '@protobufjs/pool@1.1.0': + resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + + '@protobufjs/utf8@1.1.0': + resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + '@quobix/vacuum@0.10.1': resolution: {integrity: sha512-59KILui8mCqA1x0WjVlwUr2oW0CtDh49MlOlETK8nfeMCJ1SWrjbssp6YL5KdcJX/kGVbjOIxkLSZz+rRwlGcA==} engines: {node: '>=16.0.0'} @@ -105,18 +260,35 @@ packages: '@redocly/ajv@8.11.0': resolution: {integrity: sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==} - '@redocly/cli@1.22.1': - resolution: {integrity: sha512-fGBj3KH32JH9Kg4Y3DQ2iF5jfpjT7T5ypA3JOpJcwGZTI/krDzrSxOb7ArX0HCATCBCobkWzDynHBF03j9oPvw==} - engines: {node: '>=14.19.0', npm: '>=7.0.0'} + '@redocly/ajv@8.11.2': + resolution: {integrity: sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==} + + '@redocly/ajv@8.11.3': + resolution: {integrity: sha512-4P3iZse91TkBiY+Dx5DUgxQ9GXkVJf++cmI0MOyLDxV9b5MUBI4II6ES8zA5JCbO72nKAJxWrw4PUPW+YP3ZDQ==} + + '@redocly/cli@2.0.2': + resolution: {integrity: sha512-eCt1Uwm6hvNaG4xYkEwom7/iLn+6kQzM9rOKsmNwGpPPInrukCQctkehMB9OjT07uIdm/d/hjugQ8WG/08cgXg==} + engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} hasBin: true '@redocly/config@0.10.1': resolution: {integrity: sha512-H3LnKVGzOaxskwJu8pmJYwBOWjP61qOK7TuTrbafqArDVckE06fhA6l0nO4KvBbjLPjy1Al7UnlxOu23V4Nl0w==} + '@redocly/config@0.26.4': + resolution: {integrity: sha512-YsFgVCuKQqvkC85mV4D5wxmbDuQo90AbNodCqhTVsaT/3wRUFu+1wYJu8PYc1CMGolfmCYSewFjMgsN5M0PJQg==} + '@redocly/openapi-core@1.22.1': resolution: {integrity: sha512-pjr456gJzrbwPvBjFKlWOd9nZEcr/dp6XSH0c8ijWGWv5K+V0vpUUy2zaTAVsFAoCydx1miEoOcbLhWQ9WC2nw==} engines: {node: '>=14.19.0', npm: '>=7.0.0'} + '@redocly/openapi-core@2.0.2': + resolution: {integrity: sha512-xuNR35eR0NQxR5gMMrZRgdguID+bqIzZps4prg7Wfm1ZiIUybYhOGzzePWP61XJdNxY/FXkmye36wTrteTUNBQ==} + engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} + + '@redocly/respect-core@2.0.2': + resolution: {integrity: sha512-giFM1t3muwKs76kbVJ3W2mbIgbvFwCUzCjdOneTkXGlvRFhANbXa3QOhyy6hxZW/tCy/ceWGGiiAmg2+Hn+SIw==} + engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} + '@rollup/plugin-commonjs@22.0.2': resolution: {integrity: sha512-//NdP6iIwPbMTcazYsiBMbJW7gfmpHom33u1beiIoHDEM0Q9clvtQB1T0efvMqHeKsGohiHo97BCPCkBXdscwg==} engines: {node: '>= 12.0.0'} @@ -129,6 +301,9 @@ packages: peerDependencies: rollup: ^1.20.0||^2.0.0 + '@sinclair/typebox@0.27.8': + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + '@stoplight/better-ajv-errors@1.0.3': resolution: {integrity: sha512-0p9uXkuB22qGdNfy3VeEhxkU5uwvp/KrBTAbrLBURv6ilxIVwanKwjMc41lQfIVgPGcOkmLbTolfFrSsueu7zA==} engines: {node: ^12.20 || >= 14.13} @@ -251,6 +426,9 @@ packages: '@types/stylis@4.2.5': resolution: {integrity: sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==} + '@types/trusted-types@2.0.7': + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} + '@types/urijs@1.19.25': resolution: {integrity: sha512-XOfUup9r3Y06nFAZh3WvO0rBU4OtlfPB/vgxpjg+NRdGU6CN6djdc6OEiH+PcqHCY6eFLo9Ista73uarf4gnBg==} @@ -258,6 +436,10 @@ packages: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} + accepts@2.0.0: + resolution: {integrity: sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==} + engines: {node: '>= 0.6'} + agent-base@7.1.1: resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} engines: {node: '>= 14'} @@ -290,10 +472,22 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} + engines: {node: '>=12'} + ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} + ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -308,14 +502,6 @@ packages: resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} engines: {node: '>= 0.4'} - array.prototype.filter@1.0.4: - resolution: {integrity: sha512-r+mCJ7zXgXElgR4IRC+fkvNCeoaavWBs6EdCso5Tbcf+iEMKzBU/His60lt34WEZ9vlb8wDkZvQGcVI5GwkfoQ==} - engines: {node: '>= 0.4'} - - array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.3: resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} engines: {node: '>= 0.4'} @@ -341,12 +527,19 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + better-ajv-errors@1.2.0: + resolution: {integrity: sha512-UW+IsFycygIo7bclP9h5ugkNH8EjCSgqyFB/yQ4Hqqa1OEYDtb0uFIkYE0b6+CjkgJYVM5UKI/pJPxjYe9EZlA==} + engines: {node: '>= 12.13.0'} + peerDependencies: + ajv: 4.11.8 - 8 + binary-extensions@2.3.0: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} - boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + body-parser@2.2.0: + resolution: {integrity: sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg==} + engines: {node: '>=18'} brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} @@ -361,10 +554,26 @@ packages: builtins@1.0.3: resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==} + bundle-name@4.1.0: + resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} + engines: {node: '>=18'} + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + call-bind@1.0.7: resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} engines: {node: '>= 0.4'} + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + call-me-maybe@1.0.2: resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==} @@ -379,13 +588,6 @@ packages: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} - cheerio-select@2.1.0: - resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} - - cheerio@1.0.0: - resolution: {integrity: sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==} - engines: {node: '>=18.17'} - chokidar@3.6.0: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} @@ -421,36 +623,49 @@ packages: colorette@1.4.0: resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + combined-stream@1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} - commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - commondir@1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + content-disposition@1.0.0: + resolution: {integrity: sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg==} + engines: {node: '>= 0.6'} + + content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} + engines: {node: '>= 0.6'} + + cookie-signature@1.2.2: + resolution: {integrity: sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==} + engines: {node: '>=6.6.0'} + + cookie@0.7.2: + resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} + engines: {node: '>= 0.6'} + core-js@3.38.1: resolution: {integrity: sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==} + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + css-color-keywords@1.0.0: resolution: {integrity: sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==} engines: {node: '>=4'} - css-select@5.1.0: - resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} - css-to-react-native@3.2.0: resolution: {integrity: sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==} - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} @@ -473,8 +688,8 @@ packages: resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} engines: {node: '>= 0.4'} - debug@4.3.7: - resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -489,10 +704,22 @@ packages: decko@1.2.0: resolution: {integrity: sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==} + default-browser-id@5.0.0: + resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==} + engines: {node: '>=18'} + + default-browser@5.2.1: + resolution: {integrity: sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==} + engines: {node: '>=18'} + define-data-property@1.1.4: resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} + define-lazy-prop@3.0.0: + resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} + engines: {node: '>=12'} + define-properties@1.2.1: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} @@ -501,44 +728,44 @@ packages: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + dependency-graph@0.11.0: resolution: {integrity: sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==} engines: {node: '>= 0.6.0'} - discontinuous-range@1.0.0: - resolution: {integrity: sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==} + diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dom-serializer@2.0.0: - resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + dompurify@3.2.6: + resolution: {integrity: sha512-/2GogDQlohXPZe6D6NOgQvXLPSYBqIWMnZ8zzOhn09REE4eyAzb+Hed3jhoM9OkuaJ8P6ZGTTVWQKAi8ieIzfQ==} - domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + dotenv@16.4.7: + resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} + engines: {node: '>=12'} - domhandler@5.0.3: - resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} - engines: {node: '>= 4'} + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} - dompurify@3.1.6: - resolution: {integrity: sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==} + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - domutils@3.1.0: - resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} + ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - encoding-sniffer@0.2.0: - resolution: {integrity: sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==} - - entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - enzyme-shallow-equal@1.0.7: - resolution: {integrity: sha512-/um0GFqUXnpM9SvKtje+9Tjoz3f1fpBC3eXRFrNs8kpYn69JljciYP7KZTqM/YQbUY9KUjvKB4jo/q+L6WGGvg==} - - enzyme@3.11.0: - resolution: {integrity: sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==} + encodeurl@2.0.0: + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} + engines: {node: '>= 0.8'} es-abstract@1.23.3: resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} @@ -548,13 +775,14 @@ packages: resolution: {integrity: sha512-KkzhUUuD2CUMqEc8JEqsXEMDHzDPE8RCjZeUBitsnB1eNcAJWQPiciKsMXe3Yytj4Flw1XLl46Qcf9OxvZha7A==} engines: {node: '>= 0.4'} - es-array-method-boxes-properly@1.0.0: - resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==} - es-define-property@1.0.0: resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} engines: {node: '>= 0.4'} + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + es-errors@1.3.0: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} @@ -563,12 +791,17 @@ packages: resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} engines: {node: '>= 0.4'} + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + es-set-tostringtag@2.0.3: resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} engines: {node: '>= 0.4'} - es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} es-to-primitive@1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} @@ -581,6 +814,9 @@ packages: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} + escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} @@ -592,6 +828,10 @@ packages: estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} + engines: {node: '>= 0.6'} + event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} @@ -599,6 +839,10 @@ packages: eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + express@5.1.0: + resolution: {integrity: sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==} + engines: {node: '>= 18'} + fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -615,6 +859,10 @@ packages: fast-uri@3.0.1: resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} + fast-xml-parser@4.5.3: + resolution: {integrity: sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig==} + hasBin: true + fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} @@ -626,6 +874,10 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} + finalhandler@2.1.0: + resolution: {integrity: sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==} + engines: {node: '>= 0.8'} + find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -636,14 +888,26 @@ packages: foreach@2.0.6: resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==} - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + + form-data@4.0.4: + resolution: {integrity: sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==} engines: {node: '>= 6'} formdata-polyfill@4.0.10: resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} engines: {node: '>=12.20.0'} + forwarded@0.2.0: + resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} + engines: {node: '>= 0.6'} + + fresh@2.0.0: + resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==} + engines: {node: '>= 0.8'} + fs-extra@10.1.0: resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} engines: {node: '>=12'} @@ -678,8 +942,13 @@ packages: resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} engines: {node: '>= 0.4'} - get-port-please@3.1.2: - resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==} + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} get-source@2.0.12: resolution: {integrity: sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==} @@ -692,6 +961,11 @@ packages: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} + glob@11.0.3: + resolution: {integrity: sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==} + engines: {node: 20 || >=22} + hasBin: true + glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} deprecated: Glob versions prior to v9 are no longer supported @@ -703,6 +977,10 @@ packages: gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} @@ -714,6 +992,10 @@ packages: has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} @@ -729,14 +1011,14 @@ packages: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} engines: {node: '>= 0.4'} + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + has-tostringtag@1.0.2: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} - has@1.0.4: - resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==} - engines: {node: '>= 0.4.0'} - hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} @@ -745,11 +1027,9 @@ packages: resolution: {integrity: sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==} engines: {node: '>=14'} - html-element-map@1.3.1: - resolution: {integrity: sha512-6XMlxrAFX4UEEGxctfFnmrFaaZFNf9i5fNuV5wZ3WWQ4FVaNP1aX1LkX9j2mfEx1NpjeE/rL3nmgEn23GdFmrg==} - - htmlparser2@9.1.0: - resolution: {integrity: sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==} + http-errors@2.0.0: + resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} + engines: {node: '>= 0.8'} http2-client@1.3.5: resolution: {integrity: sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==} @@ -762,6 +1042,9 @@ packages: resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} + ignore-by-default@1.0.1: + resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==} + immer@9.0.21: resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} @@ -776,6 +1059,10 @@ packages: resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} engines: {node: '>= 0.4'} + ipaddr.js@1.9.1: + resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} + engines: {node: '>= 0.10'} + is-array-buffer@3.0.4: resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} engines: {node: '>= 0.4'} @@ -807,6 +1094,11 @@ packages: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} + is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -819,6 +1111,11 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} + is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + is-negative-zero@2.0.3: resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} engines: {node: '>= 0.4'} @@ -831,6 +1128,9 @@ packages: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + is-promise@4.0.0: + resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==} + is-reference@1.2.1: resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} @@ -846,9 +1146,6 @@ packages: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} - is-subset@0.1.1: - resolution: {integrity: sha512-6Ybun0IkarhmEqxXCNw/C0bna6Zb/TkfUX9UbwJtK6ObwAVCxmAP308WWTHviM/zAqXk05cdhYsUsZeGQh99iw==} - is-symbol@1.0.4: resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} engines: {node: '>= 0.4'} @@ -860,9 +1157,32 @@ packages: is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + is-wsl@3.1.0: + resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} + engines: {node: '>=16'} + isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + jackspeak@4.1.1: + resolution: {integrity: sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==} + engines: {node: 20 || >=22} + + jest-diff@29.7.0: + resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-matcher-utils@29.7.0: + resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + js-levenshtein@1.1.6: resolution: {integrity: sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==} engines: {node: '>=0.10.0'} @@ -882,9 +1202,17 @@ packages: resolution: {integrity: sha512-i1rBX5N7VPl0eYb6+mHNp52sEuaS2Wi8CDYx1X5sn9naevL78+265XJqy1qENEk7mRKwS06NHpUqiBwR7qeodw==} engines: {node: '>= 10.16.0'} + jsep@1.4.0: + resolution: {integrity: sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==} + engines: {node: '>= 10.16.0'} + json-pointer@0.6.2: resolution: {integrity: sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==} + json-schema-to-ts@2.7.2: + resolution: {integrity: sha512-R1JfqKqbBR4qE8UyBR56Ms30LL62/nlhoz+1UkfI/VE7p54Awu919FZ6ZUPG8zIa3XB65usPJgr1ONVncUGSaQ==} + engines: {node: '>=16'} + json-schema-traverse@1.0.0: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} @@ -894,6 +1222,11 @@ packages: jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + jsonpath-plus@10.3.0: + resolution: {integrity: sha512-8TNmfeTCk2Le33A3vRRwtuworG/L5RrgMvdjhKZxvyShO+mBu2fP50OWUjRLNtvw344DdDarFh9buFAZs5ujeA==} + engines: {node: '>=18.0.0'} + hasBin: true + jsonpath-plus@6.0.1: resolution: {integrity: sha512-EvGovdvau6FyLexFH2OeXfIITlgIbgZoAZe3usiySeaIDm5QS+A10DKNpaPBBqqRSZr2HN6HVNXxtwUAr2apEw==} engines: {node: '>=10.0.0'} @@ -914,14 +1247,9 @@ packages: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} - lodash.escape@4.0.1: - resolution: {integrity: sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==} - - lodash.flattendeep@4.4.0: - resolution: {integrity: sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==} - lodash.isequal@4.5.0: resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} + deprecated: This package is deprecated. Use require('node:util').isDeepStrictEqual instead. lodash.topath@4.5.2: resolution: {integrity: sha512-1/W4dM+35DwvE/iEd1M9ekewOSTlpFekhw9mhAtrwjVqUr83/ilQiyAvmg4tVX7Unkcfl1KC+i9WdaT4B6aQcg==} @@ -929,10 +1257,17 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + long@5.3.2: + resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==} + loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true + lru-cache@11.1.0: + resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==} + engines: {node: 20 || >=22} + lunr@2.3.9: resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} @@ -947,6 +1282,18 @@ packages: engines: {node: '>= 12'} hasBin: true + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + media-typer@1.1.0: + resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==} + engines: {node: '>= 0.8'} + + merge-descriptors@2.0.0: + resolution: {integrity: sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==} + engines: {node: '>=18'} + merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} @@ -959,10 +1306,22 @@ packages: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} + mime-db@1.54.0: + resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} + engines: {node: '>= 0.6'} + mime-types@2.1.35: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} + mime-types@3.0.1: + resolution: {integrity: sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==} + engines: {node: '>= 0.6'} + + minimatch@10.0.3: + resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==} + engines: {node: 20 || >=22} + minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -981,6 +1340,10 @@ packages: resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} engines: {node: '>=8'} + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + minizlib@2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} @@ -1019,9 +1382,6 @@ packages: mobx@6.13.1: resolution: {integrity: sha512-ekLRxgjWJr8hVxj9ZKuClPwM/iHckx3euIJ3Np7zLVNtqJvfbbq7l370W/98C8EabdQ1pB5Jd3BbDWxJPNnaOg==} - moo@0.5.2: - resolution: {integrity: sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==} - ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -1030,9 +1390,9 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - nearley@2.20.1: - resolution: {integrity: sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==} - hasBin: true + negotiator@1.0.0: + resolution: {integrity: sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==} + engines: {node: '>= 0.6'} neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} @@ -1069,13 +1429,15 @@ packages: resolution: {integrity: sha512-Pzr3rol8fvhG/oJjIq2NTVB0vmdNNlz22FENhhPojYRZ4/ee08CfK4YuKmuL54V9MLhI1kpzxfOJ/63LzmZzDg==} engines: {node: '>=14'} + nodemon@3.1.10: + resolution: {integrity: sha512-WDjw3pJ0/0jMFmyNDp3gvY2YizjLmmOUQo6DEBY+JgdvW/yQ9mEeSw6H5ythl5Ny2ytb7f9C2nIbjSxMNzbJXw==} + engines: {node: '>=10'} + hasBin: true + normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} - nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - oas-kit-common@1.0.8: resolution: {integrity: sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==} @@ -1100,8 +1462,8 @@ packages: resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} engines: {node: '>= 0.4'} - object-is@1.1.6: - resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==} + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} engines: {node: '>= 0.4'} object-keys@1.1.1: @@ -1112,23 +1474,29 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} - object.entries@1.1.8: - resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} - engines: {node: '>= 0.4'} - - object.values@1.2.0: - resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} - engines: {node: '>= 0.4'} + on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} + engines: {node: '>= 0.8'} once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + open@10.2.0: + resolution: {integrity: sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==} + engines: {node: '>=18'} + openapi-sampler@1.5.1: resolution: {integrity: sha512-tIWIrZUKNAsbqf3bd9U1oH6JEXo8LNYuDlXw26By67EygpjT+ArFnsxxyTMjFWRfbqo5ozkvgSQDK69Gd8CddA==} + openapi-sampler@1.6.1: + resolution: {integrity: sha512-s1cIatOqrrhSj2tmJ4abFYZQK6l5v+V4toO5q1Pa0DyN8mtyqy2I+Qrj5W9vOELEtybIMQs/TBZGVO/DtTFK8w==} + openapi-types@12.1.3: resolution: {integrity: sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==} + outdent@0.8.0: + resolution: {integrity: sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==} + p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} @@ -1141,14 +1509,12 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - parse5-htmlparser2-tree-adapter@7.0.0: - resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} - - parse5-parser-stream@7.1.2: - resolution: {integrity: sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + parseurl@1.3.3: + resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} + engines: {node: '>= 0.8'} path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} @@ -1161,18 +1527,30 @@ packages: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + path-scurry@2.0.0: + resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==} + engines: {node: 20 || >=22} + + path-to-regexp@8.2.0: + resolution: {integrity: sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==} + engines: {node: '>=16'} + perfect-scrollbar@1.5.5: resolution: {integrity: sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==} - performance-now@2.1.0: - resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} - picocolors@1.1.0: resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} @@ -1200,6 +1578,10 @@ packages: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} + pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + printable-characters@1.0.42: resolution: {integrity: sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==} @@ -1210,26 +1592,39 @@ packages: prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + protobufjs@7.5.3: + resolution: {integrity: sha512-sildjKwVqOI2kmFDiXQ6aEB0fjYTafpEvIBs8tOR8qI4spuL9OPROLVu2qZqi/xgCfsHIwVqlaF8JBjWFHnKbw==} + engines: {node: '>=12.0.0'} + + proxy-addr@2.0.7: + resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} + engines: {node: '>= 0.10'} + + pstree.remy@1.1.8: + resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} + punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} + qs@6.14.0: + resolution: {integrity: sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==} + engines: {node: '>=0.6'} + queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - raf@3.4.1: - resolution: {integrity: sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==} - - railroad-diagrams@1.0.0: - resolution: {integrity: sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==} - - randexp@0.4.6: - resolution: {integrity: sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==} - engines: {node: '>=0.12'} - randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + range-parser@1.2.1: + resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} + engines: {node: '>= 0.6'} + + raw-body@3.0.0: + resolution: {integrity: sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==} + engines: {node: '>= 0.8'} + react-dom@18.3.1: resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} peerDependencies: @@ -1241,11 +1636,6 @@ packages: react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - react-shallow-renderer@16.15.0: - resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} - peerDependencies: - react: ^16.0.0 || ^17.0.0 || ^18.0.0 - react-tabs@6.0.2: resolution: {integrity: sha512-aQXTKolnM28k3KguGDBSAbJvcowOQr23A+CUJdzJtOSDOtTwzEaJA+1U4KwhNL9+Obe+jFS7geuvA7ICQPXOnQ==} peerDependencies: @@ -1263,14 +1653,14 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - redoc@2.1.5: - resolution: {integrity: sha512-POSbVg+7WLf+/5/c6GWLxL7+9t2D+1WlZdLN0a6qaCQc+ih3XYzteRBkXEN5kjrYrRNjdspfxTZkDLN5WV3Tzg==} + redoc@2.5.0: + resolution: {integrity: sha512-NpYsOZ1PD9qFdjbLVBZJWptqE+4Y6TkUuvEOqPUmoH7AKOmPcE+hYjotLxQNTqVoWL4z0T2uxILmcc8JGDci+Q==} engines: {node: '>=6.9', npm: '>=3.0.0'} peerDependencies: core-js: ^3.1.4 mobx: ^6.0.4 - react: ^16.8.4 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.4 || ^17.0.0 || ^18.0.0 + react: ^16.8.4 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.4 || ^17.0.0 || ^18.0.0 || ^19.0.0 styled-components: ^4.1.1 || ^5.1.1 || ^6.0.5 reftools@1.1.9: @@ -1302,10 +1692,6 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true - ret@0.1.15: - resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} - engines: {node: '>=0.12'} - reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} @@ -1315,8 +1701,13 @@ packages: engines: {node: '>=10.0.0'} hasBin: true - rst-selector-parser@2.2.3: - resolution: {integrity: sha512-nDG1rZeP6oFTLN6yNDV/uiAvs1+FS/KlrEwh7+y7dpuApDBy6bI2HTBcc0/V8lv9OTqfyD34eF7au2pm8aBbhA==} + router@2.2.0: + resolution: {integrity: sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==} + engines: {node: '>= 18'} + + run-applescript@7.0.0: + resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==} + engines: {node: '>=18'} run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} @@ -1346,9 +1737,20 @@ packages: engines: {node: '>=10'} hasBin: true + send@1.2.0: + resolution: {integrity: sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==} + engines: {node: '>= 18'} + + serve-static@2.2.0: + resolution: {integrity: sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==} + engines: {node: '>= 18'} + set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + set-cookie-parser@2.7.1: + resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==} + set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} @@ -1357,9 +1759,20 @@ packages: resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + shallowequal@1.1.0: resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==} + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + should-equal@2.0.0: resolution: {integrity: sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==} @@ -1378,14 +1791,38 @@ packages: should@13.2.3: resolution: {integrity: sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==} + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + side-channel@1.0.6: resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} engines: {node: '>= 0.4'} + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + simple-eval@1.0.0: resolution: {integrity: sha512-kpKJR+bqTscgC0xuAl2xHN6bB12lHjC2DCUfqjAx19bQyO3R2EVLOurm3H9AUltv/uFVcSCVNc6faegR+8NYLw==} engines: {node: '>=12'} + simple-update-notifier@2.0.0: + resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==} + engines: {node: '>=10'} + simple-websocket@9.1.0: resolution: {integrity: sha512-8MJPnjRN6A8UCp1I+H/dSFyjwJhp6wta4hsVRhjf8w9qBHRzxYt14RaOcjvQnhD1N4yKOddEjflwMnQM4VtXjQ==} @@ -1411,6 +1848,14 @@ packages: stacktracey@2.1.8: resolution: {integrity: sha512-Kpij9riA+UNg7TnphqjH7/CzctQ/owJGNbFkfEeve4Z4uxT5+JapVLFXcsurIfN34gnTWZNJ/f7NMG0E8JDzTw==} + statuses@2.0.1: + resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} + engines: {node: '>= 0.8'} + + statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + stickyfill@1.1.1: resolution: {integrity: sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==} @@ -1418,7 +1863,11 @@ packages: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} - string.prototype.trim@1.2.9: + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + + string.prototype.trim@1.2.9: resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} engines: {node: '>= 0.4'} @@ -1436,6 +1885,13 @@ packages: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + + strnum@1.1.2: + resolution: {integrity: sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA==} + styled-components@6.1.13: resolution: {integrity: sha512-M0+N2xSnAtwcVAQeFEsGWFFxXDftHUD7XrKla06QbpUMmbmtFBMMTcKWvFXtWxuD5qQkB8iU5gk6QASlx2ZRMw==} engines: {node: '>= 16'} @@ -1446,6 +1902,10 @@ packages: stylis@4.3.2: resolution: {integrity: sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==} + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -1469,9 +1929,20 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + touch@3.1.1: + resolution: {integrity: sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==} + hasBin: true + tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + ts-algebra@1.2.2: + resolution: {integrity: sha512-kloPhf1hq3JbCPOTYoOWDKxebWjNb2o/LKnNfkWhxVVisFFmMJPPdJeGoGmM+iRLyoXAR61e08Pb+vUXINg8aA==} + tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} @@ -1481,6 +1952,10 @@ packages: tslib@2.7.0: resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + type-is@2.0.1: + resolution: {integrity: sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==} + engines: {node: '>= 0.6'} + typed-array-buffer@1.0.2: resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} engines: {node: '>= 0.4'} @@ -1505,17 +1980,27 @@ packages: unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + undefsafe@2.0.5: + resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==} + undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} - undici@6.19.8: - resolution: {integrity: sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==} + undici@6.21.3: + resolution: {integrity: sha512-gBLkYIlEnSp8pFbT64yFgGE6UIB9tAkhukC23PmMDCe5Nd+cRqKxSjw5y54MK2AZMgZfJWMaNE4nYUHgi1XEOw==} engines: {node: '>=18.17'} universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + uri-js-replace@1.0.1: + resolution: {integrity: sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==} + uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -1540,6 +2025,10 @@ packages: validate-npm-package-name@3.0.0: resolution: {integrity: sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==} + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + web-streams-polyfill@3.3.3: resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} engines: {node: '>= 8'} @@ -1547,14 +2036,6 @@ packages: webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - whatwg-encoding@3.1.1: - resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} - engines: {node: '>=18'} - - whatwg-mimetype@4.0.0: - resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} - engines: {node: '>=18'} - whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} @@ -1568,6 +2049,11 @@ packages: resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} engines: {node: '>= 0.4'} + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} @@ -1579,6 +2065,10 @@ packages: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -1594,6 +2084,10 @@ packages: utf-8-validate: optional: true + wsl-utils@0.1.0: + resolution: {integrity: sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==} + engines: {node: '>=18'} + y18n@4.0.3: resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} @@ -1611,6 +2105,11 @@ packages: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} + yaml@2.8.1: + resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==} + engines: {node: '>= 14.6'} + hasBin: true + yargs-parser@18.1.3: resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} engines: {node: '>=6'} @@ -1671,20 +2170,17 @@ snapshots: dependencies: '@types/json-schema': 7.0.15 - '@babel/runtime@7.25.6': + '@babel/code-frame@7.27.1': dependencies: - regenerator-runtime: 0.14.1 + '@babel/helper-validator-identifier': 7.27.1 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/helper-validator-identifier@7.27.1': {} - '@cfaester/enzyme-adapter-react-18@0.8.0(enzyme@3.11.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@babel/runtime@7.25.6': dependencies: - enzyme: 3.11.0 - enzyme-shallow-equal: 1.0.7 - function.prototype.name: 1.1.6 - has: 1.0.4 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-is: 18.3.1 - react-shallow-renderer: 16.15.0(react@18.3.1) + regenerator-runtime: 0.14.1 '@emotion/is-prop-valid@1.2.2': dependencies: @@ -1696,16 +2192,49 @@ snapshots: '@exodus/schemasafe@1.3.0': {} + '@faker-js/faker@7.6.0': {} + + '@humanwhocodes/momoa@2.0.4': {} + + '@isaacs/balanced-match@4.0.1': {} + + '@isaacs/brace-expansion@5.0.0': + dependencies: + '@isaacs/balanced-match': 4.0.1 + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + + '@jest/schemas@29.6.3': + dependencies: + '@sinclair/typebox': 0.27.8 + '@jsdevtools/ono@7.1.3': {} + '@jsep-plugin/assignment@1.3.0(jsep@1.4.0)': + dependencies: + jsep: 1.4.0 + '@jsep-plugin/regex@1.0.3(jsep@1.3.9)': dependencies: jsep: 1.3.9 + '@jsep-plugin/regex@1.0.4(jsep@1.4.0)': + dependencies: + jsep: 1.4.0 + '@jsep-plugin/ternary@1.1.3(jsep@1.3.9)': dependencies: jsep: 1.3.9 + '@noble/hashes@1.8.0': {} + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -1718,6 +2247,105 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 + '@opentelemetry/api-logs@0.202.0': + dependencies: + '@opentelemetry/api': 1.9.0 + + '@opentelemetry/api@1.9.0': {} + + '@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + + '@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/semantic-conventions': 1.34.0 + + '@opentelemetry/exporter-trace-otlp-http@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/otlp-exporter-base@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.202.0(@opentelemetry/api@1.9.0) + + '@opentelemetry/otlp-transformer@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.202.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + protobufjs: 7.5.3 + + '@opentelemetry/resources@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.34.0 + + '@opentelemetry/sdk-logs@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.202.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/sdk-metrics@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.34.0 + + '@opentelemetry/sdk-trace-node@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/context-async-hooks': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/semantic-conventions@1.34.0': {} + + '@protobufjs/aspromise@1.1.2': {} + + '@protobufjs/base64@1.1.2': {} + + '@protobufjs/codegen@2.0.4': {} + + '@protobufjs/eventemitter@1.1.0': {} + + '@protobufjs/fetch@1.1.0': + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/inquire': 1.1.0 + + '@protobufjs/float@1.0.2': {} + + '@protobufjs/inquire@1.1.0': {} + + '@protobufjs/path@1.1.2': {} + + '@protobufjs/pool@1.1.0': {} + + '@protobufjs/utf8@1.1.0': {} + '@quobix/vacuum@0.10.1': dependencies: node-fetch: 3.3.2 @@ -1730,37 +2358,64 @@ snapshots: require-from-string: 2.0.2 uri-js: 4.4.1 - '@redocly/cli@1.22.1(enzyme@3.11.0)': + '@redocly/ajv@8.11.2': dependencies: - '@redocly/openapi-core': 1.22.1 + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js-replace: 1.0.1 + + '@redocly/ajv@8.11.3': + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js-replace: 1.0.1 + + '@redocly/cli@2.0.2(@opentelemetry/api@1.9.0)(ajv@8.17.1)(core-js@3.38.1)': + dependencies: + '@opentelemetry/exporter-trace-otlp-http': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-node': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.34.0 + '@redocly/openapi-core': 2.0.2(ajv@8.17.1) + '@redocly/respect-core': 2.0.2(ajv@8.17.1) abort-controller: 3.0.0 chokidar: 3.6.0 colorette: 1.4.0 - core-js: 3.38.1 - form-data: 4.0.0 - get-port-please: 3.1.2 - glob: 7.2.3 + cookie: 0.7.2 + dotenv: 16.4.7 + form-data: 4.0.4 + glob: 11.0.3 handlebars: 4.7.8 + https-proxy-agent: 7.0.5 mobx: 6.13.1 - node-fetch: 2.7.0 pluralize: 8.0.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - redoc: 2.1.5(core-js@3.38.1)(enzyme@3.11.0)(mobx@6.13.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) + redoc: 2.5.0(core-js@3.38.1)(mobx@6.13.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) semver: 7.6.3 + set-cookie-parser: 2.7.1 simple-websocket: 9.1.0 styled-components: 6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + undici: 6.21.3 yargs: 17.0.1 transitivePeerDependencies: + - '@opentelemetry/api' + - ajv - bufferutil + - core-js - encoding - - enzyme - react-native - supports-color - utf-8-validate '@redocly/config@0.10.1': {} + '@redocly/config@0.26.4': + dependencies: + json-schema-to-ts: 2.7.2 + '@redocly/openapi-core@1.22.1': dependencies: '@redocly/ajv': 8.11.0 @@ -1778,6 +2433,37 @@ snapshots: - encoding - supports-color + '@redocly/openapi-core@2.0.2(ajv@8.17.1)': + dependencies: + '@redocly/ajv': 8.11.3 + '@redocly/config': 0.26.4 + ajv-formats: 2.1.1(ajv@8.17.1) + colorette: 1.4.0 + js-levenshtein: 1.1.6 + js-yaml: 4.1.0 + minimatch: 10.0.3 + pluralize: 8.0.0 + yaml-ast-parser: 0.0.43 + transitivePeerDependencies: + - ajv + + '@redocly/respect-core@2.0.2(ajv@8.17.1)': + dependencies: + '@faker-js/faker': 7.6.0 + '@noble/hashes': 1.8.0 + '@redocly/ajv': 8.11.2 + '@redocly/openapi-core': 2.0.2(ajv@8.17.1) + better-ajv-errors: 1.2.0(ajv@8.17.1) + colorette: 2.0.20 + jest-diff: 29.7.0 + jest-matcher-utils: 29.7.0 + json-pointer: 0.6.2 + jsonpath-plus: 10.3.0 + openapi-sampler: 1.6.1 + outdent: 0.8.0 + transitivePeerDependencies: + - ajv + '@rollup/plugin-commonjs@22.0.2(rollup@2.79.1)': dependencies: '@rollup/pluginutils': 3.1.0(rollup@2.79.1) @@ -1796,6 +2482,8 @@ snapshots: picomatch: 2.3.1 rollup: 2.79.1 + '@sinclair/typebox@0.27.8': {} + '@stoplight/better-ajv-errors@1.0.3(ajv@8.17.1)': dependencies: ajv: 8.17.1 @@ -2071,15 +2759,23 @@ snapshots: '@types/stylis@4.2.5': {} + '@types/trusted-types@2.0.7': + optional: true + '@types/urijs@1.19.25': {} abort-controller@3.0.0: dependencies: event-target-shim: 5.0.1 + accepts@2.0.0: + dependencies: + mime-types: 3.0.1 + negotiator: 1.0.0 + agent-base@7.1.1: dependencies: - debug: 4.3.7 + debug: 4.4.1(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -2104,10 +2800,16 @@ snapshots: ansi-regex@5.0.1: {} + ansi-regex@6.1.0: {} + ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 + ansi-styles@5.2.0: {} + + ansi-styles@6.2.1: {} + anymatch@3.1.3: dependencies: normalize-path: 3.0.0 @@ -2124,22 +2826,6 @@ snapshots: call-bind: 1.0.7 is-array-buffer: 3.0.4 - array.prototype.filter@1.0.4: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-array-method-boxes-properly: 1.0.0 - es-object-atoms: 1.0.0 - is-string: 1.0.7 - - array.prototype.flat@1.3.2: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 - arraybuffer.prototype.slice@1.0.3: dependencies: array-buffer-byte-length: 1.0.1 @@ -2169,9 +2855,30 @@ snapshots: balanced-match@1.0.2: {} + better-ajv-errors@1.2.0(ajv@8.17.1): + dependencies: + '@babel/code-frame': 7.27.1 + '@humanwhocodes/momoa': 2.0.4 + ajv: 8.17.1 + chalk: 4.1.2 + jsonpointer: 5.0.1 + leven: 3.1.0 + binary-extensions@2.3.0: {} - boolbase@1.0.0: {} + body-parser@2.2.0: + dependencies: + bytes: 3.1.2 + content-type: 1.0.5 + debug: 4.4.1(supports-color@5.5.0) + http-errors: 2.0.0 + iconv-lite: 0.6.3 + on-finished: 2.4.1 + qs: 6.14.0 + raw-body: 3.0.0 + type-is: 2.0.1 + transitivePeerDependencies: + - supports-color brace-expansion@1.1.11: dependencies: @@ -2188,6 +2895,17 @@ snapshots: builtins@1.0.3: {} + bundle-name@4.1.0: + dependencies: + run-applescript: 7.0.0 + + bytes@3.1.2: {} + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + call-bind@1.0.7: dependencies: es-define-property: 1.0.0 @@ -2196,6 +2914,11 @@ snapshots: get-intrinsic: 1.2.4 set-function-length: 1.2.2 + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + call-me-maybe@1.0.2: {} camelcase@5.3.1: {} @@ -2207,29 +2930,6 @@ snapshots: ansi-styles: 4.3.0 supports-color: 7.2.0 - cheerio-select@2.1.0: - dependencies: - boolbase: 1.0.0 - css-select: 5.1.0 - css-what: 6.1.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 - domutils: 3.1.0 - - cheerio@1.0.0: - dependencies: - cheerio-select: 2.1.0 - dom-serializer: 2.0.0 - domhandler: 5.0.3 - domutils: 3.1.0 - encoding-sniffer: 0.2.0 - htmlparser2: 9.1.0 - parse5: 7.1.2 - parse5-htmlparser2-tree-adapter: 7.0.0 - parse5-parser-stream: 7.1.2 - undici: 6.19.8 - whatwg-mimetype: 4.0.0 - chokidar@3.6.0: dependencies: anymatch: 3.1.3 @@ -2274,27 +2974,35 @@ snapshots: colorette@1.4.0: {} + colorette@2.0.20: {} + combined-stream@1.0.8: dependencies: delayed-stream: 1.0.0 - commander@2.20.3: {} - commondir@1.0.1: {} concat-map@0.0.1: {} - core-js@3.38.1: {} + content-disposition@1.0.0: + dependencies: + safe-buffer: 5.2.1 - css-color-keywords@1.0.0: {} + content-type@1.0.5: {} + + cookie-signature@1.2.2: {} + + cookie@0.7.2: {} + + core-js@3.38.1: {} - css-select@5.1.0: + cross-spawn@7.0.6: dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 5.0.3 - domutils: 3.1.0 - nth-check: 2.1.1 + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + css-color-keywords@1.0.0: {} css-to-react-native@3.2.0: dependencies: @@ -2302,8 +3010,6 @@ snapshots: css-color-keywords: 1.0.0 postcss-value-parser: 4.2.0 - css-what@6.1.0: {} - csstype@3.1.3: {} data-uri-to-buffer@2.0.2: {} @@ -2328,20 +3034,31 @@ snapshots: es-errors: 1.3.0 is-data-view: 1.0.1 - debug@4.3.7: + debug@4.4.1(supports-color@5.5.0): dependencies: ms: 2.1.3 + optionalDependencies: + supports-color: 5.5.0 decamelize@1.2.0: {} decko@1.2.0: {} + default-browser-id@5.0.0: {} + + default-browser@5.2.1: + dependencies: + bundle-name: 4.1.0 + default-browser-id: 5.0.0 + define-data-property@1.1.4: dependencies: es-define-property: 1.0.0 es-errors: 1.3.0 gopd: 1.0.1 + define-lazy-prop@3.0.0: {} + define-properties@1.2.1: dependencies: define-data-property: 1.1.4 @@ -2350,68 +3067,33 @@ snapshots: delayed-stream@1.0.0: {} + depd@2.0.0: {} + dependency-graph@0.11.0: {} - discontinuous-range@1.0.0: {} + diff-sequences@29.6.3: {} - dom-serializer@2.0.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - entities: 4.5.0 + dompurify@3.2.6: + optionalDependencies: + '@types/trusted-types': 2.0.7 - domelementtype@2.3.0: {} + dotenv@16.4.7: {} - domhandler@5.0.3: + dunder-proto@1.0.1: dependencies: - domelementtype: 2.3.0 + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 - dompurify@3.1.6: {} + eastasianwidth@0.2.0: {} - domutils@3.1.0: - dependencies: - dom-serializer: 2.0.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 + ee-first@1.1.1: {} emoji-regex@8.0.0: {} - encoding-sniffer@0.2.0: - dependencies: - iconv-lite: 0.6.3 - whatwg-encoding: 3.1.1 - - entities@4.5.0: {} + emoji-regex@9.2.2: {} - enzyme-shallow-equal@1.0.7: - dependencies: - hasown: 2.0.2 - object-is: 1.1.6 - - enzyme@3.11.0: - dependencies: - array.prototype.flat: 1.3.2 - cheerio: 1.0.0 - enzyme-shallow-equal: 1.0.7 - function.prototype.name: 1.1.6 - has: 1.0.4 - html-element-map: 1.3.1 - is-boolean-object: 1.1.2 - is-callable: 1.2.7 - is-number-object: 1.0.7 - is-regex: 1.1.4 - is-string: 1.0.7 - is-subset: 0.1.1 - lodash.escape: 4.0.1 - lodash.isequal: 4.5.0 - object-inspect: 1.13.2 - object-is: 1.1.6 - object.assign: 4.1.5 - object.entries: 1.1.8 - object.values: 1.2.0 - raf: 3.4.1 - rst-selector-parser: 2.2.3 - string.prototype.trim: 1.2.9 + encodeurl@2.0.0: {} es-abstract@1.23.3: dependencies: @@ -2473,26 +3155,33 @@ snapshots: has-property-descriptors: 1.0.2 set-function-name: 2.0.2 - es-array-method-boxes-properly@1.0.0: {} - es-define-property@1.0.0: dependencies: get-intrinsic: 1.2.4 + es-define-property@1.0.1: {} + es-errors@1.3.0: {} es-object-atoms@1.0.0: dependencies: es-errors: 1.3.0 + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + es-set-tostringtag@2.0.3: dependencies: get-intrinsic: 1.2.4 has-tostringtag: 1.0.2 hasown: 2.0.2 - es-shim-unscopables@1.0.2: + es-set-tostringtag@2.1.0: dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 hasown: 2.0.2 es-to-primitive@1.2.1: @@ -2505,16 +3194,52 @@ snapshots: escalade@3.2.0: {} + escape-html@1.0.3: {} + esprima@4.0.1: {} estree-walker@1.0.1: {} estree-walker@2.0.2: {} + etag@1.8.1: {} + event-target-shim@5.0.1: {} eventemitter3@5.0.1: {} + express@5.1.0: + dependencies: + accepts: 2.0.0 + body-parser: 2.2.0 + content-disposition: 1.0.0 + content-type: 1.0.5 + cookie: 0.7.2 + cookie-signature: 1.2.2 + debug: 4.4.1(supports-color@5.5.0) + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 2.1.0 + fresh: 2.0.0 + http-errors: 2.0.0 + merge-descriptors: 2.0.0 + mime-types: 3.0.1 + on-finished: 2.4.1 + once: 1.4.0 + parseurl: 1.3.3 + proxy-addr: 2.0.7 + qs: 6.14.0 + range-parser: 1.2.1 + router: 2.2.0 + send: 1.2.0 + serve-static: 2.2.0 + statuses: 2.0.2 + type-is: 2.0.1 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + fast-deep-equal@3.1.3: {} fast-glob@3.2.12: @@ -2531,6 +3256,10 @@ snapshots: fast-uri@3.0.1: {} + fast-xml-parser@4.5.3: + dependencies: + strnum: 1.1.2 + fastq@1.17.1: dependencies: reusify: 1.0.4 @@ -2544,6 +3273,17 @@ snapshots: dependencies: to-regex-range: 5.0.1 + finalhandler@2.1.0: + dependencies: + debug: 4.4.1(supports-color@5.5.0) + encodeurl: 2.0.0 + escape-html: 1.0.3 + on-finished: 2.4.1 + parseurl: 1.3.3 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -2555,16 +3295,27 @@ snapshots: foreach@2.0.6: {} - form-data@4.0.0: + foreground-child@3.3.1: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + form-data@4.0.4: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.2 mime-types: 2.1.35 formdata-polyfill@4.0.10: dependencies: fetch-blob: 3.2.0 + forwarded@0.2.0: {} + + fresh@2.0.0: {} + fs-extra@10.1.0: dependencies: graceful-fs: 4.2.11 @@ -2601,7 +3352,23 @@ snapshots: has-symbols: 1.0.3 hasown: 2.0.2 - get-port-please@3.1.2: {} + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 get-source@2.0.12: dependencies: @@ -2618,6 +3385,15 @@ snapshots: dependencies: is-glob: 4.0.3 + glob@11.0.3: + dependencies: + foreground-child: 3.3.1 + jackspeak: 4.1.1 + minimatch: 10.0.3 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 2.0.0 + glob@7.2.3: dependencies: fs.realpath: 1.0.0 @@ -2636,6 +3412,8 @@ snapshots: dependencies: get-intrinsic: 1.2.4 + gopd@1.2.0: {} + graceful-fs@4.2.11: {} handlebars@4.7.8: @@ -2649,6 +3427,8 @@ snapshots: has-bigints@1.0.2: {} + has-flag@3.0.0: {} + has-flag@4.0.0: {} has-property-descriptors@1.0.2: @@ -2659,36 +3439,32 @@ snapshots: has-symbols@1.0.3: {} + has-symbols@1.1.0: {} + has-tostringtag@1.0.2: dependencies: has-symbols: 1.0.3 - has@1.0.4: {} - hasown@2.0.2: dependencies: function-bind: 1.1.2 hpagent@1.2.0: {} - html-element-map@1.3.1: + http-errors@2.0.0: dependencies: - array.prototype.filter: 1.0.4 - call-bind: 1.0.7 - - htmlparser2@9.1.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - domutils: 3.1.0 - entities: 4.5.0 + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.1 + toidentifier: 1.0.1 http2-client@1.3.5: {} https-proxy-agent@7.0.5: dependencies: agent-base: 7.1.1 - debug: 4.3.7 + debug: 4.4.1(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -2696,6 +3472,8 @@ snapshots: dependencies: safer-buffer: 2.1.2 + ignore-by-default@1.0.1: {} + immer@9.0.21: {} inflight@1.0.6: @@ -2711,6 +3489,8 @@ snapshots: hasown: 2.0.2 side-channel: 1.0.6 + ipaddr.js@1.9.1: {} + is-array-buffer@3.0.4: dependencies: call-bind: 1.0.7 @@ -2743,6 +3523,8 @@ snapshots: dependencies: has-tostringtag: 1.0.2 + is-docker@3.0.0: {} + is-extglob@2.1.1: {} is-fullwidth-code-point@3.0.0: {} @@ -2751,6 +3533,10 @@ snapshots: dependencies: is-extglob: 2.1.1 + is-inside-container@1.0.0: + dependencies: + is-docker: 3.0.0 + is-negative-zero@2.0.3: {} is-number-object@1.0.7: @@ -2759,6 +3545,8 @@ snapshots: is-number@7.0.0: {} + is-promise@4.0.0: {} + is-reference@1.2.1: dependencies: '@types/estree': 1.0.5 @@ -2776,8 +3564,6 @@ snapshots: dependencies: has-tostringtag: 1.0.2 - is-subset@0.1.1: {} - is-symbol@1.0.4: dependencies: has-symbols: 1.0.3 @@ -2790,8 +3576,34 @@ snapshots: dependencies: call-bind: 1.0.7 + is-wsl@3.1.0: + dependencies: + is-inside-container: 1.0.0 + isarray@2.0.5: {} + isexe@2.0.0: {} + + jackspeak@4.1.1: + dependencies: + '@isaacs/cliui': 8.0.2 + + jest-diff@29.7.0: + dependencies: + chalk: 4.1.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-get-type@29.6.3: {} + + jest-matcher-utils@29.7.0: + dependencies: + chalk: 4.1.2 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + js-levenshtein@1.1.6: {} js-tokens@4.0.0: {} @@ -2807,10 +3619,18 @@ snapshots: jsep@1.3.9: {} + jsep@1.4.0: {} + json-pointer@0.6.2: dependencies: foreach: 2.0.6 + json-schema-to-ts@2.7.2: + dependencies: + '@babel/runtime': 7.25.6 + '@types/json-schema': 7.0.15 + ts-algebra: 1.2.2 + json-schema-traverse@1.0.0: {} jsonc-parser@2.2.1: {} @@ -2821,6 +3641,12 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 + jsonpath-plus@10.3.0: + dependencies: + '@jsep-plugin/assignment': 1.3.0(jsep@1.4.0) + '@jsep-plugin/regex': 1.0.4(jsep@1.4.0) + jsep: 1.4.0 + jsonpath-plus@6.0.1: optional: true @@ -2834,20 +3660,20 @@ snapshots: dependencies: p-locate: 4.1.0 - lodash.escape@4.0.1: {} - - lodash.flattendeep@4.4.0: {} - lodash.isequal@4.5.0: {} lodash.topath@4.5.2: {} lodash@4.17.21: {} + long@5.3.2: {} + loose-envify@1.4.0: dependencies: js-tokens: 4.0.0 + lru-cache@11.1.0: {} + lunr@2.3.9: {} magic-string@0.25.9: @@ -2858,6 +3684,12 @@ snapshots: marked@4.3.0: {} + math-intrinsics@1.1.0: {} + + media-typer@1.1.0: {} + + merge-descriptors@2.0.0: {} + merge2@1.4.1: {} micromatch@4.0.8: @@ -2867,10 +3699,20 @@ snapshots: mime-db@1.52.0: {} + mime-db@1.54.0: {} + mime-types@2.1.35: dependencies: mime-db: 1.52.0 + mime-types@3.0.1: + dependencies: + mime-db: 1.54.0 + + minimatch@10.0.3: + dependencies: + '@isaacs/brace-expansion': 5.0.0 + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 @@ -2887,6 +3729,8 @@ snapshots: minipass@5.0.0: {} + minipass@7.1.2: {} + minizlib@2.1.2: dependencies: minipass: 3.3.6 @@ -2912,18 +3756,11 @@ snapshots: mobx@6.13.1: {} - moo@0.5.2: {} - ms@2.1.3: {} nanoid@3.3.7: {} - nearley@2.20.1: - dependencies: - commander: 2.20.3 - moo: 0.5.2 - railroad-diagrams: 1.0.0 - randexp: 0.4.6 + negotiator@1.0.0: {} neo-async@2.6.2: {} @@ -2962,11 +3799,20 @@ snapshots: '@types/sarif': 2.1.7 fs-extra: 10.1.0 - normalize-path@3.0.0: {} - - nth-check@2.1.1: + nodemon@3.1.10: dependencies: - boolbase: 1.0.0 + chokidar: 3.6.0 + debug: 4.4.1(supports-color@5.5.0) + ignore-by-default: 1.0.1 + minimatch: 3.1.2 + pstree.remy: 1.1.8 + semver: 7.6.3 + simple-update-notifier: 2.0.0 + supports-color: 5.5.0 + touch: 3.1.1 + undefsafe: 2.0.5 + + normalize-path@3.0.0: {} oas-kit-common@1.0.8: dependencies: @@ -3003,10 +3849,7 @@ snapshots: object-inspect@1.13.2: {} - object-is@1.1.6: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 + object-inspect@1.13.4: {} object-keys@1.1.1: {} @@ -3017,29 +3860,36 @@ snapshots: has-symbols: 1.0.3 object-keys: 1.1.1 - object.entries@1.1.8: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - - object.values@1.2.0: + on-finished@2.4.1: dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 + ee-first: 1.1.1 once@1.4.0: dependencies: wrappy: 1.0.2 + open@10.2.0: + dependencies: + default-browser: 5.2.1 + define-lazy-prop: 3.0.0 + is-inside-container: 1.0.0 + wsl-utils: 0.1.0 + openapi-sampler@1.5.1: dependencies: '@types/json-schema': 7.0.15 json-pointer: 0.6.2 + openapi-sampler@1.6.1: + dependencies: + '@types/json-schema': 7.0.15 + fast-xml-parser: 4.5.3 + json-pointer: 0.6.2 + openapi-types@12.1.3: {} + outdent@0.8.0: {} + p-limit@2.3.0: dependencies: p-try: 2.2.0 @@ -3050,18 +3900,9 @@ snapshots: p-try@2.2.0: {} - parse5-htmlparser2-tree-adapter@7.0.0: - dependencies: - domhandler: 5.0.3 - parse5: 7.1.2 + package-json-from-dist@1.0.1: {} - parse5-parser-stream@7.1.2: - dependencies: - parse5: 7.1.2 - - parse5@7.1.2: - dependencies: - entities: 4.5.0 + parseurl@1.3.3: {} path-browserify@1.0.1: {} @@ -3069,14 +3910,23 @@ snapshots: path-is-absolute@1.0.1: {} + path-key@3.1.1: {} + path-parse@1.0.7: {} - perfect-scrollbar@1.5.5: {} + path-scurry@2.0.0: + dependencies: + lru-cache: 11.1.0 + minipass: 7.1.2 - performance-now@2.1.0: {} + path-to-regexp@8.2.0: {} + + perfect-scrollbar@1.5.5: {} picocolors@1.1.0: {} + picocolors@1.1.1: {} + picomatch@2.3.1: {} pluralize@8.0.0: {} @@ -3097,6 +3947,12 @@ snapshots: picocolors: 1.1.0 source-map-js: 1.2.0 + pretty-format@29.7.0: + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.3.1 + printable-characters@1.0.42: {} prismjs@1.29.0: {} @@ -3107,25 +3963,49 @@ snapshots: object-assign: 4.1.1 react-is: 16.13.1 - punycode@2.3.1: {} - - queue-microtask@1.2.3: {} + protobufjs@7.5.3: + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/base64': 1.1.2 + '@protobufjs/codegen': 2.0.4 + '@protobufjs/eventemitter': 1.1.0 + '@protobufjs/fetch': 1.1.0 + '@protobufjs/float': 1.0.2 + '@protobufjs/inquire': 1.1.0 + '@protobufjs/path': 1.1.2 + '@protobufjs/pool': 1.1.0 + '@protobufjs/utf8': 1.1.0 + '@types/node': 22.5.4 + long: 5.3.2 - raf@3.4.1: + proxy-addr@2.0.7: dependencies: - performance-now: 2.1.0 + forwarded: 0.2.0 + ipaddr.js: 1.9.1 + + pstree.remy@1.1.8: {} - railroad-diagrams@1.0.0: {} + punycode@2.3.1: {} - randexp@0.4.6: + qs@6.14.0: dependencies: - discontinuous-range: 1.0.0 - ret: 0.1.15 + side-channel: 1.1.0 + + queue-microtask@1.2.3: {} randombytes@2.1.0: dependencies: safe-buffer: 5.2.1 + range-parser@1.2.1: {} + + raw-body@3.0.0: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.0 + iconv-lite: 0.6.3 + unpipe: 1.0.0 + react-dom@18.3.1(react@18.3.1): dependencies: loose-envify: 1.4.0 @@ -3136,12 +4016,6 @@ snapshots: react-is@18.3.1: {} - react-shallow-renderer@16.15.0(react@18.3.1): - dependencies: - object-assign: 4.1.1 - react: 18.3.1 - react-is: 18.3.1 - react-tabs@6.0.2(react@18.3.1): dependencies: clsx: 2.1.1 @@ -3162,14 +4036,13 @@ snapshots: dependencies: picomatch: 2.3.1 - redoc@2.1.5(core-js@3.38.1)(enzyme@3.11.0)(mobx@6.13.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): + redoc@2.5.0(core-js@3.38.1)(mobx@6.13.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): dependencies: - '@cfaester/enzyme-adapter-react-18': 0.8.0(enzyme@3.11.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@redocly/openapi-core': 1.22.1 classnames: 2.5.1 core-js: 3.38.1 decko: 1.2.0 - dompurify: 3.1.6 + dompurify: 3.2.6 eventemitter3: 5.0.1 json-pointer: 0.6.2 lunr: 2.3.9 @@ -3193,7 +4066,6 @@ snapshots: url-template: 2.0.8 transitivePeerDependencies: - encoding - - enzyme - react-native - supports-color @@ -3222,18 +4094,23 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - ret@0.1.15: {} - reusify@1.0.4: {} rollup@2.79.1: optionalDependencies: fsevents: 2.3.3 - rst-selector-parser@2.2.3: + router@2.2.0: dependencies: - lodash.flattendeep: 4.4.0 - nearley: 2.20.1 + debug: 4.4.1(supports-color@5.5.0) + depd: 2.0.0 + is-promise: 4.0.0 + parseurl: 1.3.3 + path-to-regexp: 8.2.0 + transitivePeerDependencies: + - supports-color + + run-applescript@7.0.0: {} run-parallel@1.2.0: dependencies: @@ -3264,8 +4141,35 @@ snapshots: semver@7.6.3: {} + send@1.2.0: + dependencies: + debug: 4.4.1(supports-color@5.5.0) + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 2.0.0 + http-errors: 2.0.0 + mime-types: 3.0.1 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + + serve-static@2.2.0: + dependencies: + encodeurl: 2.0.0 + escape-html: 1.0.3 + parseurl: 1.3.3 + send: 1.2.0 + transitivePeerDependencies: + - supports-color + set-blocking@2.0.0: {} + set-cookie-parser@2.7.1: {} + set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 @@ -3282,8 +4186,16 @@ snapshots: functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 + setprototypeof@1.2.0: {} + shallowequal@1.1.0: {} + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + should-equal@2.0.0: dependencies: should-type: 1.4.0 @@ -3310,6 +4222,26 @@ snapshots: should-type-adaptors: 1.1.0 should-util: 1.0.1 + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + side-channel@1.0.6: dependencies: call-bind: 1.0.7 @@ -3317,13 +4249,27 @@ snapshots: get-intrinsic: 1.2.4 object-inspect: 1.13.2 + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + signal-exit@4.1.0: {} + simple-eval@1.0.0: dependencies: jsep: 1.3.9 + simple-update-notifier@2.0.0: + dependencies: + semver: 7.6.3 + simple-websocket@9.1.0: dependencies: - debug: 4.3.7 + debug: 4.4.1(supports-color@5.5.0) queue-microtask: 1.2.3 randombytes: 2.1.0 readable-stream: 3.6.2 @@ -3348,6 +4294,10 @@ snapshots: as-table: 1.0.55 get-source: 2.0.12 + statuses@2.0.1: {} + + statuses@2.0.2: {} + stickyfill@1.1.1: {} string-width@4.2.3: @@ -3356,6 +4306,12 @@ snapshots: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + string.prototype.trim@1.2.9: dependencies: call-bind: 1.0.7 @@ -3383,6 +4339,12 @@ snapshots: dependencies: ansi-regex: 5.0.1 + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.1.0 + + strnum@1.1.2: {} + styled-components@6.1.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@emotion/is-prop-valid': 1.2.2 @@ -3399,6 +4361,10 @@ snapshots: stylis@4.3.2: {} + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + supports-color@7.2.0: dependencies: has-flag: 4.0.0 @@ -3436,14 +4402,26 @@ snapshots: dependencies: is-number: 7.0.0 + toidentifier@1.0.1: {} + + touch@3.1.1: {} + tr46@0.0.3: {} + ts-algebra@1.2.2: {} + tslib@1.14.1: {} tslib@2.6.2: {} tslib@2.7.0: {} + type-is@2.0.1: + dependencies: + content-type: 1.0.5 + media-typer: 1.1.0 + mime-types: 3.0.1 + typed-array-buffer@1.0.2: dependencies: call-bind: 1.0.7 @@ -3486,12 +4464,18 @@ snapshots: has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 + undefsafe@2.0.5: {} + undici-types@6.19.8: {} - undici@6.19.8: {} + undici@6.21.3: {} universalify@2.0.1: {} + unpipe@1.0.0: {} + + uri-js-replace@1.0.1: {} + uri-js@4.4.1: dependencies: punycode: 2.3.1 @@ -3512,16 +4496,12 @@ snapshots: dependencies: builtins: 1.0.3 + vary@1.1.2: {} + web-streams-polyfill@3.3.3: {} webidl-conversions@3.0.1: {} - whatwg-encoding@3.1.1: - dependencies: - iconv-lite: 0.6.3 - - whatwg-mimetype@4.0.0: {} - whatwg-url@5.0.0: dependencies: tr46: 0.0.3 @@ -3545,6 +4525,10 @@ snapshots: gopd: 1.0.1 has-tostringtag: 1.0.2 + which@2.0.2: + dependencies: + isexe: 2.0.0 + wordwrap@1.0.0: {} wrap-ansi@6.2.0: @@ -3559,10 +4543,20 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + wrappy@1.0.2: {} ws@7.5.10: {} + wsl-utils@0.1.0: + dependencies: + is-wsl: 3.1.0 + y18n@4.0.3: {} y18n@5.0.8: {} @@ -3573,6 +4567,8 @@ snapshots: yaml@1.10.2: {} + yaml@2.8.1: {} + yargs-parser@18.1.3: dependencies: camelcase: 5.3.1 diff --git a/base/paystack.yaml b/src/assets/base/paystack.yaml similarity index 99% rename from base/paystack.yaml rename to src/assets/base/paystack.yaml index 824bd4a..b8ba3b7 100644 --- a/base/paystack.yaml +++ b/src/assets/base/paystack.yaml @@ -17221,4 +17221,4 @@ components: content: application/json: schema: - $ref: "#/components/schemas/DirectDebitActivationChargeResponse" + $ref: "#/components/schemas/DirectDebitActivationChargeResponse" \ No newline at end of file diff --git a/main/examples/customer/create.yaml b/src/assets/main/examples/customer/create.yaml similarity index 100% rename from main/examples/customer/create.yaml rename to src/assets/main/examples/customer/create.yaml diff --git a/main/examples/customer/validate.yaml b/src/assets/main/examples/customer/validate.yaml similarity index 100% rename from main/examples/customer/validate.yaml rename to src/assets/main/examples/customer/validate.yaml diff --git a/main/examples/dedicated-virtual-account/create.yaml b/src/assets/main/examples/dedicated-virtual-account/create.yaml similarity index 100% rename from main/examples/dedicated-virtual-account/create.yaml rename to src/assets/main/examples/dedicated-virtual-account/create.yaml diff --git a/main/examples/plan/create.yaml b/src/assets/main/examples/plan/create.yaml similarity index 100% rename from main/examples/plan/create.yaml rename to src/assets/main/examples/plan/create.yaml diff --git a/main/examples/refund/create.yaml b/src/assets/main/examples/refund/create.yaml similarity index 100% rename from main/examples/refund/create.yaml rename to src/assets/main/examples/refund/create.yaml diff --git a/main/examples/split/create.yaml b/src/assets/main/examples/split/create.yaml similarity index 100% rename from main/examples/split/create.yaml rename to src/assets/main/examples/split/create.yaml diff --git a/main/examples/subaccount/create.yaml b/src/assets/main/examples/subaccount/create.yaml similarity index 100% rename from main/examples/subaccount/create.yaml rename to src/assets/main/examples/subaccount/create.yaml diff --git a/main/examples/subscription/create.yaml b/src/assets/main/examples/subscription/create.yaml similarity index 100% rename from main/examples/subscription/create.yaml rename to src/assets/main/examples/subscription/create.yaml diff --git a/main/examples/transaction/VerifyTransaction.yaml b/src/assets/main/examples/transaction/VerifyTransaction.yaml similarity index 100% rename from main/examples/transaction/VerifyTransaction.yaml rename to src/assets/main/examples/transaction/VerifyTransaction.yaml diff --git a/main/examples/transaction/charge-authorization.yaml b/src/assets/main/examples/transaction/charge-authorization.yaml similarity index 100% rename from main/examples/transaction/charge-authorization.yaml rename to src/assets/main/examples/transaction/charge-authorization.yaml diff --git a/main/examples/transaction/initialize.yaml b/src/assets/main/examples/transaction/initialize.yaml similarity index 100% rename from main/examples/transaction/initialize.yaml rename to src/assets/main/examples/transaction/initialize.yaml diff --git a/main/examples/transaction/partial-debit.yaml b/src/assets/main/examples/transaction/partial-debit.yaml similarity index 100% rename from main/examples/transaction/partial-debit.yaml rename to src/assets/main/examples/transaction/partial-debit.yaml diff --git a/main/examples/transfer-recipient/create.yaml b/src/assets/main/examples/transfer-recipient/create.yaml similarity index 100% rename from main/examples/transfer-recipient/create.yaml rename to src/assets/main/examples/transfer-recipient/create.yaml diff --git a/main/examples/transfer/bulk.yaml b/src/assets/main/examples/transfer/bulk.yaml similarity index 100% rename from main/examples/transfer/bulk.yaml rename to src/assets/main/examples/transfer/bulk.yaml diff --git a/main/examples/transfer/initiate.yaml b/src/assets/main/examples/transfer/initiate.yaml similarity index 100% rename from main/examples/transfer/initiate.yaml rename to src/assets/main/examples/transfer/initiate.yaml diff --git a/main/examples/transfer/list.yaml b/src/assets/main/examples/transfer/list.yaml similarity index 100% rename from main/examples/transfer/list.yaml rename to src/assets/main/examples/transfer/list.yaml diff --git a/main/examples/verification/resolve-bank.yaml b/src/assets/main/examples/verification/resolve-bank.yaml similarity index 100% rename from main/examples/verification/resolve-bank.yaml rename to src/assets/main/examples/verification/resolve-bank.yaml diff --git a/main/paystack.yaml b/src/assets/main/paystack.yaml similarity index 100% rename from main/paystack.yaml rename to src/assets/main/paystack.yaml diff --git a/main/resources/balance/fetch.yaml b/src/assets/main/resources/balance/fetch.yaml similarity index 100% rename from main/resources/balance/fetch.yaml rename to src/assets/main/resources/balance/fetch.yaml diff --git a/main/resources/balance/ledger.yaml b/src/assets/main/resources/balance/ledger.yaml similarity index 100% rename from main/resources/balance/ledger.yaml rename to src/assets/main/resources/balance/ledger.yaml diff --git a/main/resources/bulk-charge/charges.yaml b/src/assets/main/resources/bulk-charge/charges.yaml similarity index 100% rename from main/resources/bulk-charge/charges.yaml rename to src/assets/main/resources/bulk-charge/charges.yaml diff --git a/main/resources/bulk-charge/fetch.yaml b/src/assets/main/resources/bulk-charge/fetch.yaml similarity index 100% rename from main/resources/bulk-charge/fetch.yaml rename to src/assets/main/resources/bulk-charge/fetch.yaml diff --git a/main/resources/bulk-charge/index.yaml b/src/assets/main/resources/bulk-charge/index.yaml similarity index 100% rename from main/resources/bulk-charge/index.yaml rename to src/assets/main/resources/bulk-charge/index.yaml diff --git a/main/resources/bulk-charge/pause.yaml b/src/assets/main/resources/bulk-charge/pause.yaml similarity index 100% rename from main/resources/bulk-charge/pause.yaml rename to src/assets/main/resources/bulk-charge/pause.yaml diff --git a/main/resources/bulk-charge/resume-charge.yaml b/src/assets/main/resources/bulk-charge/resume-charge.yaml similarity index 100% rename from main/resources/bulk-charge/resume-charge.yaml rename to src/assets/main/resources/bulk-charge/resume-charge.yaml diff --git a/main/resources/charge/create.yaml b/src/assets/main/resources/charge/create.yaml similarity index 100% rename from main/resources/charge/create.yaml rename to src/assets/main/resources/charge/create.yaml diff --git a/main/resources/charge/reference.yaml b/src/assets/main/resources/charge/reference.yaml similarity index 100% rename from main/resources/charge/reference.yaml rename to src/assets/main/resources/charge/reference.yaml diff --git a/main/resources/charge/submit-address.yaml b/src/assets/main/resources/charge/submit-address.yaml similarity index 100% rename from main/resources/charge/submit-address.yaml rename to src/assets/main/resources/charge/submit-address.yaml diff --git a/main/resources/charge/submit-birthday.yaml b/src/assets/main/resources/charge/submit-birthday.yaml similarity index 100% rename from main/resources/charge/submit-birthday.yaml rename to src/assets/main/resources/charge/submit-birthday.yaml diff --git a/main/resources/charge/submit-otp.yaml b/src/assets/main/resources/charge/submit-otp.yaml similarity index 100% rename from main/resources/charge/submit-otp.yaml rename to src/assets/main/resources/charge/submit-otp.yaml diff --git a/main/resources/charge/submit-phone.yaml b/src/assets/main/resources/charge/submit-phone.yaml similarity index 100% rename from main/resources/charge/submit-phone.yaml rename to src/assets/main/resources/charge/submit-phone.yaml diff --git a/main/resources/charge/submit-pin.yaml b/src/assets/main/resources/charge/submit-pin.yaml similarity index 100% rename from main/resources/charge/submit-pin.yaml rename to src/assets/main/resources/charge/submit-pin.yaml diff --git a/main/resources/customer/authorization.yaml b/src/assets/main/resources/customer/authorization.yaml similarity index 100% rename from main/resources/customer/authorization.yaml rename to src/assets/main/resources/customer/authorization.yaml diff --git a/main/resources/customer/create.yaml b/src/assets/main/resources/customer/create.yaml similarity index 100% rename from main/resources/customer/create.yaml rename to src/assets/main/resources/customer/create.yaml diff --git a/main/resources/customer/customer-code.yaml b/src/assets/main/resources/customer/customer-code.yaml similarity index 100% rename from main/resources/customer/customer-code.yaml rename to src/assets/main/resources/customer/customer-code.yaml diff --git a/main/resources/customer/identification.yaml b/src/assets/main/resources/customer/identification.yaml similarity index 100% rename from main/resources/customer/identification.yaml rename to src/assets/main/resources/customer/identification.yaml diff --git a/main/resources/customer/index.yaml b/src/assets/main/resources/customer/index.yaml similarity index 100% rename from main/resources/customer/index.yaml rename to src/assets/main/resources/customer/index.yaml diff --git a/main/resources/customer/list.yaml b/src/assets/main/resources/customer/list.yaml similarity index 100% rename from main/resources/customer/list.yaml rename to src/assets/main/resources/customer/list.yaml diff --git a/main/resources/customer/risk-action.yaml b/src/assets/main/resources/customer/risk-action.yaml similarity index 100% rename from main/resources/customer/risk-action.yaml rename to src/assets/main/resources/customer/risk-action.yaml diff --git a/main/resources/dedicated-virtual-account/account-id.yaml b/src/assets/main/resources/dedicated-virtual-account/account-id.yaml similarity index 100% rename from main/resources/dedicated-virtual-account/account-id.yaml rename to src/assets/main/resources/dedicated-virtual-account/account-id.yaml diff --git a/main/resources/dedicated-virtual-account/add-split.yaml b/src/assets/main/resources/dedicated-virtual-account/add-split.yaml similarity index 100% rename from main/resources/dedicated-virtual-account/add-split.yaml rename to src/assets/main/resources/dedicated-virtual-account/add-split.yaml diff --git a/main/resources/dedicated-virtual-account/create.yaml b/src/assets/main/resources/dedicated-virtual-account/create.yaml similarity index 100% rename from main/resources/dedicated-virtual-account/create.yaml rename to src/assets/main/resources/dedicated-virtual-account/create.yaml diff --git a/main/resources/dedicated-virtual-account/index.yaml b/src/assets/main/resources/dedicated-virtual-account/index.yaml similarity index 100% rename from main/resources/dedicated-virtual-account/index.yaml rename to src/assets/main/resources/dedicated-virtual-account/index.yaml diff --git a/main/resources/dedicated-virtual-account/list.yaml b/src/assets/main/resources/dedicated-virtual-account/list.yaml similarity index 100% rename from main/resources/dedicated-virtual-account/list.yaml rename to src/assets/main/resources/dedicated-virtual-account/list.yaml diff --git a/main/resources/dedicated-virtual-account/providers.yaml b/src/assets/main/resources/dedicated-virtual-account/providers.yaml similarity index 100% rename from main/resources/dedicated-virtual-account/providers.yaml rename to src/assets/main/resources/dedicated-virtual-account/providers.yaml diff --git a/main/resources/dispute/dispute-id.yaml b/src/assets/main/resources/dispute/dispute-id.yaml similarity index 100% rename from main/resources/dispute/dispute-id.yaml rename to src/assets/main/resources/dispute/dispute-id.yaml diff --git a/main/resources/dispute/evidence.yaml b/src/assets/main/resources/dispute/evidence.yaml similarity index 100% rename from main/resources/dispute/evidence.yaml rename to src/assets/main/resources/dispute/evidence.yaml diff --git a/main/resources/dispute/export.yaml b/src/assets/main/resources/dispute/export.yaml similarity index 100% rename from main/resources/dispute/export.yaml rename to src/assets/main/resources/dispute/export.yaml diff --git a/main/resources/dispute/list.yaml b/src/assets/main/resources/dispute/list.yaml similarity index 100% rename from main/resources/dispute/list.yaml rename to src/assets/main/resources/dispute/list.yaml diff --git a/main/resources/dispute/resolve.yaml b/src/assets/main/resources/dispute/resolve.yaml similarity index 100% rename from main/resources/dispute/resolve.yaml rename to src/assets/main/resources/dispute/resolve.yaml diff --git a/main/resources/dispute/transaction.yaml b/src/assets/main/resources/dispute/transaction.yaml similarity index 100% rename from main/resources/dispute/transaction.yaml rename to src/assets/main/resources/dispute/transaction.yaml diff --git a/main/resources/dispute/upload-url.yaml b/src/assets/main/resources/dispute/upload-url.yaml similarity index 100% rename from main/resources/dispute/upload-url.yaml rename to src/assets/main/resources/dispute/upload-url.yaml diff --git a/main/resources/integration/payment-session.yaml b/src/assets/main/resources/integration/payment-session.yaml similarity index 100% rename from main/resources/integration/payment-session.yaml rename to src/assets/main/resources/integration/payment-session.yaml diff --git a/main/resources/page/index.yaml b/src/assets/main/resources/page/index.yaml similarity index 100% rename from main/resources/page/index.yaml rename to src/assets/main/resources/page/index.yaml diff --git a/main/resources/page/page-id.yaml b/src/assets/main/resources/page/page-id.yaml similarity index 100% rename from main/resources/page/page-id.yaml rename to src/assets/main/resources/page/page-id.yaml diff --git a/main/resources/page/product.yaml b/src/assets/main/resources/page/product.yaml similarity index 100% rename from main/resources/page/product.yaml rename to src/assets/main/resources/page/product.yaml diff --git a/main/resources/page/slug-availability.yaml b/src/assets/main/resources/page/slug-availability.yaml similarity index 100% rename from main/resources/page/slug-availability.yaml rename to src/assets/main/resources/page/slug-availability.yaml diff --git a/main/resources/payment-request/archive.yaml b/src/assets/main/resources/payment-request/archive.yaml similarity index 100% rename from main/resources/payment-request/archive.yaml rename to src/assets/main/resources/payment-request/archive.yaml diff --git a/main/resources/payment-request/finalize.yaml b/src/assets/main/resources/payment-request/finalize.yaml similarity index 100% rename from main/resources/payment-request/finalize.yaml rename to src/assets/main/resources/payment-request/finalize.yaml diff --git a/main/resources/payment-request/index.yaml b/src/assets/main/resources/payment-request/index.yaml similarity index 100% rename from main/resources/payment-request/index.yaml rename to src/assets/main/resources/payment-request/index.yaml diff --git a/main/resources/payment-request/notify.yaml b/src/assets/main/resources/payment-request/notify.yaml similarity index 100% rename from main/resources/payment-request/notify.yaml rename to src/assets/main/resources/payment-request/notify.yaml diff --git a/main/resources/payment-request/payment-request-id.yaml b/src/assets/main/resources/payment-request/payment-request-id.yaml similarity index 100% rename from main/resources/payment-request/payment-request-id.yaml rename to src/assets/main/resources/payment-request/payment-request-id.yaml diff --git a/main/resources/payment-request/totals.yaml b/src/assets/main/resources/payment-request/totals.yaml similarity index 100% rename from main/resources/payment-request/totals.yaml rename to src/assets/main/resources/payment-request/totals.yaml diff --git a/main/resources/payment-request/verify.yaml b/src/assets/main/resources/payment-request/verify.yaml similarity index 100% rename from main/resources/payment-request/verify.yaml rename to src/assets/main/resources/payment-request/verify.yaml diff --git a/main/resources/plan/create.yaml b/src/assets/main/resources/plan/create.yaml similarity index 100% rename from main/resources/plan/create.yaml rename to src/assets/main/resources/plan/create.yaml diff --git a/main/resources/plan/index.yaml b/src/assets/main/resources/plan/index.yaml similarity index 100% rename from main/resources/plan/index.yaml rename to src/assets/main/resources/plan/index.yaml diff --git a/main/resources/plan/list.yaml b/src/assets/main/resources/plan/list.yaml similarity index 100% rename from main/resources/plan/list.yaml rename to src/assets/main/resources/plan/list.yaml diff --git a/main/resources/plan/plan-code.yaml b/src/assets/main/resources/plan/plan-code.yaml similarity index 100% rename from main/resources/plan/plan-code.yaml rename to src/assets/main/resources/plan/plan-code.yaml diff --git a/main/resources/product/index.yaml b/src/assets/main/resources/product/index.yaml similarity index 100% rename from main/resources/product/index.yaml rename to src/assets/main/resources/product/index.yaml diff --git a/main/resources/product/product-id.yaml b/src/assets/main/resources/product/product-id.yaml similarity index 100% rename from main/resources/product/product-id.yaml rename to src/assets/main/resources/product/product-id.yaml diff --git a/main/resources/refund/create.yaml b/src/assets/main/resources/refund/create.yaml similarity index 100% rename from main/resources/refund/create.yaml rename to src/assets/main/resources/refund/create.yaml diff --git a/main/resources/refund/fetch.yaml b/src/assets/main/resources/refund/fetch.yaml similarity index 100% rename from main/resources/refund/fetch.yaml rename to src/assets/main/resources/refund/fetch.yaml diff --git a/main/resources/refund/index.yaml b/src/assets/main/resources/refund/index.yaml similarity index 100% rename from main/resources/refund/index.yaml rename to src/assets/main/resources/refund/index.yaml diff --git a/main/resources/refund/list.yaml b/src/assets/main/resources/refund/list.yaml similarity index 100% rename from main/resources/refund/list.yaml rename to src/assets/main/resources/refund/list.yaml diff --git a/main/resources/settlement/fetch.yaml b/src/assets/main/resources/settlement/fetch.yaml similarity index 100% rename from main/resources/settlement/fetch.yaml rename to src/assets/main/resources/settlement/fetch.yaml diff --git a/main/resources/settlement/transaction.yaml b/src/assets/main/resources/settlement/transaction.yaml similarity index 100% rename from main/resources/settlement/transaction.yaml rename to src/assets/main/resources/settlement/transaction.yaml diff --git a/main/resources/split/add-subaccount.yaml b/src/assets/main/resources/split/add-subaccount.yaml similarity index 100% rename from main/resources/split/add-subaccount.yaml rename to src/assets/main/resources/split/add-subaccount.yaml diff --git a/main/resources/split/create.yaml b/src/assets/main/resources/split/create.yaml similarity index 100% rename from main/resources/split/create.yaml rename to src/assets/main/resources/split/create.yaml diff --git a/main/resources/split/index.yaml b/src/assets/main/resources/split/index.yaml similarity index 100% rename from main/resources/split/index.yaml rename to src/assets/main/resources/split/index.yaml diff --git a/main/resources/split/list.yaml b/src/assets/main/resources/split/list.yaml similarity index 100% rename from main/resources/split/list.yaml rename to src/assets/main/resources/split/list.yaml diff --git a/main/resources/split/remove-subaccount.yaml b/src/assets/main/resources/split/remove-subaccount.yaml similarity index 100% rename from main/resources/split/remove-subaccount.yaml rename to src/assets/main/resources/split/remove-subaccount.yaml diff --git a/main/resources/split/split-id.yaml b/src/assets/main/resources/split/split-id.yaml similarity index 100% rename from main/resources/split/split-id.yaml rename to src/assets/main/resources/split/split-id.yaml diff --git a/main/resources/subaccount/create.yaml b/src/assets/main/resources/subaccount/create.yaml similarity index 100% rename from main/resources/subaccount/create.yaml rename to src/assets/main/resources/subaccount/create.yaml diff --git a/main/resources/subaccount/index.yaml b/src/assets/main/resources/subaccount/index.yaml similarity index 100% rename from main/resources/subaccount/index.yaml rename to src/assets/main/resources/subaccount/index.yaml diff --git a/main/resources/subaccount/list.yaml b/src/assets/main/resources/subaccount/list.yaml similarity index 100% rename from main/resources/subaccount/list.yaml rename to src/assets/main/resources/subaccount/list.yaml diff --git a/main/resources/subaccount/subaccount-code.yaml b/src/assets/main/resources/subaccount/subaccount-code.yaml similarity index 100% rename from main/resources/subaccount/subaccount-code.yaml rename to src/assets/main/resources/subaccount/subaccount-code.yaml diff --git a/main/resources/subscription/create.yaml b/src/assets/main/resources/subscription/create.yaml similarity index 100% rename from main/resources/subscription/create.yaml rename to src/assets/main/resources/subscription/create.yaml diff --git a/main/resources/subscription/disable.yaml b/src/assets/main/resources/subscription/disable.yaml similarity index 100% rename from main/resources/subscription/disable.yaml rename to src/assets/main/resources/subscription/disable.yaml diff --git a/main/resources/subscription/enable.yaml b/src/assets/main/resources/subscription/enable.yaml similarity index 100% rename from main/resources/subscription/enable.yaml rename to src/assets/main/resources/subscription/enable.yaml diff --git a/main/resources/subscription/index.yaml b/src/assets/main/resources/subscription/index.yaml similarity index 100% rename from main/resources/subscription/index.yaml rename to src/assets/main/resources/subscription/index.yaml diff --git a/main/resources/subscription/list.yaml b/src/assets/main/resources/subscription/list.yaml similarity index 100% rename from main/resources/subscription/list.yaml rename to src/assets/main/resources/subscription/list.yaml diff --git a/main/resources/subscription/manage-email.yaml b/src/assets/main/resources/subscription/manage-email.yaml similarity index 100% rename from main/resources/subscription/manage-email.yaml rename to src/assets/main/resources/subscription/manage-email.yaml diff --git a/main/resources/subscription/manage-link.yaml b/src/assets/main/resources/subscription/manage-link.yaml similarity index 100% rename from main/resources/subscription/manage-link.yaml rename to src/assets/main/resources/subscription/manage-link.yaml diff --git a/main/resources/subscription/subscription-code.yaml b/src/assets/main/resources/subscription/subscription-code.yaml similarity index 100% rename from main/resources/subscription/subscription-code.yaml rename to src/assets/main/resources/subscription/subscription-code.yaml diff --git a/main/resources/transaction/charge-authorization.yaml b/src/assets/main/resources/transaction/charge-authorization.yaml similarity index 100% rename from main/resources/transaction/charge-authorization.yaml rename to src/assets/main/resources/transaction/charge-authorization.yaml diff --git a/main/resources/transaction/check-authorization.yaml b/src/assets/main/resources/transaction/check-authorization.yaml similarity index 100% rename from main/resources/transaction/check-authorization.yaml rename to src/assets/main/resources/transaction/check-authorization.yaml diff --git a/main/resources/transaction/event.yaml b/src/assets/main/resources/transaction/event.yaml similarity index 100% rename from main/resources/transaction/event.yaml rename to src/assets/main/resources/transaction/event.yaml diff --git a/main/resources/transaction/export.yaml b/src/assets/main/resources/transaction/export.yaml similarity index 100% rename from main/resources/transaction/export.yaml rename to src/assets/main/resources/transaction/export.yaml diff --git a/main/resources/transaction/fetch.yaml b/src/assets/main/resources/transaction/fetch.yaml similarity index 100% rename from main/resources/transaction/fetch.yaml rename to src/assets/main/resources/transaction/fetch.yaml diff --git a/main/resources/transaction/initialize.yaml b/src/assets/main/resources/transaction/initialize.yaml similarity index 100% rename from main/resources/transaction/initialize.yaml rename to src/assets/main/resources/transaction/initialize.yaml diff --git a/main/resources/transaction/list.yaml b/src/assets/main/resources/transaction/list.yaml similarity index 100% rename from main/resources/transaction/list.yaml rename to src/assets/main/resources/transaction/list.yaml diff --git a/main/resources/transaction/partial-debit.yaml b/src/assets/main/resources/transaction/partial-debit.yaml similarity index 100% rename from main/resources/transaction/partial-debit.yaml rename to src/assets/main/resources/transaction/partial-debit.yaml diff --git a/main/resources/transaction/session.yaml b/src/assets/main/resources/transaction/session.yaml similarity index 100% rename from main/resources/transaction/session.yaml rename to src/assets/main/resources/transaction/session.yaml diff --git a/main/resources/transaction/timeline.yaml b/src/assets/main/resources/transaction/timeline.yaml similarity index 100% rename from main/resources/transaction/timeline.yaml rename to src/assets/main/resources/transaction/timeline.yaml diff --git a/main/resources/transaction/totals.yaml b/src/assets/main/resources/transaction/totals.yaml similarity index 100% rename from main/resources/transaction/totals.yaml rename to src/assets/main/resources/transaction/totals.yaml diff --git a/main/resources/transaction/verify.yaml b/src/assets/main/resources/transaction/verify.yaml similarity index 100% rename from main/resources/transaction/verify.yaml rename to src/assets/main/resources/transaction/verify.yaml diff --git a/main/resources/transfer-recipient/bulk.yaml b/src/assets/main/resources/transfer-recipient/bulk.yaml similarity index 100% rename from main/resources/transfer-recipient/bulk.yaml rename to src/assets/main/resources/transfer-recipient/bulk.yaml diff --git a/main/resources/transfer-recipient/create.yaml b/src/assets/main/resources/transfer-recipient/create.yaml similarity index 100% rename from main/resources/transfer-recipient/create.yaml rename to src/assets/main/resources/transfer-recipient/create.yaml diff --git a/main/resources/transfer-recipient/index.yaml b/src/assets/main/resources/transfer-recipient/index.yaml similarity index 100% rename from main/resources/transfer-recipient/index.yaml rename to src/assets/main/resources/transfer-recipient/index.yaml diff --git a/main/resources/transfer-recipient/list.yaml b/src/assets/main/resources/transfer-recipient/list.yaml similarity index 100% rename from main/resources/transfer-recipient/list.yaml rename to src/assets/main/resources/transfer-recipient/list.yaml diff --git a/main/resources/transfer-recipient/transfer-recipient-code.yaml b/src/assets/main/resources/transfer-recipient/transfer-recipient-code.yaml similarity index 100% rename from main/resources/transfer-recipient/transfer-recipient-code.yaml rename to src/assets/main/resources/transfer-recipient/transfer-recipient-code.yaml diff --git a/main/resources/transfer/bulk.yaml b/src/assets/main/resources/transfer/bulk.yaml similarity index 100% rename from main/resources/transfer/bulk.yaml rename to src/assets/main/resources/transfer/bulk.yaml diff --git a/main/resources/transfer/disable-otp-finalize.yaml b/src/assets/main/resources/transfer/disable-otp-finalize.yaml similarity index 100% rename from main/resources/transfer/disable-otp-finalize.yaml rename to src/assets/main/resources/transfer/disable-otp-finalize.yaml diff --git a/main/resources/transfer/disable-otp.yaml b/src/assets/main/resources/transfer/disable-otp.yaml similarity index 100% rename from main/resources/transfer/disable-otp.yaml rename to src/assets/main/resources/transfer/disable-otp.yaml diff --git a/main/resources/transfer/enable-otp.yaml b/src/assets/main/resources/transfer/enable-otp.yaml similarity index 100% rename from main/resources/transfer/enable-otp.yaml rename to src/assets/main/resources/transfer/enable-otp.yaml diff --git a/main/resources/transfer/export.yaml b/src/assets/main/resources/transfer/export.yaml similarity index 100% rename from main/resources/transfer/export.yaml rename to src/assets/main/resources/transfer/export.yaml diff --git a/main/resources/transfer/finalize.yaml b/src/assets/main/resources/transfer/finalize.yaml similarity index 100% rename from main/resources/transfer/finalize.yaml rename to src/assets/main/resources/transfer/finalize.yaml diff --git a/main/resources/transfer/index.yaml b/src/assets/main/resources/transfer/index.yaml similarity index 100% rename from main/resources/transfer/index.yaml rename to src/assets/main/resources/transfer/index.yaml diff --git a/main/resources/transfer/initiate.yaml b/src/assets/main/resources/transfer/initiate.yaml similarity index 100% rename from main/resources/transfer/initiate.yaml rename to src/assets/main/resources/transfer/initiate.yaml diff --git a/main/resources/transfer/list.yaml b/src/assets/main/resources/transfer/list.yaml similarity index 100% rename from main/resources/transfer/list.yaml rename to src/assets/main/resources/transfer/list.yaml diff --git a/main/resources/transfer/resend-otp.yaml b/src/assets/main/resources/transfer/resend-otp.yaml similarity index 100% rename from main/resources/transfer/resend-otp.yaml rename to src/assets/main/resources/transfer/resend-otp.yaml diff --git a/main/resources/transfer/transfer-code.yaml b/src/assets/main/resources/transfer/transfer-code.yaml similarity index 100% rename from main/resources/transfer/transfer-code.yaml rename to src/assets/main/resources/transfer/transfer-code.yaml diff --git a/main/resources/transfer/verify.yaml b/src/assets/main/resources/transfer/verify.yaml similarity index 100% rename from main/resources/transfer/verify.yaml rename to src/assets/main/resources/transfer/verify.yaml diff --git a/main/resources/verification/bank.yaml b/src/assets/main/resources/verification/bank.yaml similarity index 100% rename from main/resources/verification/bank.yaml rename to src/assets/main/resources/verification/bank.yaml diff --git a/main/resources/verification/card-bin.yaml b/src/assets/main/resources/verification/card-bin.yaml similarity index 100% rename from main/resources/verification/card-bin.yaml rename to src/assets/main/resources/verification/card-bin.yaml diff --git a/main/resources/verification/country.yaml b/src/assets/main/resources/verification/country.yaml similarity index 100% rename from main/resources/verification/country.yaml rename to src/assets/main/resources/verification/country.yaml diff --git a/main/resources/verification/resolve-bank.yaml b/src/assets/main/resources/verification/resolve-bank.yaml similarity index 100% rename from main/resources/verification/resolve-bank.yaml rename to src/assets/main/resources/verification/resolve-bank.yaml diff --git a/main/resources/verification/state.yaml b/src/assets/main/resources/verification/state.yaml similarity index 100% rename from main/resources/verification/state.yaml rename to src/assets/main/resources/verification/state.yaml diff --git a/main/resources/verification/validate-bank.yaml b/src/assets/main/resources/verification/validate-bank.yaml similarity index 100% rename from main/resources/verification/validate-bank.yaml rename to src/assets/main/resources/verification/validate-bank.yaml diff --git a/main/responses/accepted.yaml b/src/assets/main/responses/accepted.yaml similarity index 100% rename from main/responses/accepted.yaml rename to src/assets/main/responses/accepted.yaml diff --git a/main/responses/bulk-response.yaml b/src/assets/main/responses/bulk-response.yaml similarity index 100% rename from main/responses/bulk-response.yaml rename to src/assets/main/responses/bulk-response.yaml diff --git a/main/responses/created.yaml b/src/assets/main/responses/created.yaml similarity index 100% rename from main/responses/created.yaml rename to src/assets/main/responses/created.yaml diff --git a/main/responses/customer/create.yaml b/src/assets/main/responses/customer/create.yaml similarity index 100% rename from main/responses/customer/create.yaml rename to src/assets/main/responses/customer/create.yaml diff --git a/main/responses/customer/validate.yaml b/src/assets/main/responses/customer/validate.yaml similarity index 100% rename from main/responses/customer/validate.yaml rename to src/assets/main/responses/customer/validate.yaml diff --git a/main/responses/dedicated-virtual-account/create.yaml b/src/assets/main/responses/dedicated-virtual-account/create.yaml similarity index 100% rename from main/responses/dedicated-virtual-account/create.yaml rename to src/assets/main/responses/dedicated-virtual-account/create.yaml diff --git a/main/responses/error.yaml b/src/assets/main/responses/error.yaml similarity index 100% rename from main/responses/error.yaml rename to src/assets/main/responses/error.yaml diff --git a/main/responses/ok.yaml b/src/assets/main/responses/ok.yaml similarity index 100% rename from main/responses/ok.yaml rename to src/assets/main/responses/ok.yaml diff --git a/main/responses/plan/create.yaml b/src/assets/main/responses/plan/create.yaml similarity index 100% rename from main/responses/plan/create.yaml rename to src/assets/main/responses/plan/create.yaml diff --git a/main/responses/refund/create.yaml b/src/assets/main/responses/refund/create.yaml similarity index 100% rename from main/responses/refund/create.yaml rename to src/assets/main/responses/refund/create.yaml diff --git a/main/responses/response.yaml b/src/assets/main/responses/response.yaml similarity index 100% rename from main/responses/response.yaml rename to src/assets/main/responses/response.yaml diff --git a/main/responses/split/create.yaml b/src/assets/main/responses/split/create.yaml similarity index 100% rename from main/responses/split/create.yaml rename to src/assets/main/responses/split/create.yaml diff --git a/main/responses/subaccount/create.yaml b/src/assets/main/responses/subaccount/create.yaml similarity index 100% rename from main/responses/subaccount/create.yaml rename to src/assets/main/responses/subaccount/create.yaml diff --git a/main/responses/subscription/create.yaml b/src/assets/main/responses/subscription/create.yaml similarity index 100% rename from main/responses/subscription/create.yaml rename to src/assets/main/responses/subscription/create.yaml diff --git a/main/responses/transaction/charge-authorization.yaml b/src/assets/main/responses/transaction/charge-authorization.yaml similarity index 100% rename from main/responses/transaction/charge-authorization.yaml rename to src/assets/main/responses/transaction/charge-authorization.yaml diff --git a/main/responses/transaction/initialize.yaml b/src/assets/main/responses/transaction/initialize.yaml similarity index 100% rename from main/responses/transaction/initialize.yaml rename to src/assets/main/responses/transaction/initialize.yaml diff --git a/main/responses/transaction/partial-debit.yaml b/src/assets/main/responses/transaction/partial-debit.yaml similarity index 100% rename from main/responses/transaction/partial-debit.yaml rename to src/assets/main/responses/transaction/partial-debit.yaml diff --git a/main/responses/transfer-recipient/create.yaml b/src/assets/main/responses/transfer-recipient/create.yaml similarity index 100% rename from main/responses/transfer-recipient/create.yaml rename to src/assets/main/responses/transfer-recipient/create.yaml diff --git a/main/responses/transfer/bulk.yaml b/src/assets/main/responses/transfer/bulk.yaml similarity index 100% rename from main/responses/transfer/bulk.yaml rename to src/assets/main/responses/transfer/bulk.yaml diff --git a/main/responses/transfer/list.yaml b/src/assets/main/responses/transfer/list.yaml similarity index 100% rename from main/responses/transfer/list.yaml rename to src/assets/main/responses/transfer/list.yaml diff --git a/main/responses/transfer/transfer.yaml b/src/assets/main/responses/transfer/transfer.yaml similarity index 100% rename from main/responses/transfer/transfer.yaml rename to src/assets/main/responses/transfer/transfer.yaml diff --git a/main/responses/unauthorized.yaml b/src/assets/main/responses/unauthorized.yaml similarity index 100% rename from main/responses/unauthorized.yaml rename to src/assets/main/responses/unauthorized.yaml diff --git a/main/responses/verification/resolve-bank.yaml b/src/assets/main/responses/verification/resolve-bank.yaml similarity index 100% rename from main/responses/verification/resolve-bank.yaml rename to src/assets/main/responses/verification/resolve-bank.yaml diff --git a/main/schemas/bulk-charge/Initiate.yaml b/src/assets/main/schemas/bulk-charge/Initiate.yaml similarity index 100% rename from main/schemas/bulk-charge/Initiate.yaml rename to src/assets/main/schemas/bulk-charge/Initiate.yaml diff --git a/main/schemas/channel/Bank.yaml b/src/assets/main/schemas/channel/Bank.yaml similarity index 100% rename from main/schemas/channel/Bank.yaml rename to src/assets/main/schemas/channel/Bank.yaml diff --git a/main/schemas/channel/EFT.yaml b/src/assets/main/schemas/channel/EFT.yaml similarity index 100% rename from main/schemas/channel/EFT.yaml rename to src/assets/main/schemas/channel/EFT.yaml diff --git a/main/schemas/channel/MobileMoney.yaml b/src/assets/main/schemas/channel/MobileMoney.yaml similarity index 100% rename from main/schemas/channel/MobileMoney.yaml rename to src/assets/main/schemas/channel/MobileMoney.yaml diff --git a/main/schemas/channel/USSD.yaml b/src/assets/main/schemas/channel/USSD.yaml similarity index 100% rename from main/schemas/channel/USSD.yaml rename to src/assets/main/schemas/channel/USSD.yaml diff --git a/main/schemas/charge/Charge.yaml b/src/assets/main/schemas/charge/Charge.yaml similarity index 100% rename from main/schemas/charge/Charge.yaml rename to src/assets/main/schemas/charge/Charge.yaml diff --git a/main/schemas/charge/Create.yaml b/src/assets/main/schemas/charge/Create.yaml similarity index 100% rename from main/schemas/charge/Create.yaml rename to src/assets/main/schemas/charge/Create.yaml diff --git a/main/schemas/charge/SubmitAddress.yaml b/src/assets/main/schemas/charge/SubmitAddress.yaml similarity index 100% rename from main/schemas/charge/SubmitAddress.yaml rename to src/assets/main/schemas/charge/SubmitAddress.yaml diff --git a/main/schemas/charge/SubmitBirthday.yaml b/src/assets/main/schemas/charge/SubmitBirthday.yaml similarity index 100% rename from main/schemas/charge/SubmitBirthday.yaml rename to src/assets/main/schemas/charge/SubmitBirthday.yaml diff --git a/main/schemas/charge/SubmitOTP.yaml b/src/assets/main/schemas/charge/SubmitOTP.yaml similarity index 100% rename from main/schemas/charge/SubmitOTP.yaml rename to src/assets/main/schemas/charge/SubmitOTP.yaml diff --git a/main/schemas/charge/SubmitPhone.yaml b/src/assets/main/schemas/charge/SubmitPhone.yaml similarity index 100% rename from main/schemas/charge/SubmitPhone.yaml rename to src/assets/main/schemas/charge/SubmitPhone.yaml diff --git a/main/schemas/charge/SubmitPin.yaml b/src/assets/main/schemas/charge/SubmitPin.yaml similarity index 100% rename from main/schemas/charge/SubmitPin.yaml rename to src/assets/main/schemas/charge/SubmitPin.yaml diff --git a/main/schemas/customer/Customer.yaml b/src/assets/main/schemas/customer/Customer.yaml similarity index 100% rename from main/schemas/customer/Customer.yaml rename to src/assets/main/schemas/customer/Customer.yaml diff --git a/main/schemas/customer/CustomerAuthorization.yaml b/src/assets/main/schemas/customer/CustomerAuthorization.yaml similarity index 100% rename from main/schemas/customer/CustomerAuthorization.yaml rename to src/assets/main/schemas/customer/CustomerAuthorization.yaml diff --git a/main/schemas/customer/CustomerBase.yaml b/src/assets/main/schemas/customer/CustomerBase.yaml similarity index 100% rename from main/schemas/customer/CustomerBase.yaml rename to src/assets/main/schemas/customer/CustomerBase.yaml diff --git a/main/schemas/customer/CustomerIdentification.yaml b/src/assets/main/schemas/customer/CustomerIdentification.yaml similarity index 100% rename from main/schemas/customer/CustomerIdentification.yaml rename to src/assets/main/schemas/customer/CustomerIdentification.yaml diff --git a/main/schemas/customer/CustomerRequired.yaml b/src/assets/main/schemas/customer/CustomerRequired.yaml similarity index 100% rename from main/schemas/customer/CustomerRequired.yaml rename to src/assets/main/schemas/customer/CustomerRequired.yaml diff --git a/main/schemas/customer/CustomerRiskAction.yaml b/src/assets/main/schemas/customer/CustomerRiskAction.yaml similarity index 100% rename from main/schemas/customer/CustomerRiskAction.yaml rename to src/assets/main/schemas/customer/CustomerRiskAction.yaml diff --git a/main/schemas/dedicated-virtual-account/Create.yaml b/src/assets/main/schemas/dedicated-virtual-account/Create.yaml similarity index 100% rename from main/schemas/dedicated-virtual-account/Create.yaml rename to src/assets/main/schemas/dedicated-virtual-account/Create.yaml diff --git a/main/schemas/dedicated-virtual-account/Split.yaml b/src/assets/main/schemas/dedicated-virtual-account/Split.yaml similarity index 100% rename from main/schemas/dedicated-virtual-account/Split.yaml rename to src/assets/main/schemas/dedicated-virtual-account/Split.yaml diff --git a/main/schemas/dispute/Evidence.yaml b/src/assets/main/schemas/dispute/Evidence.yaml similarity index 100% rename from main/schemas/dispute/Evidence.yaml rename to src/assets/main/schemas/dispute/Evidence.yaml diff --git a/main/schemas/dispute/Resolve.yaml b/src/assets/main/schemas/dispute/Resolve.yaml similarity index 100% rename from main/schemas/dispute/Resolve.yaml rename to src/assets/main/schemas/dispute/Resolve.yaml diff --git a/main/schemas/dispute/Update.yaml b/src/assets/main/schemas/dispute/Update.yaml similarity index 100% rename from main/schemas/dispute/Update.yaml rename to src/assets/main/schemas/dispute/Update.yaml diff --git a/main/schemas/integration/PaymentSession.yaml b/src/assets/main/schemas/integration/PaymentSession.yaml similarity index 100% rename from main/schemas/integration/PaymentSession.yaml rename to src/assets/main/schemas/integration/PaymentSession.yaml diff --git a/main/schemas/page/Create.yaml b/src/assets/main/schemas/page/Create.yaml similarity index 100% rename from main/schemas/page/Create.yaml rename to src/assets/main/schemas/page/Create.yaml diff --git a/main/schemas/page/Product.yaml b/src/assets/main/schemas/page/Product.yaml similarity index 100% rename from main/schemas/page/Product.yaml rename to src/assets/main/schemas/page/Product.yaml diff --git a/main/schemas/page/Update.yaml b/src/assets/main/schemas/page/Update.yaml similarity index 100% rename from main/schemas/page/Update.yaml rename to src/assets/main/schemas/page/Update.yaml diff --git a/main/schemas/payment-request/Create.yaml b/src/assets/main/schemas/payment-request/Create.yaml similarity index 100% rename from main/schemas/payment-request/Create.yaml rename to src/assets/main/schemas/payment-request/Create.yaml diff --git a/main/schemas/payment-request/Update.yaml b/src/assets/main/schemas/payment-request/Update.yaml similarity index 100% rename from main/schemas/payment-request/Update.yaml rename to src/assets/main/schemas/payment-request/Update.yaml diff --git a/main/schemas/plan/Create.yaml b/src/assets/main/schemas/plan/Create.yaml similarity index 100% rename from main/schemas/plan/Create.yaml rename to src/assets/main/schemas/plan/Create.yaml diff --git a/main/schemas/plan/Update.yaml b/src/assets/main/schemas/plan/Update.yaml similarity index 100% rename from main/schemas/plan/Update.yaml rename to src/assets/main/schemas/plan/Update.yaml diff --git a/main/schemas/product/Create.yaml b/src/assets/main/schemas/product/Create.yaml similarity index 100% rename from main/schemas/product/Create.yaml rename to src/assets/main/schemas/product/Create.yaml diff --git a/main/schemas/product/Update.yaml b/src/assets/main/schemas/product/Update.yaml similarity index 100% rename from main/schemas/product/Update.yaml rename to src/assets/main/schemas/product/Update.yaml diff --git a/main/schemas/refund/Create.yaml b/src/assets/main/schemas/refund/Create.yaml similarity index 100% rename from main/schemas/refund/Create.yaml rename to src/assets/main/schemas/refund/Create.yaml diff --git a/main/schemas/split/Create.yaml b/src/assets/main/schemas/split/Create.yaml similarity index 100% rename from main/schemas/split/Create.yaml rename to src/assets/main/schemas/split/Create.yaml diff --git a/main/schemas/split/Subaccount.yaml b/src/assets/main/schemas/split/Subaccount.yaml similarity index 100% rename from main/schemas/split/Subaccount.yaml rename to src/assets/main/schemas/split/Subaccount.yaml diff --git a/main/schemas/split/Update.yaml b/src/assets/main/schemas/split/Update.yaml similarity index 100% rename from main/schemas/split/Update.yaml rename to src/assets/main/schemas/split/Update.yaml diff --git a/main/schemas/subaccount/Create.yaml b/src/assets/main/schemas/subaccount/Create.yaml similarity index 100% rename from main/schemas/subaccount/Create.yaml rename to src/assets/main/schemas/subaccount/Create.yaml diff --git a/main/schemas/subaccount/Update.yaml b/src/assets/main/schemas/subaccount/Update.yaml similarity index 100% rename from main/schemas/subaccount/Update.yaml rename to src/assets/main/schemas/subaccount/Update.yaml diff --git a/main/schemas/subscription/Create.yaml b/src/assets/main/schemas/subscription/Create.yaml similarity index 100% rename from main/schemas/subscription/Create.yaml rename to src/assets/main/schemas/subscription/Create.yaml diff --git a/main/schemas/subscription/Toggle.yaml b/src/assets/main/schemas/subscription/Toggle.yaml similarity index 100% rename from main/schemas/subscription/Toggle.yaml rename to src/assets/main/schemas/subscription/Toggle.yaml diff --git a/main/schemas/transaction/ChargeAuthorization.yaml b/src/assets/main/schemas/transaction/ChargeAuthorization.yaml similarity index 100% rename from main/schemas/transaction/ChargeAuthorization.yaml rename to src/assets/main/schemas/transaction/ChargeAuthorization.yaml diff --git a/main/schemas/transaction/CheckAuthorization.yaml b/src/assets/main/schemas/transaction/CheckAuthorization.yaml similarity index 100% rename from main/schemas/transaction/CheckAuthorization.yaml rename to src/assets/main/schemas/transaction/CheckAuthorization.yaml diff --git a/main/schemas/transaction/Initialize.yaml b/src/assets/main/schemas/transaction/Initialize.yaml similarity index 100% rename from main/schemas/transaction/Initialize.yaml rename to src/assets/main/schemas/transaction/Initialize.yaml diff --git a/main/schemas/transaction/PartialDebit.yaml b/src/assets/main/schemas/transaction/PartialDebit.yaml similarity index 100% rename from main/schemas/transaction/PartialDebit.yaml rename to src/assets/main/schemas/transaction/PartialDebit.yaml diff --git a/main/schemas/transfer-recipient/Bulk.yaml b/src/assets/main/schemas/transfer-recipient/Bulk.yaml similarity index 100% rename from main/schemas/transfer-recipient/Bulk.yaml rename to src/assets/main/schemas/transfer-recipient/Bulk.yaml diff --git a/main/schemas/transfer-recipient/Create.yaml b/src/assets/main/schemas/transfer-recipient/Create.yaml similarity index 100% rename from main/schemas/transfer-recipient/Create.yaml rename to src/assets/main/schemas/transfer-recipient/Create.yaml diff --git a/main/schemas/transfer-recipient/Update.yaml b/src/assets/main/schemas/transfer-recipient/Update.yaml similarity index 100% rename from main/schemas/transfer-recipient/Update.yaml rename to src/assets/main/schemas/transfer-recipient/Update.yaml diff --git a/main/schemas/transfer/Bulk.yaml b/src/assets/main/schemas/transfer/Bulk.yaml similarity index 100% rename from main/schemas/transfer/Bulk.yaml rename to src/assets/main/schemas/transfer/Bulk.yaml diff --git a/main/schemas/transfer/DisableOTP.yaml b/src/assets/main/schemas/transfer/DisableOTP.yaml similarity index 100% rename from main/schemas/transfer/DisableOTP.yaml rename to src/assets/main/schemas/transfer/DisableOTP.yaml diff --git a/main/schemas/transfer/Finalize.yaml b/src/assets/main/schemas/transfer/Finalize.yaml similarity index 100% rename from main/schemas/transfer/Finalize.yaml rename to src/assets/main/schemas/transfer/Finalize.yaml diff --git a/main/schemas/transfer/Initiate.yaml b/src/assets/main/schemas/transfer/Initiate.yaml similarity index 100% rename from main/schemas/transfer/Initiate.yaml rename to src/assets/main/schemas/transfer/Initiate.yaml diff --git a/main/schemas/transfer/ResendOTP.yaml b/src/assets/main/schemas/transfer/ResendOTP.yaml similarity index 100% rename from main/schemas/transfer/ResendOTP.yaml rename to src/assets/main/schemas/transfer/ResendOTP.yaml diff --git a/main/schemas/verification/validate-bank.yaml b/src/assets/main/schemas/verification/validate-bank.yaml similarity index 100% rename from main/schemas/verification/validate-bank.yaml rename to src/assets/main/schemas/verification/validate-bank.yaml diff --git a/src/assets/openapi/components/responses/ApplePayOkResponse.yaml b/src/assets/openapi/components/responses/ApplePayOkResponse.yaml new file mode 100644 index 0000000..cc08bde --- /dev/null +++ b/src/assets/openapi/components/responses/ApplePayOkResponse.yaml @@ -0,0 +1,5 @@ +description: Responses from the Transaction Initialize endpoint +content: + application/json: + schema: + $ref: ../schemas/ApplePayCreateOkModel.yaml diff --git a/src/assets/openapi/components/responses/BalanceCheckSuccess.yaml b/src/assets/openapi/components/responses/BalanceCheckSuccess.yaml new file mode 100644 index 0000000..a69bf7d --- /dev/null +++ b/src/assets/openapi/components/responses/BalanceCheckSuccess.yaml @@ -0,0 +1,5 @@ +description: Balance Check response +content: + application/json: + schema: + $ref: ../schemas/BalanceCheckResponse.yaml diff --git a/src/assets/openapi/components/responses/BalanceFetchLedgerSuccess.yaml b/src/assets/openapi/components/responses/BalanceFetchLedgerSuccess.yaml new file mode 100644 index 0000000..f43d830 --- /dev/null +++ b/src/assets/openapi/components/responses/BalanceFetchLedgerSuccess.yaml @@ -0,0 +1,5 @@ +description: Balance Fetch Ledger response +content: + application/json: + schema: + $ref: ../schemas/BalanceFetchLedgerResponse.yaml diff --git a/src/assets/openapi/components/responses/BulkChargeFetchBulkBatchChargesSuccess.yaml b/src/assets/openapi/components/responses/BulkChargeFetchBulkBatchChargesSuccess.yaml new file mode 100644 index 0000000..0560a96 --- /dev/null +++ b/src/assets/openapi/components/responses/BulkChargeFetchBulkBatchChargesSuccess.yaml @@ -0,0 +1,5 @@ +description: Bulk Charge Fetch Bulk Batch Charges response +content: + application/json: + schema: + $ref: ../schemas/BulkChargeFetchBulkBatchChargesResponse.yaml diff --git a/src/assets/openapi/components/responses/BulkChargeFetchSuccess.yaml b/src/assets/openapi/components/responses/BulkChargeFetchSuccess.yaml new file mode 100644 index 0000000..401ef65 --- /dev/null +++ b/src/assets/openapi/components/responses/BulkChargeFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Bulk Charge Fetch response +content: + application/json: + schema: + $ref: ../schemas/BulkChargeFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/BulkChargeInitiateSuccess.yaml b/src/assets/openapi/components/responses/BulkChargeInitiateSuccess.yaml new file mode 100644 index 0000000..eb460e5 --- /dev/null +++ b/src/assets/openapi/components/responses/BulkChargeInitiateSuccess.yaml @@ -0,0 +1,5 @@ +description: Bulk Charge Initiate response +content: + application/json: + schema: + $ref: ../schemas/BulkChargeInitiateResponse.yaml diff --git a/src/assets/openapi/components/responses/BulkChargeListSuccess.yaml b/src/assets/openapi/components/responses/BulkChargeListSuccess.yaml new file mode 100644 index 0000000..3420f0b --- /dev/null +++ b/src/assets/openapi/components/responses/BulkChargeListSuccess.yaml @@ -0,0 +1,5 @@ +description: Bulk Charge List response +content: + application/json: + schema: + $ref: ../schemas/BulkChargeListResponse.yaml diff --git a/src/assets/openapi/components/responses/BulkChargePauseSuccess.yaml b/src/assets/openapi/components/responses/BulkChargePauseSuccess.yaml new file mode 100644 index 0000000..003d488 --- /dev/null +++ b/src/assets/openapi/components/responses/BulkChargePauseSuccess.yaml @@ -0,0 +1,5 @@ +description: Bulk Charge Pause response +content: + application/json: + schema: + $ref: ../schemas/BulkChargePauseResponse.yaml diff --git a/src/assets/openapi/components/responses/BulkChargeResumeSuccess.yaml b/src/assets/openapi/components/responses/BulkChargeResumeSuccess.yaml new file mode 100644 index 0000000..6834ee6 --- /dev/null +++ b/src/assets/openapi/components/responses/BulkChargeResumeSuccess.yaml @@ -0,0 +1,5 @@ +description: Bulk Charge Resume response +content: + application/json: + schema: + $ref: ../schemas/BulkChargeResumeResponse.yaml diff --git a/src/assets/openapi/components/responses/ChargeCheckPendingSuccess.yaml b/src/assets/openapi/components/responses/ChargeCheckPendingSuccess.yaml new file mode 100644 index 0000000..6cea6d2 --- /dev/null +++ b/src/assets/openapi/components/responses/ChargeCheckPendingSuccess.yaml @@ -0,0 +1,5 @@ +description: Charge Check Pending response +content: + application/json: + schema: + $ref: ../schemas/ChargeCheckPendingResponse.yaml diff --git a/src/assets/openapi/components/responses/ChargeCreateSuccess.yaml b/src/assets/openapi/components/responses/ChargeCreateSuccess.yaml new file mode 100644 index 0000000..6849d52 --- /dev/null +++ b/src/assets/openapi/components/responses/ChargeCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Charge Create response +content: + application/json: + schema: + $ref: ../schemas/ChargeCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/ChargeSubmitBirthdaySuccess.yaml b/src/assets/openapi/components/responses/ChargeSubmitBirthdaySuccess.yaml new file mode 100644 index 0000000..e91fe07 --- /dev/null +++ b/src/assets/openapi/components/responses/ChargeSubmitBirthdaySuccess.yaml @@ -0,0 +1,5 @@ +description: Charge Submit Birthday response +content: + application/json: + schema: + $ref: ../schemas/ChargeSubmitBirthdayResponse.yaml diff --git a/src/assets/openapi/components/responses/ChargeSubmitOtpSuccess.yaml b/src/assets/openapi/components/responses/ChargeSubmitOtpSuccess.yaml new file mode 100644 index 0000000..c6987bf --- /dev/null +++ b/src/assets/openapi/components/responses/ChargeSubmitOtpSuccess.yaml @@ -0,0 +1,5 @@ +description: Charge Submit Otp response +content: + application/json: + schema: + $ref: ../schemas/ChargeSubmitOtpResponse.yaml diff --git a/src/assets/openapi/components/responses/ChargeSubmitPhoneSuccess.yaml b/src/assets/openapi/components/responses/ChargeSubmitPhoneSuccess.yaml new file mode 100644 index 0000000..d47387a --- /dev/null +++ b/src/assets/openapi/components/responses/ChargeSubmitPhoneSuccess.yaml @@ -0,0 +1,5 @@ +description: Charge Submit Phone response +content: + application/json: + schema: + $ref: ../schemas/ChargeSubmitPhoneResponse.yaml diff --git a/src/assets/openapi/components/responses/ChargeSubmitPinSuccess.yaml b/src/assets/openapi/components/responses/ChargeSubmitPinSuccess.yaml new file mode 100644 index 0000000..033f6a4 --- /dev/null +++ b/src/assets/openapi/components/responses/ChargeSubmitPinSuccess.yaml @@ -0,0 +1,5 @@ +description: Charge Submit Pin response +content: + application/json: + schema: + $ref: ../schemas/ChargeSubmitPinResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerAuthorizationInitializeSuccess.yaml b/src/assets/openapi/components/responses/CustomerAuthorizationInitializeSuccess.yaml new file mode 100644 index 0000000..549bbce --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerAuthorizationInitializeSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Authorization Initialize response +content: + application/json: + schema: + $ref: ../schemas/CustomerAuthorizationInitializeResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerAuthorizationVerifySuccess.yaml b/src/assets/openapi/components/responses/CustomerAuthorizationVerifySuccess.yaml new file mode 100644 index 0000000..306279b --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerAuthorizationVerifySuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Authorization Verify response +content: + application/json: + schema: + $ref: ../schemas/CustomerAuthorizationVerifyResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerCreateSuccess.yaml b/src/assets/openapi/components/responses/CustomerCreateSuccess.yaml new file mode 100644 index 0000000..a23e495 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Create response +content: + application/json: + schema: + $ref: ../schemas/CustomerCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerDeactivateAuthorizationSuccess.yaml b/src/assets/openapi/components/responses/CustomerDeactivateAuthorizationSuccess.yaml new file mode 100644 index 0000000..f0f6017 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerDeactivateAuthorizationSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Deactivate Authorization response +content: + application/json: + schema: + $ref: ../schemas/CustomerDeactivateAuthorizationResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerDirectDebitActivationChargeSuccess.yaml b/src/assets/openapi/components/responses/CustomerDirectDebitActivationChargeSuccess.yaml new file mode 100644 index 0000000..c88585a --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerDirectDebitActivationChargeSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Direct Debit Activation Charge response +content: + application/json: + schema: + $ref: ../schemas/CustomerDirectDebitActivationChargeResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerFetchMandateAuthorizationsSuccess.yaml b/src/assets/openapi/components/responses/CustomerFetchMandateAuthorizationsSuccess.yaml new file mode 100644 index 0000000..d998fc4 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerFetchMandateAuthorizationsSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Fetch Mandate Authorizations response +content: + application/json: + schema: + $ref: ../schemas/CustomerFetchMandateAuthorizationsResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerFetchSuccess.yaml b/src/assets/openapi/components/responses/CustomerFetchSuccess.yaml new file mode 100644 index 0000000..c69dea7 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Fetch response +content: + application/json: + schema: + $ref: ../schemas/CustomerFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerInitializeDirectDebitSuccess.yaml b/src/assets/openapi/components/responses/CustomerInitializeDirectDebitSuccess.yaml new file mode 100644 index 0000000..39e2f85 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerInitializeDirectDebitSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Initialize Direct Debit response +content: + application/json: + schema: + $ref: ../schemas/CustomerInitializeDirectDebitResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerListSuccess.yaml b/src/assets/openapi/components/responses/CustomerListSuccess.yaml new file mode 100644 index 0000000..80a7481 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerListSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer List response +content: + application/json: + schema: + $ref: ../schemas/CustomerListResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerUpdateSuccess.yaml b/src/assets/openapi/components/responses/CustomerUpdateSuccess.yaml new file mode 100644 index 0000000..2de13e8 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Update response +content: + application/json: + schema: + $ref: ../schemas/CustomerUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerValidateSuccess.yaml b/src/assets/openapi/components/responses/CustomerValidateSuccess.yaml new file mode 100644 index 0000000..ec1240a --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerValidateSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Validate response +content: + application/json: + schema: + $ref: ../schemas/CustomerValidateResponse.yaml diff --git a/src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml b/src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml new file mode 100644 index 0000000..15f6cb0 --- /dev/null +++ b/src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml @@ -0,0 +1,5 @@ +description: Customer Whitelist Blacklist response +content: + application/json: + schema: + $ref: ../schemas/CustomerWhitelistBlacklistResponse.yaml diff --git a/src/assets/openapi/components/responses/DedicatedNubanCreateSuccess.yaml b/src/assets/openapi/components/responses/DedicatedNubanCreateSuccess.yaml new file mode 100644 index 0000000..04977cc --- /dev/null +++ b/src/assets/openapi/components/responses/DedicatedNubanCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Dedicated Nuban Create response +content: + application/json: + schema: + $ref: ../schemas/DedicatedNubanCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/DedicatedNubanDeactivateSuccess.yaml b/src/assets/openapi/components/responses/DedicatedNubanDeactivateSuccess.yaml new file mode 100644 index 0000000..497b0b7 --- /dev/null +++ b/src/assets/openapi/components/responses/DedicatedNubanDeactivateSuccess.yaml @@ -0,0 +1,5 @@ +description: Dedicated Nuban Deactivate response +content: + application/json: + schema: + $ref: ../schemas/DedicatedNubanDeactivateResponse.yaml diff --git a/src/assets/openapi/components/responses/DedicatedNubanFetchSuccess.yaml b/src/assets/openapi/components/responses/DedicatedNubanFetchSuccess.yaml new file mode 100644 index 0000000..7ba7a2c --- /dev/null +++ b/src/assets/openapi/components/responses/DedicatedNubanFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Dedicated Nuban Fetch response +content: + application/json: + schema: + $ref: ../schemas/DedicatedNubanFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/DirectDebitActivationChargeSuccess.yaml b/src/assets/openapi/components/responses/DirectDebitActivationChargeSuccess.yaml new file mode 100644 index 0000000..207a5a3 --- /dev/null +++ b/src/assets/openapi/components/responses/DirectDebitActivationChargeSuccess.yaml @@ -0,0 +1,5 @@ +description: Direct Debit Activation Charge response +content: + application/json: + schema: + $ref: ../schemas/DirectDebitActivationChargeResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeAddEvidenceSuccess.yaml b/src/assets/openapi/components/responses/DisputeAddEvidenceSuccess.yaml new file mode 100644 index 0000000..495d143 --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeAddEvidenceSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute Add Evidence response +content: + application/json: + schema: + $ref: ../schemas/DisputeAddEvidenceResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeExportSuccess.yaml b/src/assets/openapi/components/responses/DisputeExportSuccess.yaml new file mode 100644 index 0000000..f69f51f --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeExportSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute Export response +content: + application/json: + schema: + $ref: ../schemas/DisputeExportResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeFetchSuccess.yaml b/src/assets/openapi/components/responses/DisputeFetchSuccess.yaml new file mode 100644 index 0000000..cc0fbe3 --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute Fetch response +content: + application/json: + schema: + $ref: ../schemas/DisputeFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeListSuccess.yaml b/src/assets/openapi/components/responses/DisputeListSuccess.yaml new file mode 100644 index 0000000..ccef908 --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeListSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute List response +content: + application/json: + schema: + $ref: ../schemas/DisputeListResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeListTransactionSuccess.yaml b/src/assets/openapi/components/responses/DisputeListTransactionSuccess.yaml new file mode 100644 index 0000000..a6c220d --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeListTransactionSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute List Transaction response +content: + application/json: + schema: + $ref: ../schemas/DisputeListTransactionResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeResolveSuccess.yaml b/src/assets/openapi/components/responses/DisputeResolveSuccess.yaml new file mode 100644 index 0000000..f09c7cf --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeResolveSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute Resolve response +content: + application/json: + schema: + $ref: ../schemas/DisputeResolveResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeUpdateSuccess.yaml b/src/assets/openapi/components/responses/DisputeUpdateSuccess.yaml new file mode 100644 index 0000000..e747665 --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute Update response +content: + application/json: + schema: + $ref: ../schemas/DisputeUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/DisputeUploadURLSuccess.yaml b/src/assets/openapi/components/responses/DisputeUploadURLSuccess.yaml new file mode 100644 index 0000000..1f4728f --- /dev/null +++ b/src/assets/openapi/components/responses/DisputeUploadURLSuccess.yaml @@ -0,0 +1,5 @@ +description: Dispute Upload U R L response +content: + application/json: + schema: + $ref: ../schemas/DisputeUploadURLResponse.yaml diff --git a/src/assets/openapi/components/responses/MiscellaneousListBanksSuccess.yaml b/src/assets/openapi/components/responses/MiscellaneousListBanksSuccess.yaml new file mode 100644 index 0000000..99a85de --- /dev/null +++ b/src/assets/openapi/components/responses/MiscellaneousListBanksSuccess.yaml @@ -0,0 +1,5 @@ +description: Miscellaneous List Banks response +content: + application/json: + schema: + $ref: ../schemas/MiscellaneousListBanksResponse.yaml diff --git a/src/assets/openapi/components/responses/MiscellaneousListCountriesSuccess.yaml b/src/assets/openapi/components/responses/MiscellaneousListCountriesSuccess.yaml new file mode 100644 index 0000000..a98705b --- /dev/null +++ b/src/assets/openapi/components/responses/MiscellaneousListCountriesSuccess.yaml @@ -0,0 +1,5 @@ +description: Miscellaneous List Countries response +content: + application/json: + schema: + $ref: ../schemas/MiscellaneousListCountriesResponse.yaml diff --git a/src/assets/openapi/components/responses/MiscellaneousListStatesSuccess.yaml b/src/assets/openapi/components/responses/MiscellaneousListStatesSuccess.yaml new file mode 100644 index 0000000..4b1e357 --- /dev/null +++ b/src/assets/openapi/components/responses/MiscellaneousListStatesSuccess.yaml @@ -0,0 +1,5 @@ +description: Miscellaneous List States response +content: + application/json: + schema: + $ref: ../schemas/MiscellaneousListStatesResponse.yaml diff --git a/src/assets/openapi/components/responses/NotFound.yaml b/src/assets/openapi/components/responses/NotFound.yaml new file mode 100644 index 0000000..f1abd85 --- /dev/null +++ b/src/assets/openapi/components/responses/NotFound.yaml @@ -0,0 +1,8 @@ +description: Entity not found +content: + application/json: + schema: + $ref: ../schemas/Error.yaml + example: + status: false + message: Entity not found diff --git a/src/assets/openapi/components/responses/Ok.yaml b/src/assets/openapi/components/responses/Ok.yaml new file mode 100644 index 0000000..2c797b8 --- /dev/null +++ b/src/assets/openapi/components/responses/Ok.yaml @@ -0,0 +1,5 @@ +description: Request successful +content: + application/json: + schema: + $ref: ../schemas/Response.yaml diff --git a/src/assets/openapi/components/responses/OrderCreateSuccess.yaml b/src/assets/openapi/components/responses/OrderCreateSuccess.yaml new file mode 100644 index 0000000..18eaaee --- /dev/null +++ b/src/assets/openapi/components/responses/OrderCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Order Create response +content: + application/json: + schema: + $ref: ../schemas/OrderCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/OrderFetchProductSuccess.yaml b/src/assets/openapi/components/responses/OrderFetchProductSuccess.yaml new file mode 100644 index 0000000..5e72fa6 --- /dev/null +++ b/src/assets/openapi/components/responses/OrderFetchProductSuccess.yaml @@ -0,0 +1,5 @@ +description: Order Fetch Product response +content: + application/json: + schema: + $ref: ../schemas/OrderFetchProductResponse.yaml diff --git a/src/assets/openapi/components/responses/OrderFetchSuccess.yaml b/src/assets/openapi/components/responses/OrderFetchSuccess.yaml new file mode 100644 index 0000000..08c8c18 --- /dev/null +++ b/src/assets/openapi/components/responses/OrderFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Order Fetch response +content: + application/json: + schema: + $ref: ../schemas/OrderFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/OrderListSuccess.yaml b/src/assets/openapi/components/responses/OrderListSuccess.yaml new file mode 100644 index 0000000..cee721e --- /dev/null +++ b/src/assets/openapi/components/responses/OrderListSuccess.yaml @@ -0,0 +1,5 @@ +description: Order List response +content: + application/json: + schema: + $ref: ../schemas/OrderListResponse.yaml diff --git a/src/assets/openapi/components/responses/OrderValidateSuccess.yaml b/src/assets/openapi/components/responses/OrderValidateSuccess.yaml new file mode 100644 index 0000000..d3ac9bb --- /dev/null +++ b/src/assets/openapi/components/responses/OrderValidateSuccess.yaml @@ -0,0 +1,5 @@ +description: Order Validate response +content: + application/json: + schema: + $ref: ../schemas/OrderValidateResponse.yaml diff --git a/src/assets/openapi/components/responses/PageAddProductsSuccess.yaml b/src/assets/openapi/components/responses/PageAddProductsSuccess.yaml new file mode 100644 index 0000000..1a5fed8 --- /dev/null +++ b/src/assets/openapi/components/responses/PageAddProductsSuccess.yaml @@ -0,0 +1,5 @@ +description: Page Add Products response +content: + application/json: + schema: + $ref: ../schemas/PageAddProductsResponse.yaml diff --git a/src/assets/openapi/components/responses/PageCheckSlugAvailabilitySuccess.yaml b/src/assets/openapi/components/responses/PageCheckSlugAvailabilitySuccess.yaml new file mode 100644 index 0000000..215e0e3 --- /dev/null +++ b/src/assets/openapi/components/responses/PageCheckSlugAvailabilitySuccess.yaml @@ -0,0 +1,5 @@ +description: Page Check Slug Availability response +content: + application/json: + schema: + $ref: ../schemas/PageCheckSlugAvailabilityResponse.yaml diff --git a/src/assets/openapi/components/responses/PageCreateSuccess.yaml b/src/assets/openapi/components/responses/PageCreateSuccess.yaml new file mode 100644 index 0000000..4c60243 --- /dev/null +++ b/src/assets/openapi/components/responses/PageCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Page Create response +content: + application/json: + schema: + $ref: ../schemas/PageCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/PageFetchSuccess.yaml b/src/assets/openapi/components/responses/PageFetchSuccess.yaml new file mode 100644 index 0000000..e06ac51 --- /dev/null +++ b/src/assets/openapi/components/responses/PageFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Page Fetch response +content: + application/json: + schema: + $ref: ../schemas/PageFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/PageListSuccess.yaml b/src/assets/openapi/components/responses/PageListSuccess.yaml new file mode 100644 index 0000000..b760910 --- /dev/null +++ b/src/assets/openapi/components/responses/PageListSuccess.yaml @@ -0,0 +1,5 @@ +description: Page List response +content: + application/json: + schema: + $ref: ../schemas/PageListResponse.yaml diff --git a/src/assets/openapi/components/responses/PageUpdateSuccess.yaml b/src/assets/openapi/components/responses/PageUpdateSuccess.yaml new file mode 100644 index 0000000..c29de43 --- /dev/null +++ b/src/assets/openapi/components/responses/PageUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Page Update response +content: + application/json: + schema: + $ref: ../schemas/PageUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestArchiveSuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestArchiveSuccess.yaml new file mode 100644 index 0000000..3b49bfb --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestArchiveSuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request Archive response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestArchiveResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestCreateSuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestCreateSuccess.yaml new file mode 100644 index 0000000..76212da --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request Create response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestFinalizeSuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestFinalizeSuccess.yaml new file mode 100644 index 0000000..bdfcc71 --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestFinalizeSuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request Finalize response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestFinalizeResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestListSuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestListSuccess.yaml new file mode 100644 index 0000000..4e900a4 --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestListSuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request List response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestListResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestSendNotificationSuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestSendNotificationSuccess.yaml new file mode 100644 index 0000000..e9f1ab0 --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestSendNotificationSuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request Send Notification response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestSendNotificationResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestTotalSuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestTotalSuccess.yaml new file mode 100644 index 0000000..fe80504 --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestTotalSuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request Total response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestTotalResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestUpdateSuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestUpdateSuccess.yaml new file mode 100644 index 0000000..da23172 --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request Update response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/PaymentRequestVerifySuccess.yaml b/src/assets/openapi/components/responses/PaymentRequestVerifySuccess.yaml new file mode 100644 index 0000000..4854ecb --- /dev/null +++ b/src/assets/openapi/components/responses/PaymentRequestVerifySuccess.yaml @@ -0,0 +1,5 @@ +description: Payment Request Verify response +content: + application/json: + schema: + $ref: ../schemas/PaymentRequestVerifyResponse.yaml diff --git a/src/assets/openapi/components/responses/PlanCreateSuccess.yaml b/src/assets/openapi/components/responses/PlanCreateSuccess.yaml new file mode 100644 index 0000000..6e97d4c --- /dev/null +++ b/src/assets/openapi/components/responses/PlanCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Plan Create response +content: + application/json: + schema: + $ref: ../schemas/PlanCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/PlanFetchSuccess.yaml b/src/assets/openapi/components/responses/PlanFetchSuccess.yaml new file mode 100644 index 0000000..bc6c320 --- /dev/null +++ b/src/assets/openapi/components/responses/PlanFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Plan Fetch response +content: + application/json: + schema: + $ref: ../schemas/PlanFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/PlanListSuccess.yaml b/src/assets/openapi/components/responses/PlanListSuccess.yaml new file mode 100644 index 0000000..f6228f4 --- /dev/null +++ b/src/assets/openapi/components/responses/PlanListSuccess.yaml @@ -0,0 +1,5 @@ +description: Plan List response +content: + application/json: + schema: + $ref: ../schemas/PlanListResponse.yaml diff --git a/src/assets/openapi/components/responses/PlanUpdateSuccess.yaml b/src/assets/openapi/components/responses/PlanUpdateSuccess.yaml new file mode 100644 index 0000000..692be39 --- /dev/null +++ b/src/assets/openapi/components/responses/PlanUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Plan Update response +content: + application/json: + schema: + $ref: ../schemas/PlanUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/ProductCreateSuccess.yaml b/src/assets/openapi/components/responses/ProductCreateSuccess.yaml new file mode 100644 index 0000000..bb9fb84 --- /dev/null +++ b/src/assets/openapi/components/responses/ProductCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Product Create response +content: + application/json: + schema: + $ref: ../schemas/ProductCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/ProductDeleteSuccess.yaml b/src/assets/openapi/components/responses/ProductDeleteSuccess.yaml new file mode 100644 index 0000000..e2eb3e4 --- /dev/null +++ b/src/assets/openapi/components/responses/ProductDeleteSuccess.yaml @@ -0,0 +1,5 @@ +description: Product Delete response +content: + application/json: + schema: + $ref: ../schemas/ProductDeleteResponse.yaml diff --git a/src/assets/openapi/components/responses/ProductFetchSuccess.yaml b/src/assets/openapi/components/responses/ProductFetchSuccess.yaml new file mode 100644 index 0000000..a389870 --- /dev/null +++ b/src/assets/openapi/components/responses/ProductFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Product Fetch response +content: + application/json: + schema: + $ref: ../schemas/ProductFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/ProductListsSuccess.yaml b/src/assets/openapi/components/responses/ProductListsSuccess.yaml new file mode 100644 index 0000000..623a7f9 --- /dev/null +++ b/src/assets/openapi/components/responses/ProductListsSuccess.yaml @@ -0,0 +1,5 @@ +description: Product Lists response +content: + application/json: + schema: + $ref: ../schemas/ProductListsResponse.yaml diff --git a/src/assets/openapi/components/responses/ProductUpdateSuccess.yaml b/src/assets/openapi/components/responses/ProductUpdateSuccess.yaml new file mode 100644 index 0000000..b9d32d0 --- /dev/null +++ b/src/assets/openapi/components/responses/ProductUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Product Update response +content: + application/json: + schema: + $ref: ../schemas/ProductUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/RefundCreateSuccess.yaml b/src/assets/openapi/components/responses/RefundCreateSuccess.yaml new file mode 100644 index 0000000..2f1052e --- /dev/null +++ b/src/assets/openapi/components/responses/RefundCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Refund Create response +content: + application/json: + schema: + $ref: ../schemas/RefundCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/RefundFetchSuccess.yaml b/src/assets/openapi/components/responses/RefundFetchSuccess.yaml new file mode 100644 index 0000000..8d07810 --- /dev/null +++ b/src/assets/openapi/components/responses/RefundFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Refund Fetch response +content: + application/json: + schema: + $ref: ../schemas/RefundFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/RefundListSuccess.yaml b/src/assets/openapi/components/responses/RefundListSuccess.yaml new file mode 100644 index 0000000..cb5a429 --- /dev/null +++ b/src/assets/openapi/components/responses/RefundListSuccess.yaml @@ -0,0 +1,5 @@ +description: Refund List response +content: + application/json: + schema: + $ref: ../schemas/RefundListResponse.yaml diff --git a/src/assets/openapi/components/responses/SplitAddUpdateSubaccountSuccess.yaml b/src/assets/openapi/components/responses/SplitAddUpdateSubaccountSuccess.yaml new file mode 100644 index 0000000..0c1b66f --- /dev/null +++ b/src/assets/openapi/components/responses/SplitAddUpdateSubaccountSuccess.yaml @@ -0,0 +1,5 @@ +description: Split Add Update Subaccount response +content: + application/json: + schema: + $ref: ../schemas/SplitAddUpdateSubaccountResponse.yaml diff --git a/src/assets/openapi/components/responses/SplitCreateSuccess.yaml b/src/assets/openapi/components/responses/SplitCreateSuccess.yaml new file mode 100644 index 0000000..ae3c7d4 --- /dev/null +++ b/src/assets/openapi/components/responses/SplitCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Split Create response +content: + application/json: + schema: + $ref: ../schemas/SplitCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/SplitFetchSuccess.yaml b/src/assets/openapi/components/responses/SplitFetchSuccess.yaml new file mode 100644 index 0000000..40ea308 --- /dev/null +++ b/src/assets/openapi/components/responses/SplitFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Split Fetch response +content: + application/json: + schema: + $ref: ../schemas/SplitFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/SplitListSuccess.yaml b/src/assets/openapi/components/responses/SplitListSuccess.yaml new file mode 100644 index 0000000..19ff054 --- /dev/null +++ b/src/assets/openapi/components/responses/SplitListSuccess.yaml @@ -0,0 +1,5 @@ +description: Split List response +content: + application/json: + schema: + $ref: ../schemas/SplitListResponse.yaml diff --git a/src/assets/openapi/components/responses/SplitRemoveSubaccountSuccess.yaml b/src/assets/openapi/components/responses/SplitRemoveSubaccountSuccess.yaml new file mode 100644 index 0000000..f9c213a --- /dev/null +++ b/src/assets/openapi/components/responses/SplitRemoveSubaccountSuccess.yaml @@ -0,0 +1,5 @@ +description: Split Remove Subaccount response +content: + application/json: + schema: + $ref: ../schemas/SplitRemoveSubaccountResponse.yaml diff --git a/src/assets/openapi/components/responses/SplitUpdateSuccess.yaml b/src/assets/openapi/components/responses/SplitUpdateSuccess.yaml new file mode 100644 index 0000000..e64bdc3 --- /dev/null +++ b/src/assets/openapi/components/responses/SplitUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Split Update response +content: + application/json: + schema: + $ref: ../schemas/SplitUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/StorefrontCreateSuccess.yaml b/src/assets/openapi/components/responses/StorefrontCreateSuccess.yaml new file mode 100644 index 0000000..067ffcc --- /dev/null +++ b/src/assets/openapi/components/responses/StorefrontCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Storefront Create response +content: + application/json: + schema: + $ref: ../schemas/StorefrontCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/StorefrontDeleteSuccess.yaml b/src/assets/openapi/components/responses/StorefrontDeleteSuccess.yaml new file mode 100644 index 0000000..3038e0e --- /dev/null +++ b/src/assets/openapi/components/responses/StorefrontDeleteSuccess.yaml @@ -0,0 +1,5 @@ +description: Storefront Delete response +content: + application/json: + schema: + $ref: ../schemas/StorefrontDeleteResponse.yaml diff --git a/src/assets/openapi/components/responses/StorefrontFetchSuccess.yaml b/src/assets/openapi/components/responses/StorefrontFetchSuccess.yaml new file mode 100644 index 0000000..2fbc8b4 --- /dev/null +++ b/src/assets/openapi/components/responses/StorefrontFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Storefront Fetch response +content: + application/json: + schema: + $ref: ../schemas/StorefrontFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/StorefrontListSuccess.yaml b/src/assets/openapi/components/responses/StorefrontListSuccess.yaml new file mode 100644 index 0000000..45f39be --- /dev/null +++ b/src/assets/openapi/components/responses/StorefrontListSuccess.yaml @@ -0,0 +1,5 @@ +description: Storefront List response +content: + application/json: + schema: + $ref: ../schemas/StorefrontListResponse.yaml diff --git a/src/assets/openapi/components/responses/StorefrontUpdateSuccess.yaml b/src/assets/openapi/components/responses/StorefrontUpdateSuccess.yaml new file mode 100644 index 0000000..ed276a7 --- /dev/null +++ b/src/assets/openapi/components/responses/StorefrontUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Storefront Update response +content: + application/json: + schema: + $ref: ../schemas/StorefrontUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/SubaccountCreateSuccess.yaml b/src/assets/openapi/components/responses/SubaccountCreateSuccess.yaml new file mode 100644 index 0000000..aaf5836 --- /dev/null +++ b/src/assets/openapi/components/responses/SubaccountCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Subaccount Create response +content: + application/json: + schema: + $ref: ../schemas/SubaccountCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/SubaccountFetchSuccess.yaml b/src/assets/openapi/components/responses/SubaccountFetchSuccess.yaml new file mode 100644 index 0000000..0e8e8f2 --- /dev/null +++ b/src/assets/openapi/components/responses/SubaccountFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Subaccount Fetch response +content: + application/json: + schema: + $ref: ../schemas/SubaccountFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/SubaccountListSuccess.yaml b/src/assets/openapi/components/responses/SubaccountListSuccess.yaml new file mode 100644 index 0000000..ce95f63 --- /dev/null +++ b/src/assets/openapi/components/responses/SubaccountListSuccess.yaml @@ -0,0 +1,5 @@ +description: Subaccount List response +content: + application/json: + schema: + $ref: ../schemas/SubaccountListResponse.yaml diff --git a/src/assets/openapi/components/responses/SubaccountUpdateSuccess.yaml b/src/assets/openapi/components/responses/SubaccountUpdateSuccess.yaml new file mode 100644 index 0000000..fe8cf0e --- /dev/null +++ b/src/assets/openapi/components/responses/SubaccountUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Subaccount Update response +content: + application/json: + schema: + $ref: ../schemas/SubaccountUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/SubscriptionCreateSuccess.yaml b/src/assets/openapi/components/responses/SubscriptionCreateSuccess.yaml new file mode 100644 index 0000000..dcfc21b --- /dev/null +++ b/src/assets/openapi/components/responses/SubscriptionCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Subscription Create response +content: + application/json: + schema: + $ref: ../schemas/SubscriptionCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/SubscriptionDisableSuccess.yaml b/src/assets/openapi/components/responses/SubscriptionDisableSuccess.yaml new file mode 100644 index 0000000..94f06c8 --- /dev/null +++ b/src/assets/openapi/components/responses/SubscriptionDisableSuccess.yaml @@ -0,0 +1,5 @@ +description: Subscription Disable response +content: + application/json: + schema: + $ref: ../schemas/SubscriptionDisableResponse.yaml diff --git a/src/assets/openapi/components/responses/SubscriptionFetchSuccess.yaml b/src/assets/openapi/components/responses/SubscriptionFetchSuccess.yaml new file mode 100644 index 0000000..4a4af76 --- /dev/null +++ b/src/assets/openapi/components/responses/SubscriptionFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Subscription Fetch response +content: + application/json: + schema: + $ref: ../schemas/SubscriptionFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/SubscriptionListSuccess.yaml b/src/assets/openapi/components/responses/SubscriptionListSuccess.yaml new file mode 100644 index 0000000..1d46654 --- /dev/null +++ b/src/assets/openapi/components/responses/SubscriptionListSuccess.yaml @@ -0,0 +1,5 @@ +description: Subscription List response +content: + application/json: + schema: + $ref: ../schemas/SubscriptionListResponse.yaml diff --git a/src/assets/openapi/components/responses/TerminalCommissionDeviceSuccess.yaml b/src/assets/openapi/components/responses/TerminalCommissionDeviceSuccess.yaml new file mode 100644 index 0000000..23eacfc --- /dev/null +++ b/src/assets/openapi/components/responses/TerminalCommissionDeviceSuccess.yaml @@ -0,0 +1,5 @@ +description: Terminal Commission Device response +content: + application/json: + schema: + $ref: ../schemas/TerminalCommissionDeviceResponse.yaml diff --git a/src/assets/openapi/components/responses/TerminalDecommissionDeviceSuccess.yaml b/src/assets/openapi/components/responses/TerminalDecommissionDeviceSuccess.yaml new file mode 100644 index 0000000..448bbe5 --- /dev/null +++ b/src/assets/openapi/components/responses/TerminalDecommissionDeviceSuccess.yaml @@ -0,0 +1,5 @@ +description: Terminal Decommission Device response +content: + application/json: + schema: + $ref: ../schemas/TerminalDecommissionDeviceResponse.yaml diff --git a/src/assets/openapi/components/responses/TerminalGetStatusSuccess.yaml b/src/assets/openapi/components/responses/TerminalGetStatusSuccess.yaml new file mode 100644 index 0000000..7e7566f --- /dev/null +++ b/src/assets/openapi/components/responses/TerminalGetStatusSuccess.yaml @@ -0,0 +1,5 @@ +description: Terminal Get Status response +content: + application/json: + schema: + $ref: ../schemas/TerminalGetStatusResponse.yaml diff --git a/src/assets/openapi/components/responses/TerminalGetSuccess.yaml b/src/assets/openapi/components/responses/TerminalGetSuccess.yaml new file mode 100644 index 0000000..9f62aaa --- /dev/null +++ b/src/assets/openapi/components/responses/TerminalGetSuccess.yaml @@ -0,0 +1,5 @@ +description: Terminal Get response +content: + application/json: + schema: + $ref: ../schemas/TerminalGetResponse.yaml diff --git a/src/assets/openapi/components/responses/TerminalListsSuccess.yaml b/src/assets/openapi/components/responses/TerminalListsSuccess.yaml new file mode 100644 index 0000000..c549fd8 --- /dev/null +++ b/src/assets/openapi/components/responses/TerminalListsSuccess.yaml @@ -0,0 +1,5 @@ +description: Terminal Lists response +content: + application/json: + schema: + $ref: ../schemas/TerminalListsResponse.yaml diff --git a/src/assets/openapi/components/responses/TerminalUpdateSuccess.yaml b/src/assets/openapi/components/responses/TerminalUpdateSuccess.yaml new file mode 100644 index 0000000..31607e7 --- /dev/null +++ b/src/assets/openapi/components/responses/TerminalUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Terminal Update response +content: + application/json: + schema: + $ref: ../schemas/TerminalUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionChargeSuccess.yaml b/src/assets/openapi/components/responses/TransactionChargeSuccess.yaml new file mode 100644 index 0000000..fdbc4c6 --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionChargeSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Charge response +content: + application/json: + schema: + $ref: ../schemas/TransactionChargeResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionExportSuccess.yaml b/src/assets/openapi/components/responses/TransactionExportSuccess.yaml new file mode 100644 index 0000000..f1b9376 --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionExportSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Export response +content: + application/json: + schema: + $ref: ../schemas/TransactionExportResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionFetchSuccess.yaml b/src/assets/openapi/components/responses/TransactionFetchSuccess.yaml new file mode 100644 index 0000000..9dd4563 --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Fetch response +content: + application/json: + schema: + $ref: ../schemas/TransactionFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionInitializeBadRequestResponse.yaml b/src/assets/openapi/components/responses/TransactionInitializeBadRequestResponse.yaml new file mode 100644 index 0000000..0066532 --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionInitializeBadRequestResponse.yaml @@ -0,0 +1,5 @@ +description: Responses from the Transaction Initialize endpoint +content: + application/json: + schema: + $ref: ../schemas/TransactionInitializeBadRequestModel.yaml diff --git a/src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml b/src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml new file mode 100644 index 0000000..78fc0e8 --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Initialize response +content: + application/json: + schema: + $ref: ../schemas/TransactionInitializeResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionListSuccess.yaml b/src/assets/openapi/components/responses/TransactionListSuccess.yaml new file mode 100644 index 0000000..e25c22d --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionListSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction List response +content: + application/json: + schema: + $ref: ../schemas/TransactionListResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml b/src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml new file mode 100644 index 0000000..ec93f6f --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Partial Debit response +content: + application/json: + schema: + $ref: ../schemas/TransactionPartialDebitResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml b/src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml new file mode 100644 index 0000000..4e50277 --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Timeline response +content: + application/json: + schema: + $ref: ../schemas/TransactionTimelineResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml b/src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml new file mode 100644 index 0000000..a9070a0 --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Totals response +content: + application/json: + schema: + $ref: ../schemas/TransactionTotalsResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionVerifySuccess.yaml b/src/assets/openapi/components/responses/TransactionVerifySuccess.yaml new file mode 100644 index 0000000..cb222ac --- /dev/null +++ b/src/assets/openapi/components/responses/TransactionVerifySuccess.yaml @@ -0,0 +1,5 @@ +description: Transaction Verify response +content: + application/json: + schema: + $ref: ../schemas/TransactionVerifyResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferBulkSuccess.yaml b/src/assets/openapi/components/responses/TransferBulkSuccess.yaml new file mode 100644 index 0000000..f28ddc6 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferBulkSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Bulk response +content: + application/json: + schema: + $ref: ../schemas/TransferBulkResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferCreateSuccess.yaml b/src/assets/openapi/components/responses/TransferCreateSuccess.yaml new file mode 100644 index 0000000..5b42b19 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Create response +content: + application/json: + schema: + $ref: ../schemas/TransferCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferDisablesOtpSuccess.yaml b/src/assets/openapi/components/responses/TransferDisablesOtpSuccess.yaml new file mode 100644 index 0000000..94649d7 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferDisablesOtpSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Disables Otp response +content: + application/json: + schema: + $ref: ../schemas/TransferDisablesOtpResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferEnablesOtpSuccess.yaml b/src/assets/openapi/components/responses/TransferEnablesOtpSuccess.yaml new file mode 100644 index 0000000..666f4d6 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferEnablesOtpSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Enables Otp response +content: + application/json: + schema: + $ref: ../schemas/TransferEnablesOtpResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferFetchSuccess.yaml b/src/assets/openapi/components/responses/TransferFetchSuccess.yaml new file mode 100644 index 0000000..3daefcc --- /dev/null +++ b/src/assets/openapi/components/responses/TransferFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Fetch response +content: + application/json: + schema: + $ref: ../schemas/TransferFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferFinalizeDisablesOtpSuccess.yaml b/src/assets/openapi/components/responses/TransferFinalizeDisablesOtpSuccess.yaml new file mode 100644 index 0000000..e901ac4 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferFinalizeDisablesOtpSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Finalize Disables Otp response +content: + application/json: + schema: + $ref: ../schemas/TransferFinalizeDisablesOtpResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferListSuccess.yaml b/src/assets/openapi/components/responses/TransferListSuccess.yaml new file mode 100644 index 0000000..4d8fad8 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferListSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer List response +content: + application/json: + schema: + $ref: ../schemas/TransferListResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferRecipientBulkCreateSuccess.yaml b/src/assets/openapi/components/responses/TransferRecipientBulkCreateSuccess.yaml new file mode 100644 index 0000000..269a730 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferRecipientBulkCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Recipient Bulk Create response +content: + application/json: + schema: + $ref: ../schemas/TransferRecipientBulkCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferRecipientCreateSuccess.yaml b/src/assets/openapi/components/responses/TransferRecipientCreateSuccess.yaml new file mode 100644 index 0000000..aa57d04 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferRecipientCreateSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Recipient Create response +content: + application/json: + schema: + $ref: ../schemas/TransferRecipientCreateResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferRecipientDeleteSuccess.yaml b/src/assets/openapi/components/responses/TransferRecipientDeleteSuccess.yaml new file mode 100644 index 0000000..2dbcaab --- /dev/null +++ b/src/assets/openapi/components/responses/TransferRecipientDeleteSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Recipient Delete response +content: + application/json: + schema: + $ref: ../schemas/TransferRecipientDeleteResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferRecipientFetchSuccess.yaml b/src/assets/openapi/components/responses/TransferRecipientFetchSuccess.yaml new file mode 100644 index 0000000..6af4c58 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferRecipientFetchSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Recipient Fetch response +content: + application/json: + schema: + $ref: ../schemas/TransferRecipientFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferRecipientListSuccess.yaml b/src/assets/openapi/components/responses/TransferRecipientListSuccess.yaml new file mode 100644 index 0000000..cc24a93 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferRecipientListSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Recipient List response +content: + application/json: + schema: + $ref: ../schemas/TransferRecipientListResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferRecipientUpdateSuccess.yaml b/src/assets/openapi/components/responses/TransferRecipientUpdateSuccess.yaml new file mode 100644 index 0000000..ec884ff --- /dev/null +++ b/src/assets/openapi/components/responses/TransferRecipientUpdateSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Recipient Update response +content: + application/json: + schema: + $ref: ../schemas/TransferRecipientUpdateResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferResendsOtpSuccess.yaml b/src/assets/openapi/components/responses/TransferResendsOtpSuccess.yaml new file mode 100644 index 0000000..2fa91b5 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferResendsOtpSuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Resends Otp response +content: + application/json: + schema: + $ref: ../schemas/TransferResendsOtpResponse.yaml diff --git a/src/assets/openapi/components/responses/TransferVerifySuccess.yaml b/src/assets/openapi/components/responses/TransferVerifySuccess.yaml new file mode 100644 index 0000000..adc3538 --- /dev/null +++ b/src/assets/openapi/components/responses/TransferVerifySuccess.yaml @@ -0,0 +1,5 @@ +description: Transfer Verify response +content: + application/json: + schema: + $ref: ../schemas/TransferVerifyResponse.yaml diff --git a/src/assets/openapi/components/responses/Unauthorized.yaml b/src/assets/openapi/components/responses/Unauthorized.yaml new file mode 100644 index 0000000..f184a77 --- /dev/null +++ b/src/assets/openapi/components/responses/Unauthorized.yaml @@ -0,0 +1,8 @@ +description: Unauthorized operation +content: + application/json: + schema: + $ref: ../schemas/Error.yaml + example: + status: false + message: Invalid key diff --git a/src/assets/openapi/components/responses/VerificationResolveAccountNumberSuccess.yaml b/src/assets/openapi/components/responses/VerificationResolveAccountNumberSuccess.yaml new file mode 100644 index 0000000..0d84148 --- /dev/null +++ b/src/assets/openapi/components/responses/VerificationResolveAccountNumberSuccess.yaml @@ -0,0 +1,5 @@ +description: Verification Resolve Account Number response +content: + application/json: + schema: + $ref: ../schemas/VerificationResolveAccountNumberResponse.yaml diff --git a/src/assets/openapi/components/responses/VerificationResolveCardBINSuccess.yaml b/src/assets/openapi/components/responses/VerificationResolveCardBINSuccess.yaml new file mode 100644 index 0000000..d94fe16 --- /dev/null +++ b/src/assets/openapi/components/responses/VerificationResolveCardBINSuccess.yaml @@ -0,0 +1,5 @@ +description: Verification Resolve Card B I N response +content: + application/json: + schema: + $ref: ../schemas/VerificationResolveCardBINResponse.yaml diff --git a/src/assets/openapi/components/responses/VerificationValidateAccountSuccess.yaml b/src/assets/openapi/components/responses/VerificationValidateAccountSuccess.yaml new file mode 100644 index 0000000..35bb879 --- /dev/null +++ b/src/assets/openapi/components/responses/VerificationValidateAccountSuccess.yaml @@ -0,0 +1,5 @@ +description: Verification Validate Account response +content: + application/json: + schema: + $ref: ../schemas/VerificationValidateAccountResponse.yaml diff --git a/src/assets/openapi/components/schemas/ApplePayCreateOkModel.yaml b/src/assets/openapi/components/schemas/ApplePayCreateOkModel.yaml new file mode 100644 index 0000000..b14fbfa --- /dev/null +++ b/src/assets/openapi/components/schemas/ApplePayCreateOkModel.yaml @@ -0,0 +1,11 @@ +type: object +properties: + status: + description: An indicator + type: boolean + message: + description: A short description of the response + type: string +example: + status: true + message: Domain successfully registered on Apple Pay diff --git a/src/assets/openapi/components/schemas/ApplePayParam.yaml b/src/assets/openapi/components/schemas/ApplePayParam.yaml new file mode 100644 index 0000000..f747323 --- /dev/null +++ b/src/assets/openapi/components/schemas/ApplePayParam.yaml @@ -0,0 +1,9 @@ +type: object +required: + - domainName +properties: + domainName: + description: The domain or subdomain for your application + type: string +example: + domainName: example.com diff --git a/src/assets/openapi/components/schemas/BalanceCheckResponse.yaml b/src/assets/openapi/components/schemas/BalanceCheckResponse.yaml new file mode 100644 index 0000000..919ba70 --- /dev/null +++ b/src/assets/openapi/components/schemas/BalanceCheckResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./BalanceCheckResponseArray.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/BalanceCheckResponseArray.yaml b/src/assets/openapi/components/schemas/BalanceCheckResponseArray.yaml new file mode 100644 index 0000000..ba6f37a --- /dev/null +++ b/src/assets/openapi/components/schemas/BalanceCheckResponseArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + currency: + type: string + balance: + type: integer +required: + - currency + - balance diff --git a/src/assets/openapi/components/schemas/BalanceFetchLedgerResponse.yaml b/src/assets/openapi/components/schemas/BalanceFetchLedgerResponse.yaml new file mode 100644 index 0000000..6b0c797 --- /dev/null +++ b/src/assets/openapi/components/schemas/BalanceFetchLedgerResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./BalanceFetchLedgerResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/BalanceFetchLedgerResponseArray.yaml b/src/assets/openapi/components/schemas/BalanceFetchLedgerResponseArray.yaml new file mode 100644 index 0000000..32ad7e9 --- /dev/null +++ b/src/assets/openapi/components/schemas/BalanceFetchLedgerResponseArray.yaml @@ -0,0 +1,36 @@ +type: object +properties: + integration: + type: integer + domain: + type: string + balance: + type: integer + currency: + type: string + difference: + type: integer + reason: + type: string + model_responsible: + type: string + model_row: + type: integer + id: + type: integer + createdAt: + type: string + updatedAt: + type: string +required: + - integration + - domain + - balance + - currency + - difference + - reason + - model_responsible + - model_row + - id + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/Bank.yaml b/src/assets/openapi/components/schemas/Bank.yaml new file mode 100644 index 0000000..86fbbf4 --- /dev/null +++ b/src/assets/openapi/components/schemas/Bank.yaml @@ -0,0 +1,8 @@ +type: object +properties: + code: + description: Customer's bank code + type: string + account_number: + description: Customer's account number + type: string diff --git a/src/assets/openapi/components/schemas/BankValidateRequest.yaml b/src/assets/openapi/components/schemas/BankValidateRequest.yaml new file mode 100644 index 0000000..ada9129 --- /dev/null +++ b/src/assets/openapi/components/schemas/BankValidateRequest.yaml @@ -0,0 +1,39 @@ +type: object +required: + - account_name + - account_number + - account_type + - bank_code + - country_code + - document_type +properties: + account_name: + description: Customer's first and last name registered with their bank + type: string + account_number: + description: Customer's account number + type: string + account_type: + description: The type of the customer's account number + type: string + enum: + - personal + - business + bank_code: + description: >- + The bank code of the customer’s bank. You can fetch the bank codes by + using our List Banks endpoint + type: string + country_code: + description: The two digit ISO code of the customer’s bank + type: string + document_type: + description: Customer’s mode of identity + type: string + enum: + - identityNumber + - passportNumber + - businessRegistrationNumber + document_number: + description: Customer’s mode of identity number + type: string diff --git a/src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponse.yaml b/src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponse.yaml new file mode 100644 index 0000000..67e03dd --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./BulkChargeFetchBulkBatchChargesResponseArray.yaml + meta: + type: object + properties: + perPage: + type: string + total: + type: integer + skipped: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - perPage + - total + - skipped + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponseArray.yaml b/src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponseArray.yaml new file mode 100644 index 0000000..3fca2ea --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeFetchBulkBatchChargesResponseArray.yaml @@ -0,0 +1,131 @@ +type: object +properties: + integration: + type: integer + bulkcharge: + type: integer + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + domain: + type: string + amount: + type: integer + at_least: + type: integer + currency: + type: string + reference: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + status: + type: string + message: + type: string + attempt_partial_debit: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string +required: + - integration + - bulkcharge + - customer + - authorization + - domain + - amount + - at_least + - currency + - reference + - metadata + - status + - message + - attempt_partial_debit + - id + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/BulkChargeFetchResponse.yaml b/src/assets/openapi/components/schemas/BulkChargeFetchResponse.yaml new file mode 100644 index 0000000..54d60ef --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeFetchResponse.yaml @@ -0,0 +1,44 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + batch_code: + type: string + reference: + type: string + id: + type: integer + integration: + type: integer + domain: + type: string + status: + type: string + total_charges: + type: integer + pending_charges: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - batch_code + - reference + - id + - integration + - domain + - status + - total_charges + - pending_charges + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/BulkChargeInitiate.yaml b/src/assets/openapi/components/schemas/BulkChargeInitiate.yaml new file mode 100644 index 0000000..ed9f593 --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeInitiate.yaml @@ -0,0 +1,11 @@ +type: object +required: + - authorization + - amount +properties: + authorization: + description: Customer's card authorization code + type: string + amount: + description: Amount to charge on the authorization + type: string diff --git a/src/assets/openapi/components/schemas/BulkChargeInitiateResponse.yaml b/src/assets/openapi/components/schemas/BulkChargeInitiateResponse.yaml new file mode 100644 index 0000000..54d60ef --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeInitiateResponse.yaml @@ -0,0 +1,44 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + batch_code: + type: string + reference: + type: string + id: + type: integer + integration: + type: integer + domain: + type: string + status: + type: string + total_charges: + type: integer + pending_charges: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - batch_code + - reference + - id + - integration + - domain + - status + - total_charges + - pending_charges + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/BulkChargeListResponse.yaml b/src/assets/openapi/components/schemas/BulkChargeListResponse.yaml new file mode 100644 index 0000000..5cdfb92 --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeListResponse.yaml @@ -0,0 +1,37 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./BulkChargeListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + anyOf: + - type: integer + - type: string + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/BulkChargeListResponseArray.yaml b/src/assets/openapi/components/schemas/BulkChargeListResponseArray.yaml new file mode 100644 index 0000000..84e5890 --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeListResponseArray.yaml @@ -0,0 +1,30 @@ +type: object +properties: + integration: + type: integer + domain: + type: string + batch_code: + type: string + status: + type: string + easy_cron_id: + nullable: true + reference: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string +required: + - integration + - domain + - batch_code + - status + - easy_cron_id + - reference + - id + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/BulkChargePauseResponse.yaml b/src/assets/openapi/components/schemas/BulkChargePauseResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargePauseResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/BulkChargeResumeResponse.yaml b/src/assets/openapi/components/schemas/BulkChargeResumeResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/BulkChargeResumeResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/ChannelOptionMobileMoneyArray.yaml b/src/assets/openapi/components/schemas/ChannelOptionMobileMoneyArray.yaml new file mode 100644 index 0000000..7ff7e9a --- /dev/null +++ b/src/assets/openapi/components/schemas/ChannelOptionMobileMoneyArray.yaml @@ -0,0 +1,18 @@ +type: object +properties: + key: + type: string + value: + type: string + isNew: + type: boolean + phoneNumberRegex: + type: string + phoneNumberPlaceholder: + type: string +required: + - key + - value + - isNew + - phoneNumberRegex + - phoneNumberPlaceholder diff --git a/src/assets/openapi/components/schemas/ChargeAuthorizationResponse.yaml b/src/assets/openapi/components/schemas/ChargeAuthorizationResponse.yaml new file mode 100644 index 0000000..6db5731 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeAuthorizationResponse.yaml @@ -0,0 +1,187 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + currency: + type: string + transaction_date: + type: string + status: + type: string + reference: + type: string + domain: + type: string + metadata: + type: string + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + ip_address: + nullable: true + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + properties: + calling_code: + type: string + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + id: + type: integer + required: + - amount + - currency + - transaction_date + - status + - reference + - domain + - metadata + - gateway_response + - message + - channel + - ip_address + - log + - fees + - authorization + - customer + - plan + - id +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml b/src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml new file mode 100644 index 0000000..e65fb66 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml @@ -0,0 +1,202 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + nullable: true + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeCreate.yaml b/src/assets/openapi/components/schemas/ChargeCreate.yaml new file mode 100644 index 0000000..0f9923b --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeCreate.yaml @@ -0,0 +1,38 @@ +type: object +required: + - email + - amount +properties: + email: + description: Customer's email address + type: string + amount: + description: >- + Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: string + authorization_code: + description: An authorization code to charge. + type: string + pin: + description: 4-digit PIN (send with a non-reusable authorization code) + type: string + reference: + description: >- + Unique transaction reference. Only -, .`, = and alphanumeric characters + allowed. + type: string + birthday: + description: The customer's birthday in the format YYYY-MM-DD e.g 2017-05-16 + type: string + format: date-time + device_id: + description: >- + This is the unique identifier of the device a user uses in making + payment. + + Only -, .`, = and alphanumeric characters are allowed. + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/ChargeCreateResponse.yaml b/src/assets/openapi/components/schemas/ChargeCreateResponse.yaml new file mode 100644 index 0000000..df4956e --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeCreateResponse.yaml @@ -0,0 +1,194 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeMobileMoneyResponse.yaml b/src/assets/openapi/components/schemas/ChargeMobileMoneyResponse.yaml new file mode 100644 index 0000000..604ee5f --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeMobileMoneyResponse.yaml @@ -0,0 +1,40 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transaction: + type: integer + phone: + type: string + provider: + type: string + channel_name: + type: string + display: + type: object + properties: + type: + type: string + message: + type: string + timer: + type: integer + required: + - type + - message + - timer + required: + - transaction + - phone + - provider + - channel_name + - display +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeResponse.yaml b/src/assets/openapi/components/schemas/ChargeResponse.yaml new file mode 100644 index 0000000..ab06b82 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeResponse.yaml @@ -0,0 +1,131 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + amount: + type: integer + currency: + type: string + transaction_date: + type: string + reference: + type: string + domain: + type: string + redirect_url: + type: string + nullable: true + metadata: + type: object + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + nullable: true + bin: + type: string + nullable: true + last4: + type: string + nullable: true + exp_month: + type: string + exp_year: + type: string + channel: + type: string + nullable: true + card_type: + type: string + nullable: true + bank: + type: string + nullable: true + country_code: + type: string + nullable: true + brand: + type: string + nullable: true + reusable: + type: boolean + signature: + type: string + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - email + - customer_code + - phone + - risk_action + url: + type: string + required: + - status + - amount + - currency + - transaction_date + - reference + - domain + - redirect_url + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml b/src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml new file mode 100644 index 0000000..039e0c8 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml @@ -0,0 +1,23 @@ +type: object +required: + - address + - reference + - city + - state + - zipcode +properties: + address: + description: Customer's address + type: string + city: + description: Customer's city + type: string + state: + description: Customer's state + type: string + zipcode: + description: Customer's zipcode + type: string + reference: + description: The reference of the ongoing transaction + type: string diff --git a/src/assets/openapi/components/schemas/ChargeSubmitBirthday.yaml b/src/assets/openapi/components/schemas/ChargeSubmitBirthday.yaml new file mode 100644 index 0000000..925ae1f --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitBirthday.yaml @@ -0,0 +1,11 @@ +type: object +required: + - birthday + - reference +properties: + birthday: + description: Customer's birthday in the format YYYY-MM-DD e.g 2016-09-21 + type: string + reference: + description: The reference of the ongoing transaction + type: string diff --git a/src/assets/openapi/components/schemas/ChargeSubmitBirthdayResponse.yaml b/src/assets/openapi/components/schemas/ChargeSubmitBirthdayResponse.yaml new file mode 100644 index 0000000..7e004d7 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitBirthdayResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + display_text: + type: string + required: + - status + - display_text +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml b/src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml new file mode 100644 index 0000000..c0a0dde --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml @@ -0,0 +1,11 @@ +type: object +required: + - otp + - reference +properties: + otp: + description: Customer's OTP + type: string + reference: + description: The reference of the ongoing transaction + type: string diff --git a/src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml b/src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml new file mode 100644 index 0000000..70fff71 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml @@ -0,0 +1,193 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeSubmitPhone.yaml b/src/assets/openapi/components/schemas/ChargeSubmitPhone.yaml new file mode 100644 index 0000000..990d0b6 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitPhone.yaml @@ -0,0 +1,11 @@ +type: object +required: + - phone + - reference +properties: + phone: + description: Customer's mobile number + type: string + reference: + description: The reference of the ongoing transaction + type: string diff --git a/src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml b/src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml new file mode 100644 index 0000000..36b20e6 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + display_text: + type: string + required: + - reference + - status + - display_text +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ChargeSubmitPin.yaml b/src/assets/openapi/components/schemas/ChargeSubmitPin.yaml new file mode 100644 index 0000000..82a5f91 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitPin.yaml @@ -0,0 +1,11 @@ +type: object +required: + - pin + - reference +properties: + pin: + description: Customer's PIN + type: string + reference: + description: Transaction reference that requires the PIN + type: string diff --git a/src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml b/src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml new file mode 100644 index 0000000..70fff71 --- /dev/null +++ b/src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml @@ -0,0 +1,193 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ControlPanelFetchPaymentSessionTimeoutResponse.yaml b/src/assets/openapi/components/schemas/ControlPanelFetchPaymentSessionTimeoutResponse.yaml new file mode 100644 index 0000000..7947de1 --- /dev/null +++ b/src/assets/openapi/components/schemas/ControlPanelFetchPaymentSessionTimeoutResponse.yaml @@ -0,0 +1,17 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + payment_session_timeout: + type: integer + required: + - payment_session_timeout +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ControlPanelUpdatePaymentSessionTimeoutResponse.yaml b/src/assets/openapi/components/schemas/ControlPanelUpdatePaymentSessionTimeoutResponse.yaml new file mode 100644 index 0000000..7947de1 --- /dev/null +++ b/src/assets/openapi/components/schemas/ControlPanelUpdatePaymentSessionTimeoutResponse.yaml @@ -0,0 +1,17 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + payment_session_timeout: + type: integer + required: + - payment_session_timeout +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/Currency.yaml b/src/assets/openapi/components/schemas/Currency.yaml new file mode 100644 index 0000000..7521370 --- /dev/null +++ b/src/assets/openapi/components/schemas/Currency.yaml @@ -0,0 +1,9 @@ +description: List of all support currencies +type: string +enum: + - GHS + - KES + - NGN + - ZAR + - USD +example: GHS diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAccount.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAccount.yaml new file mode 100644 index 0000000..ccf0362 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAccount.yaml @@ -0,0 +1,13 @@ +type: object +properties: + number: + type: string + description: The customer's account number + example: '0123456789' + bank_code: + type: string + description: The code representing the customer's bank + example: '058' +required: + - number + - bank_code diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAddress.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAddress.yaml new file mode 100644 index 0000000..68c72e9 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeAddress.yaml @@ -0,0 +1,18 @@ +type: object +properties: + street: + type: string + description: The customer's street + example: 123 Main Street + city: + type: string + description: The customer's city + example: Lagos + state: + type: string + description: The customer's state + example: Lagos +required: + - street + - city + - state diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml new file mode 100644 index 0000000..d210a06 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml @@ -0,0 +1,25 @@ +type: object +required: + - email + - channel +properties: + email: + type: string + description: Customer's email address + example: ravi@demo.com + channel: + type: string + description: direct-debit is the only supported option for now + enum: + - direct_debit + example: direct_debit + callback_url: + type: string + description: >- + Fully qualified url (e.g. https://example.com/) to redirect your customer + to + example: http://test.url.com + account: + $ref: ./CustomerAuthorizationInitializeAccount.yaml + address: + $ref: ./CustomerAuthorizationInitializeAddress.yaml diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponse.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponse.yaml new file mode 100644 index 0000000..f31dbed --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + example: true + message: + type: string + example: Authorization initialized + data: + $ref: ./CustomerAuthorizationInitializeResponseData.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponseData.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponseData.yaml new file mode 100644 index 0000000..4275d81 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeResponseData.yaml @@ -0,0 +1,15 @@ +type: object +properties: + redirect_url: + type: string + example: https://checkout.paystack.com/82t4mp5b5mfn51h + access_code: + type: string + example: 82t4mp5b5mfn51h + reference: + type: string + example: dfbzfotsrbv4n5s82t4mp5b5mfn51h +required: + - redirect_url + - access_code + - reference diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponse.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponse.yaml new file mode 100644 index 0000000..5ca48a8 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + example: true + message: + type: string + example: Authorization retrieved successfully + data: + $ref: ./CustomerAuthorizationVerifyResponseData.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseCustomer.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseCustomer.yaml new file mode 100644 index 0000000..58603ae --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseCustomer.yaml @@ -0,0 +1,11 @@ +type: object +properties: + code: + type: string + example: CUS_24lze1c8i2zl76y + email: + type: string + example: ravi@demo.com +required: + - code + - email diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseData.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseData.yaml new file mode 100644 index 0000000..62c166f --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationVerifyResponseData.yaml @@ -0,0 +1,22 @@ +type: object +properties: + authorization_code: + type: string + example: AUTH_JV4T9Wawdj + channel: + type: string + example: direct_debit + bank: + type: string + example: Guaranty Trust Bank + active: + type: boolean + example: true + customer: + $ref: ./CustomerAuthorizationVerifyResponseCustomer.yaml +required: + - authorization_code + - channel + - bank + - active + - customer diff --git a/src/assets/openapi/components/schemas/CustomerCreate.yaml b/src/assets/openapi/components/schemas/CustomerCreate.yaml new file mode 100644 index 0000000..c40c918 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerCreate.yaml @@ -0,0 +1,19 @@ +type: object +required: + - email +properties: + email: + description: Customer's email address + type: string + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone number + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/CustomerCreateResponse.yaml b/src/assets/openapi/components/schemas/CustomerCreateResponse.yaml new file mode 100644 index 0000000..e171d2c --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerCreateResponse.yaml @@ -0,0 +1,71 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + email: + type: string + first_name: + type: string + last_name: + type: string + phone: + type: string + integration: + type: integer + domain: + type: string + metadata: + type: object + properties: + calling_code: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - email + - first_name + - last_name + - phone + - integration + - domain + - metadata + - customer_code + - risk_action + - id + - createdAt + - updatedAt + - identified + - identifications +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/CustomerDeactivateAuthorization.yaml b/src/assets/openapi/components/schemas/CustomerDeactivateAuthorization.yaml new file mode 100644 index 0000000..e50df8e --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerDeactivateAuthorization.yaml @@ -0,0 +1,7 @@ +type: object +required: + - authorization_code +properties: + authorization_code: + description: Authorization code to be deactivated + type: string diff --git a/src/assets/openapi/components/schemas/CustomerDeactivateAuthorizationResponse.yaml b/src/assets/openapi/components/schemas/CustomerDeactivateAuthorizationResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerDeactivateAuthorizationResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeRequest.yaml b/src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeRequest.yaml new file mode 100644 index 0000000..bb08524 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeRequest.yaml @@ -0,0 +1,8 @@ +type: object +required: + - authorization_id +properties: + authorization_id: + type: integer + description: The authorization ID gotten from the initiation response + example: 1069309917 diff --git a/src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeResponse.yaml b/src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeResponse.yaml new file mode 100644 index 0000000..e955e65 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerDirectDebitActivationChargeResponse.yaml @@ -0,0 +1,11 @@ +type: object +properties: + status: + type: boolean + example: true + message: + type: string + example: Mandate is queued for retry +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponse.yaml b/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponse.yaml new file mode 100644 index 0000000..89df1b9 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponse.yaml @@ -0,0 +1,19 @@ +type: object +properties: + status: + type: boolean + example: true + message: + type: string + example: Mandate authorizations retrieved successfully + data: + type: array + items: + $ref: ./CustomerFetchMandateAuthorizationsResponseData.yaml + meta: + $ref: ./CustomerFetchMandateAuthorizationsResponseMeta.yaml +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseData.yaml b/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseData.yaml new file mode 100644 index 0000000..7547f96 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseData.yaml @@ -0,0 +1,62 @@ +type: object +properties: + id: + type: integer + example: 164098 + status: + type: string + example: active + mandate_id: + type: integer + example: 512003 + authorization_id: + type: integer + example: 110049014 + authorization_code: + type: string + example: AUTH_8Lol0pNt14 + integration_id: + type: integer + example: 463433 + account_number: + type: string + example: '0123456789' + bank_code: + type: string + example: '032' + bank_name: + type: string + example: null + customer: + type: object + properties: + id: + type: integer + example: 43975700 + customer_code: + type: string + example: CUS_2eusy8uwe34s23fy + email: + type: string + example: customer@email.com + first_name: + type: string + example: Smith + last_name: + type: string + example: Bel + authorized_at: + type: string + format: date-time + example: '2024-09-27T10:57:53.824Z' +required: + - id + - status + - mandate_id + - authorization_id + - authorization_code + - integration_id + - account_number + - bank_code + - customer + - authorized_at diff --git a/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseMeta.yaml b/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseMeta.yaml new file mode 100644 index 0000000..ec6cc0a --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerFetchMandateAuthorizationsResponseMeta.yaml @@ -0,0 +1,18 @@ +type: object +properties: + per_page: + type: integer + example: 50 + next: + type: string + example: null + count: + type: integer + example: 1 + total: + type: integer + example: 1 +required: + - per_page + - count + - total diff --git a/src/assets/openapi/components/schemas/CustomerFetchResponse.yaml b/src/assets/openapi/components/schemas/CustomerFetchResponse.yaml new file mode 100644 index 0000000..1ecfeb9 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerFetchResponse.yaml @@ -0,0 +1,92 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + created_at: + type: string + updated_at: + type: string + total_transactions: + type: integer + total_transaction_value: + type: array + items: {} + dedicated_account: + nullable: true + dedicated_accounts: + type: array + items: {} + nullable: true + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - created_at + - updated_at + - total_transactions + - total_transaction_value + - dedicated_account + - dedicated_accounts + - identified + - identifications +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAccount.yaml b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAccount.yaml new file mode 100644 index 0000000..ccf0362 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAccount.yaml @@ -0,0 +1,13 @@ +type: object +properties: + number: + type: string + description: The customer's account number + example: '0123456789' + bank_code: + type: string + description: The code representing the customer's bank + example: '058' +required: + - number + - bank_code diff --git a/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAddress.yaml b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAddress.yaml new file mode 100644 index 0000000..2497561 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitAddress.yaml @@ -0,0 +1,18 @@ +type: object +properties: + street: + type: string + description: The customer's street + example: Some Where + city: + type: string + description: The customer's city + example: Ikeja + state: + type: string + description: The customer's state + example: Lagos +required: + - street + - city + - state diff --git a/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitRequest.yaml b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitRequest.yaml new file mode 100644 index 0000000..b430efb --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitRequest.yaml @@ -0,0 +1,9 @@ +type: object +required: + - account + - address +properties: + account: + $ref: ./CustomerInitializeDirectDebitAccount.yaml + address: + $ref: ./CustomerInitializeDirectDebitAddress.yaml diff --git a/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponse.yaml b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponse.yaml new file mode 100644 index 0000000..72b568f --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + example: true + message: + type: string + example: Authorization initialized + data: + $ref: ./CustomerInitializeDirectDebitResponseData.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponseData.yaml b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponseData.yaml new file mode 100644 index 0000000..4ea08eb --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerInitializeDirectDebitResponseData.yaml @@ -0,0 +1,15 @@ +type: object +properties: + redirect_url: + type: string + example: https://link.paystack.com/ll6b0szngj1f27k + access_code: + type: string + example: ll6b0szngj1f27k + reference: + type: string + example: 1er945lpy4txyki +required: + - redirect_url + - access_code + - reference diff --git a/src/assets/openapi/components/schemas/CustomerListResponse.yaml b/src/assets/openapi/components/schemas/CustomerListResponse.yaml new file mode 100644 index 0000000..b267a1d --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerListResponse.yaml @@ -0,0 +1,37 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./CustomerListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + anyOf: + - type: string + - type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/CustomerListResponseArray.yaml b/src/assets/openapi/components/schemas/CustomerListResponseArray.yaml new file mode 100644 index 0000000..3fa40f4 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerListResponseArray.yaml @@ -0,0 +1,43 @@ +type: object +properties: + integration: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string +required: + - integration + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/CustomerRiskAction.yaml b/src/assets/openapi/components/schemas/CustomerRiskAction.yaml new file mode 100644 index 0000000..c0dd589 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerRiskAction.yaml @@ -0,0 +1,14 @@ +type: object +required: + - customer +properties: + customer: + description: Customer's code, or email address + type: string + risk_action: + description: > + One of the possible risk actions [ default, allow, deny ]. allow to + whitelist. + + deny to blacklist. Customers start with a default risk action. + type: string diff --git a/src/assets/openapi/components/schemas/CustomerRiskActionResponse.yaml b/src/assets/openapi/components/schemas/CustomerRiskActionResponse.yaml new file mode 100644 index 0000000..4be802b --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerRiskActionResponse.yaml @@ -0,0 +1,68 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - identified + - identifications +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/CustomerUpdate.yaml b/src/assets/openapi/components/schemas/CustomerUpdate.yaml new file mode 100644 index 0000000..b1b1096 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerUpdate.yaml @@ -0,0 +1,14 @@ +type: object +properties: + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone number + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/CustomerUpdateResponse.yaml b/src/assets/openapi/components/schemas/CustomerUpdateResponse.yaml new file mode 100644 index 0000000..27d2131 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerUpdateResponse.yaml @@ -0,0 +1,56 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - identified + - identifications +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/CustomerValidate.yaml b/src/assets/openapi/components/schemas/CustomerValidate.yaml new file mode 100644 index 0000000..63f8428 --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerValidate.yaml @@ -0,0 +1,39 @@ +type: object +required: + - first_name + - last_name + - type + - country + - bvn + - bank_code + - account_number +properties: + first_name: + description: Customer's first name + type: string + middle_name: + description: Customer's middle name + type: string + last_name: + description: Customer's last name + type: string + type: + description: Predefined types of identification. + type: string + value: + description: Customer's identification number. Required if type is bvn + type: string + country: + description: Two-letter country code of identification issuer + type: string + bvn: + description: Customer's Bank Verification Number + type: string + bank_code: + description: >- + You can get the list of bank codes by calling the List Banks endpoint + (https://api.paystack.co/bank). + type: string + account_number: + description: Customer's bank account number. + type: string diff --git a/src/assets/openapi/components/schemas/CustomerValidateResponse.yaml b/src/assets/openapi/components/schemas/CustomerValidateResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerValidateResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/CustomerWhitelistBlacklistResponse.yaml b/src/assets/openapi/components/schemas/CustomerWhitelistBlacklistResponse.yaml new file mode 100644 index 0000000..4be802b --- /dev/null +++ b/src/assets/openapi/components/schemas/CustomerWhitelistBlacklistResponse.yaml @@ -0,0 +1,68 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - identified + - identifications +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DedicatedNubanCreateResponse.yaml b/src/assets/openapi/components/schemas/DedicatedNubanCreateResponse.yaml new file mode 100644 index 0000000..b5517ef --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedNubanCreateResponse.yaml @@ -0,0 +1,114 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + account_name: + type: string + account_number: + type: string + assigned: + type: boolean + currency: + type: string + metadata: + nullable: true + active: + type: boolean + id: + type: integer + created_at: + type: string + updated_at: + type: string + assignment: + type: object + properties: + integration: + type: integer + assignee_id: + type: integer + assignee_type: + type: string + expired: + type: boolean + account_type: + type: string + assigned_at: + type: string + expired_at: + nullable: true + required: + - integration + - assignee_id + - assignee_type + - expired + - account_type + - assigned_at + - expired_at + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + required: + - bank + - account_name + - account_number + - assigned + - currency + - metadata + - active + - id + - created_at + - updated_at + - assignment + - customer +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DedicatedNubanDeactivateResponse.yaml b/src/assets/openapi/components/schemas/DedicatedNubanDeactivateResponse.yaml new file mode 100644 index 0000000..82733f0 --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedNubanDeactivateResponse.yaml @@ -0,0 +1,75 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + account_name: + type: string + account_number: + type: string + assigned: + type: boolean + currency: + type: string + metadata: + nullable: true + active: + type: boolean + id: + type: integer + created_at: + type: string + updated_at: + type: string + assignment: + type: object + properties: + assignee_id: + type: integer + assignee_type: + type: string + assigned_at: + type: string + integration: + type: integer + account_type: + type: string + required: + - assignee_id + - assignee_type + - assigned_at + - integration + - account_type + required: + - bank + - account_name + - account_number + - assigned + - currency + - metadata + - active + - id + - created_at + - updated_at + - assignment +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DedicatedNubanFetchResponse.yaml b/src/assets/openapi/components/schemas/DedicatedNubanFetchResponse.yaml new file mode 100644 index 0000000..be8ee68 --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedNubanFetchResponse.yaml @@ -0,0 +1,88 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + id: + type: integer + account_name: + type: string + account_number: + type: string + created_at: + type: string + updated_at: + type: string + currency: + type: string + split_config: + nullable: true + active: + type: boolean + assigned: + type: boolean + required: + - customer + - bank + - id + - account_name + - account_number + - created_at + - updated_at + - currency + - split_config + - active + - assigned +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DedicatedNubanListResponse.yaml b/src/assets/openapi/components/schemas/DedicatedNubanListResponse.yaml new file mode 100644 index 0000000..4385afd --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedNubanListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./DedicatedNubanListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/DedicatedNubanListResponseArray.yaml b/src/assets/openapi/components/schemas/DedicatedNubanListResponseArray.yaml new file mode 100644 index 0000000..fb34bab --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedNubanListResponseArray.yaml @@ -0,0 +1,71 @@ +type: object +properties: + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + risk_action: + type: string + international_format_phone: + type: string + nullable: true + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + id: + type: integer + account_name: + type: string + account_number: + type: string + created_at: + type: string + updated_at: + type: string + currency: + type: string + split_config: + type: object + properties: + subaccount: + type: string + required: + - subaccount + nullable: true + active: + type: boolean + assigned: + type: boolean +required: + - customer + - bank + - id + - account_name + - account_number + - created_at + - updated_at + - currency + - split_config + - active + - assigned diff --git a/src/assets/openapi/components/schemas/DedicatedVirtualAccountAssign.yaml b/src/assets/openapi/components/schemas/DedicatedVirtualAccountAssign.yaml new file mode 100644 index 0000000..5339c78 --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedVirtualAccountAssign.yaml @@ -0,0 +1,48 @@ +type: object +required: + - email + - first_name + - last_name + - phone + - preferred_bank + - country +properties: + email: + description: Customer's email address + type: string + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone name + type: string + preferred_bank: + description: > + The bank slug for preferred bank. To get a list of available banks, + + use the List Banks endpoint, passing `pay_with_bank_transfer=true` query + parameter + type: string + country: + description: Currently accepts NG only + type: string + account_number: + description: Customer's account number + type: string + bvn: + description: Customer's Bank Verification Number + type: string + bank_code: + description: Customer's bank code + type: string + subaccount: + description: Subaccount code of the account you want to split the transaction with + type: string + split_code: + description: >- + Split code consisting of the lists of accounts you want to split the + transaction with + type: string diff --git a/src/assets/openapi/components/schemas/DedicatedVirtualAccountCreate.yaml b/src/assets/openapi/components/schemas/DedicatedVirtualAccountCreate.yaml new file mode 100644 index 0000000..e48b2a5 --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedVirtualAccountCreate.yaml @@ -0,0 +1,20 @@ +type: object +required: + - customer +properties: + customer: + description: Customer ID or code + type: string + preferred_bank: + description: >- + The bank slug for preferred bank. To get a list of available banks, use + the List Providers endpoint + type: string + subaccount: + description: Subaccount code of the account you want to split the transaction with + type: string + split_code: + description: >- + Split code consisting of the lists of accounts you want to split the + transaction with + type: string diff --git a/src/assets/openapi/components/schemas/DedicatedVirtualAccountSplit.yaml b/src/assets/openapi/components/schemas/DedicatedVirtualAccountSplit.yaml new file mode 100644 index 0000000..75b93fb --- /dev/null +++ b/src/assets/openapi/components/schemas/DedicatedVirtualAccountSplit.yaml @@ -0,0 +1,15 @@ +type: object +required: + - account_number +properties: + account_number: + description: Valid Dedicated virtual account + type: string + subaccount: + description: Subaccount code of the account you want to split the transaction with + type: string + split_code: + description: >- + Split code consisting of the lists of accounts you want to split the + transaction with + type: string diff --git a/src/assets/openapi/components/schemas/DirectDebitActivationChargeRequest.yaml b/src/assets/openapi/components/schemas/DirectDebitActivationChargeRequest.yaml new file mode 100644 index 0000000..8a3d650 --- /dev/null +++ b/src/assets/openapi/components/schemas/DirectDebitActivationChargeRequest.yaml @@ -0,0 +1,12 @@ +type: object +required: + - customer_ids +properties: + customer_ids: + type: array + description: Array of customer IDs to trigger activation charge for + items: + type: integer + example: + - 28958104 + - 983697220 diff --git a/src/assets/openapi/components/schemas/DirectDebitActivationChargeResponse.yaml b/src/assets/openapi/components/schemas/DirectDebitActivationChargeResponse.yaml new file mode 100644 index 0000000..e955e65 --- /dev/null +++ b/src/assets/openapi/components/schemas/DirectDebitActivationChargeResponse.yaml @@ -0,0 +1,11 @@ +type: object +properties: + status: + type: boolean + example: true + message: + type: string + example: Mandate is queued for retry +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationCustomer.yaml b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationCustomer.yaml new file mode 100644 index 0000000..b210ac7 --- /dev/null +++ b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationCustomer.yaml @@ -0,0 +1,23 @@ +type: object +properties: + id: + type: integer + example: 28958104 + customer_code: + type: string + example: CUS_5kye9bc41uw15pb + email: + type: string + example: customer@email.com + first_name: + type: string + example: Booker + last_name: + type: string + example: Jones +required: + - id + - customer_code + - email + - first_name + - last_name diff --git a/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationData.yaml b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationData.yaml new file mode 100644 index 0000000..1280ba1 --- /dev/null +++ b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationData.yaml @@ -0,0 +1,47 @@ +type: object +properties: + id: + type: integer + example: 112244 + status: + type: string + example: active + mandate_id: + type: integer + example: 1560169 + authorization_id: + type: integer + example: 1069309917 + authorization_code: + type: string + example: AUTH_lEt8QgrSfW + integration_id: + type: integer + example: 463433 + account_number: + type: string + example: '0123456789' + bank_code: + type: string + example: '058' + bank_name: + type: string + example: Guaranty Trust Bank + customer: + $ref: ./DirectDebitMandateAuthorizationCustomer.yaml + authorized_at: + type: string + format: date-time + example: '2025-06-23T12:47:10.632Z' +required: + - id + - status + - mandate_id + - authorization_id + - authorization_code + - integration_id + - account_number + - bank_code + - bank_name + - customer + - authorized_at diff --git a/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationListResponse.yaml b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationListResponse.yaml new file mode 100644 index 0000000..1248934 --- /dev/null +++ b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationListResponse.yaml @@ -0,0 +1,19 @@ +type: object +properties: + status: + type: boolean + example: true + message: + type: string + example: Mandate authorizations retrieved successfully + data: + type: array + items: + $ref: ./DirectDebitMandateAuthorizationData.yaml + meta: + $ref: ./DirectDebitMandateAuthorizationMeta.yaml +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationMeta.yaml b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationMeta.yaml new file mode 100644 index 0000000..6e9b3cd --- /dev/null +++ b/src/assets/openapi/components/schemas/DirectDebitMandateAuthorizationMeta.yaml @@ -0,0 +1,18 @@ +type: object +properties: + per_page: + type: integer + example: 10 + next: + type: string + example: MTI1OTc= + count: + type: integer + example: 10 + total: + type: integer + example: 40 +required: + - per_page + - count + - total diff --git a/src/assets/openapi/components/schemas/DisputeAddEvidenceResponse.yaml b/src/assets/openapi/components/schemas/DisputeAddEvidenceResponse.yaml new file mode 100644 index 0000000..42c53e2 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeAddEvidenceResponse.yaml @@ -0,0 +1,44 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + customer_email: + type: string + customer_name: + type: string + customer_phone: + type: string + service_details: + type: string + delivery_address: + type: string + delivery_date: + type: string + dispute: + type: integer + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - customer_email + - customer_name + - customer_phone + - service_details + - delivery_address + - delivery_date + - dispute + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DisputeEvidence.yaml b/src/assets/openapi/components/schemas/DisputeEvidence.yaml new file mode 100644 index 0000000..01e9b4f --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeEvidence.yaml @@ -0,0 +1,26 @@ +type: object +required: + - customer_email + - customer_name + - customer_phone + - service_details +properties: + customer_email: + description: Customer email + type: string + customer_name: + description: Customer name + type: string + customer_phone: + description: Customer mobile number + type: string + service_details: + description: Details of service offered + type: string + delivery_address: + description: Delivery address + type: string + delivery_date: + description: ISO 8601 representation of delivery date (YYYY-MM-DD) + type: string + format: date-time diff --git a/src/assets/openapi/components/schemas/DisputeExportResponse.yaml b/src/assets/openapi/components/schemas/DisputeExportResponse.yaml new file mode 100644 index 0000000..839e1c8 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeExportResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + path: + type: string + expiresAt: + type: string + required: + - path + - expiresAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DisputeFetchResponse.yaml b/src/assets/openapi/components/schemas/DisputeFetchResponse.yaml new file mode 100644 index 0000000..d4ad951 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeFetchResponse.yaml @@ -0,0 +1,222 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: ./DisputeHistoryArray.yaml + messages: + type: array + items: + $ref: ./DisputeMessagesArray.yaml + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DisputeHistoryArray.yaml b/src/assets/openapi/components/schemas/DisputeHistoryArray.yaml new file mode 100644 index 0000000..3bfd7df --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeHistoryArray.yaml @@ -0,0 +1,12 @@ +type: object +properties: + status: + type: string + by: + type: string + createdAt: + type: string +required: + - status + - by + - createdAt diff --git a/src/assets/openapi/components/schemas/DisputeListResponse.yaml b/src/assets/openapi/components/schemas/DisputeListResponse.yaml new file mode 100644 index 0000000..4390cf0 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./DisputeListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/DisputeListResponseArray.yaml b/src/assets/openapi/components/schemas/DisputeListResponseArray.yaml new file mode 100644 index 0000000..8fce723 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeListResponseArray.yaml @@ -0,0 +1,193 @@ +type: object +properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + customer: + nullable: true + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: ./DisputeHistoryArray.yaml + messages: + type: array + items: + $ref: ./DisputeMessagesArray.yaml + createdAt: + type: string + updatedAt: + type: string +required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml b/src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml new file mode 100644 index 0000000..dd66307 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml @@ -0,0 +1,200 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + history: + type: array + items: + $ref: ./DisputeHistoryArray.yaml + messages: + type: array + items: + $ref: ./DisputeMessagesArray.yaml + currency: + type: string + last4: + type: string + bin: + type: string + transaction_reference: + nullable: true + merchant_transaction_reference: + type: string + refund_amount: + type: integer + status: + type: string + domain: + type: string + resolution: + nullable: true + category: + type: string + note: + nullable: true + attachments: + nullable: true + id: + type: integer + integration: + type: integer + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + type: object + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + created_by: + type: integer + evidence: + nullable: true + resolvedAt: + nullable: true + createdAt: + type: string + updatedAt: + type: string + dueAt: + nullable: true + required: + - history + - messages + - currency + - last4 + - bin + - transaction_reference + - merchant_transaction_reference + - refund_amount + - status + - domain + - resolution + - category + - note + - attachments + - id + - integration + - transaction + - created_by + - evidence + - resolvedAt + - createdAt + - updatedAt + - dueAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DisputeMessagesArray.yaml b/src/assets/openapi/components/schemas/DisputeMessagesArray.yaml new file mode 100644 index 0000000..41b1cdf --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeMessagesArray.yaml @@ -0,0 +1,12 @@ +type: object +properties: + sender: + type: string + body: + type: string + createdAt: + type: string +required: + - sender + - body + - createdAt diff --git a/src/assets/openapi/components/schemas/DisputeResolve.yaml b/src/assets/openapi/components/schemas/DisputeResolve.yaml new file mode 100644 index 0000000..e18d4a5 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeResolve.yaml @@ -0,0 +1,24 @@ +type: object +required: + - resolution + - message + - refund_amount + - uploaded_filename +properties: + resolution: + description: Dispute resolution. Accepted values, merchant-accepted, declined + type: string + message: + description: Reason for resolving + type: string + refund_amount: + description: >- + The amount to refund, in kobo if currency is NGN, pesewas, if currency is + GHS, and cents, if currency is ZAR + type: string + uploaded_filename: + description: Filename of attachment returned via response from the Dispute upload URL + type: string + evidence: + description: Evidence Id for fraud claims + type: integer diff --git a/src/assets/openapi/components/schemas/DisputeResolveResponse.yaml b/src/assets/openapi/components/schemas/DisputeResolveResponse.yaml new file mode 100644 index 0000000..1d7057d --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeResolveResponse.yaml @@ -0,0 +1,100 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + currency: + type: string + last4: + type: string + bin: + type: string + transaction_reference: + nullable: true + merchant_transaction_reference: + type: string + refund_amount: + type: integer + status: + type: string + domain: + type: string + resolution: + type: string + category: + type: string + note: + nullable: true + attachments: + type: string + id: + type: integer + integration: + type: integer + transaction: + type: integer + created_by: + type: integer + evidence: + type: integer + resolvedAt: + type: string + createdAt: + type: string + updatedAt: + type: string + dueAt: + nullable: true + message: + type: object + properties: + dispute: + type: integer + sender: + type: string + body: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - dispute + - sender + - body + - id + - createdAt + - updatedAt + required: + - currency + - last4 + - bin + - transaction_reference + - merchant_transaction_reference + - refund_amount + - status + - domain + - resolution + - category + - note + - attachments + - id + - integration + - transaction + - created_by + - evidence + - resolvedAt + - createdAt + - updatedAt + - dueAt + - message +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DisputeUpdate.yaml b/src/assets/openapi/components/schemas/DisputeUpdate.yaml new file mode 100644 index 0000000..451816a --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeUpdate.yaml @@ -0,0 +1,12 @@ +type: object +required: + - refund_amount +properties: + refund_amount: + description: >- + The amount to refund, in kobo if currency is NGN, pesewas, if currency is + GHS, and cents, if currency is ZAR + type: string + uploaded_filename: + description: Filename of attachment returned via response from the Dispute upload URL + type: string diff --git a/src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml b/src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml new file mode 100644 index 0000000..d4ad951 --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml @@ -0,0 +1,222 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: ./DisputeHistoryArray.yaml + messages: + type: array + items: + $ref: ./DisputeMessagesArray.yaml + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/DisputeUploadURLResponse.yaml b/src/assets/openapi/components/schemas/DisputeUploadURLResponse.yaml new file mode 100644 index 0000000..9b6eccd --- /dev/null +++ b/src/assets/openapi/components/schemas/DisputeUploadURLResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + signedUrl: + type: string + fileName: + type: string + required: + - signedUrl + - fileName +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/EFT.yaml b/src/assets/openapi/components/schemas/EFT.yaml new file mode 100644 index 0000000..d2dc346 --- /dev/null +++ b/src/assets/openapi/components/schemas/EFT.yaml @@ -0,0 +1,5 @@ +type: object +properties: + provider: + description: The EFT provider + type: string diff --git a/src/assets/openapi/components/schemas/EftDebitOrderCreateMandateResponse.yaml b/src/assets/openapi/components/schemas/EftDebitOrderCreateMandateResponse.yaml new file mode 100644 index 0000000..3967609 --- /dev/null +++ b/src/assets/openapi/components/schemas/EftDebitOrderCreateMandateResponse.yaml @@ -0,0 +1,80 @@ +type: object +properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at +required: + - status + - type + - code + - message + - data diff --git a/src/assets/openapi/components/schemas/EftDebitOrderFetchMandateResponse.yaml b/src/assets/openapi/components/schemas/EftDebitOrderFetchMandateResponse.yaml new file mode 100644 index 0000000..3967609 --- /dev/null +++ b/src/assets/openapi/components/schemas/EftDebitOrderFetchMandateResponse.yaml @@ -0,0 +1,80 @@ +type: object +properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at +required: + - status + - type + - code + - message + - data diff --git a/src/assets/openapi/components/schemas/EftDebitOrderListMandateResponse.yaml b/src/assets/openapi/components/schemas/EftDebitOrderListMandateResponse.yaml new file mode 100644 index 0000000..34456d8 --- /dev/null +++ b/src/assets/openapi/components/schemas/EftDebitOrderListMandateResponse.yaml @@ -0,0 +1,41 @@ +type: object +properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: array + items: + $ref: ./EftDebitOrderListMandateResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - type + - code + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/EftDebitOrderListMandateResponseArray.yaml b/src/assets/openapi/components/schemas/EftDebitOrderListMandateResponseArray.yaml new file mode 100644 index 0000000..696bde6 --- /dev/null +++ b/src/assets/openapi/components/schemas/EftDebitOrderListMandateResponseArray.yaml @@ -0,0 +1,63 @@ +type: object +properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string +required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at diff --git a/src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponse.yaml b/src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponse.yaml new file mode 100644 index 0000000..eb5f318 --- /dev/null +++ b/src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponse.yaml @@ -0,0 +1,41 @@ +type: object +properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: array + items: + $ref: ./EftDebitOrderLogMandateResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - type + - code + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponseArray.yaml b/src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponseArray.yaml new file mode 100644 index 0000000..fdd044c --- /dev/null +++ b/src/assets/openapi/components/schemas/EftDebitOrderLogMandateResponseArray.yaml @@ -0,0 +1,95 @@ +type: object +properties: + id: + type: integer + action: + type: string + performed_by: + nullable: true + ip_address: + type: string + domain: + type: string + integration: + type: integer + object: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at + delta: + nullable: true + created_at: + type: string + updated_at: + type: string +required: + - id + - action + - performed_by + - ip_address + - domain + - integration + - object + - delta + - created_at + - updated_at diff --git a/src/assets/openapi/components/schemas/EftDebitOrderUpdateMandateResponse.yaml b/src/assets/openapi/components/schemas/EftDebitOrderUpdateMandateResponse.yaml new file mode 100644 index 0000000..3967609 --- /dev/null +++ b/src/assets/openapi/components/schemas/EftDebitOrderUpdateMandateResponse.yaml @@ -0,0 +1,80 @@ +type: object +properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at +required: + - status + - type + - code + - message + - data diff --git a/src/assets/openapi/components/schemas/Error.yaml b/src/assets/openapi/components/schemas/Error.yaml new file mode 100644 index 0000000..67a738d --- /dev/null +++ b/src/assets/openapi/components/schemas/Error.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + description: An indicator for the state of the request + message: + type: string + description: A short description of the error + meta: + $ref: ./ErrorMeta.yaml + type: + type: string + description: A tag to indicate the type of the error + code: + type: string + description: The error code + enum: + - validation_error + - processor_error + - api_error + errorCodeMappingNotFound: + type: boolean + description: An indicator for error mapping for the request diff --git a/src/assets/openapi/components/schemas/ErrorMeta.yaml b/src/assets/openapi/components/schemas/ErrorMeta.yaml new file mode 100644 index 0000000..07a0d72 --- /dev/null +++ b/src/assets/openapi/components/schemas/ErrorMeta.yaml @@ -0,0 +1,6 @@ +type: object +description: Extra details to help with a resolution of the error +properties: + nextStep: + type: string + description: A summarised solution for the error diff --git a/src/assets/openapi/components/schemas/ErrorRecordsArray.yaml b/src/assets/openapi/components/schemas/ErrorRecordsArray.yaml new file mode 100644 index 0000000..2382774 --- /dev/null +++ b/src/assets/openapi/components/schemas/ErrorRecordsArray.yaml @@ -0,0 +1,24 @@ +type: object +properties: + type: + type: string + name: + type: string + description: + type: string + account_number: + type: string + bank_code: + type: string + currency: + type: string + email: + type: string +required: + - type + - name + - description + - account_number + - bank_code + - currency + - email diff --git a/src/assets/openapi/components/schemas/FormulaSubaccountsArray.yaml b/src/assets/openapi/components/schemas/FormulaSubaccountsArray.yaml new file mode 100644 index 0000000..f98ee74 --- /dev/null +++ b/src/assets/openapi/components/schemas/FormulaSubaccountsArray.yaml @@ -0,0 +1,24 @@ +type: object +properties: + original_share: + type: number + fees: + type: integer + share: + type: integer + subaccount_code: + type: string + id: + type: integer + name: + type: string + integration: + type: string +required: + - original_share + - fees + - share + - subaccount_code + - id + - name + - integration diff --git a/src/assets/openapi/components/schemas/InitializeAuthorizationCardResponse.yaml b/src/assets/openapi/components/schemas/InitializeAuthorizationCardResponse.yaml new file mode 100644 index 0000000..71c279e --- /dev/null +++ b/src/assets/openapi/components/schemas/InitializeAuthorizationCardResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + authorizationAccessCode: + type: string + action: + type: string + value: + type: string + required: + - authorizationAccessCode + - action + - value +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/InitializeAuthorizationDirectdebitResponse.yaml b/src/assets/openapi/components/schemas/InitializeAuthorizationDirectdebitResponse.yaml new file mode 100644 index 0000000..89078ad --- /dev/null +++ b/src/assets/openapi/components/schemas/InitializeAuthorizationDirectdebitResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + redirect_url: + type: string + access_code: + type: string + reference: + type: string + required: + - redirect_url + - access_code + - reference +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/MetadataCustomFieldsArray.yaml b/src/assets/openapi/components/schemas/MetadataCustomFieldsArray.yaml new file mode 100644 index 0000000..54c920d --- /dev/null +++ b/src/assets/openapi/components/schemas/MetadataCustomFieldsArray.yaml @@ -0,0 +1,12 @@ +type: object +properties: + value: + type: string + display_name: + type: string + variable_name: + type: string +required: + - value + - display_name + - variable_name diff --git a/src/assets/openapi/components/schemas/MiscellaneousListBanksResponse.yaml b/src/assets/openapi/components/schemas/MiscellaneousListBanksResponse.yaml new file mode 100644 index 0000000..c5831d4 --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListBanksResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./MiscellaneousListBanksResponseArray.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml b/src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml new file mode 100644 index 0000000..27e2b98 --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml @@ -0,0 +1,50 @@ +type: object +properties: + name: + type: string + slug: + type: string + code: + type: string + longcode: + type: string + gateway: + type: string + nullable: true + pay_with_bank: + type: boolean + supports_transfer: + type: boolean + active: + type: boolean + is_deleted: + type: boolean + nullable: true + country: + type: string + currency: + type: string + type: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string +required: + - name + - slug + - code + - longcode + - gateway + - pay_with_bank + - supports_transfer + - active + - is_deleted + - country + - currency + - type + - id + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/MiscellaneousListCountriesResponse.yaml b/src/assets/openapi/components/schemas/MiscellaneousListCountriesResponse.yaml new file mode 100644 index 0000000..e18942e --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListCountriesResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./MiscellaneousListCountriesResponseArray.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/MiscellaneousListCountriesResponseArray.yaml b/src/assets/openapi/components/schemas/MiscellaneousListCountriesResponseArray.yaml new file mode 100644 index 0000000..61be36f --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListCountriesResponseArray.yaml @@ -0,0 +1,187 @@ +type: object +properties: + id: + type: integer + active_for_dashboard_onboarding: + type: boolean + name: + type: string + iso_code: + type: string + default_currency_code: + type: string + integration_defaults: + type: object + calling_code: + type: string + pilot_mode: + type: boolean + relationships: + type: object + properties: + currency: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + supported_currencies: + type: object + properties: + NGN: + type: object + properties: + bank: + type: object + properties: + bank_type: + type: string + branch_code: + type: boolean + branch_code_type: + type: string + account_name: + type: boolean + account_verification_required: + type: boolean + account_number_label: + type: string + account_number_pattern: + type: object + properties: + exact_match: + type: boolean + pattern: + type: string + required: + - exact_match + - pattern + documents: + type: array + items: {} + show_account_number_tooltip: + type: boolean + required: + - bank_type + - branch_code + - branch_code_type + - account_name + - account_verification_required + - account_number_label + - account_number_pattern + - documents + - show_account_number_tooltip + required: + - bank + USD: + type: object + properties: + bank: + type: object + properties: + bank_type: + type: string + required_fields: + type: array + items: + type: string + branch_code: + type: boolean + branch_code_type: + type: string + account_name: + type: boolean + account_verification_required: + type: boolean + account_number_label: + type: string + account_number_pattern: + type: object + properties: + exact_match: + type: boolean + pattern: + type: string + required: + - exact_match + - pattern + documents: + type: array + items: {} + notices: + type: array + items: + type: string + required: + - bank_type + - required_fields + - branch_code + - branch_code_type + - account_name + - account_verification_required + - account_number_label + - account_number_pattern + - documents + - notices + required: + - bank + required: + - NGN + - USD + required: + - type + - data + - supported_currencies + integration_feature: + type: object + properties: + type: + type: string + data: + type: array + items: {} + required: + - type + - data + integration_type: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + required: + - type + - data + payment_method: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + required: + - type + - data + required: + - currency + - integration_feature + - integration_type + - payment_method +required: + - id + - active_for_dashboard_onboarding + - name + - iso_code + - default_currency_code + - integration_defaults + - calling_code + - pilot_mode + - relationships diff --git a/src/assets/openapi/components/schemas/MiscellaneousListProvidersResponse.yaml b/src/assets/openapi/components/schemas/MiscellaneousListProvidersResponse.yaml new file mode 100644 index 0000000..40e9f9f --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListProvidersResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./MiscellaneousListProvidersResponseArray.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/MiscellaneousListProvidersResponseArray.yaml b/src/assets/openapi/components/schemas/MiscellaneousListProvidersResponseArray.yaml new file mode 100644 index 0000000..5fe5323 --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListProvidersResponseArray.yaml @@ -0,0 +1,51 @@ +type: object +properties: + id: + type: integer + name: + type: string + slug: + type: string + code: + type: string + longcode: + type: string + gateway: + nullable: true + pay_with_bank: + type: boolean + supports_transfer: + type: boolean + available_for_direct_debit: + type: boolean + active: + type: boolean + country: + type: string + currency: + type: string + type: + type: string + is_deleted: + type: boolean + createdAt: + type: string + updatedAt: + type: string +required: + - id + - name + - slug + - code + - longcode + - gateway + - pay_with_bank + - supports_transfer + - available_for_direct_debit + - active + - country + - currency + - type + - is_deleted + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/MiscellaneousListStatesResponse.yaml b/src/assets/openapi/components/schemas/MiscellaneousListStatesResponse.yaml new file mode 100644 index 0000000..303ba52 --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListStatesResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./MiscellaneousListStatesResponseArray.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/MiscellaneousListStatesResponseArray.yaml b/src/assets/openapi/components/schemas/MiscellaneousListStatesResponseArray.yaml new file mode 100644 index 0000000..b8e9aeb --- /dev/null +++ b/src/assets/openapi/components/schemas/MiscellaneousListStatesResponseArray.yaml @@ -0,0 +1,12 @@ +type: object +properties: + name: + type: string + slug: + type: string + abbreviation: + type: string +required: + - name + - slug + - abbreviation diff --git a/src/assets/openapi/components/schemas/MobileMoney.yaml b/src/assets/openapi/components/schemas/MobileMoney.yaml new file mode 100644 index 0000000..2d8fee0 --- /dev/null +++ b/src/assets/openapi/components/schemas/MobileMoney.yaml @@ -0,0 +1,10 @@ +type: object +properties: + phone: + description: Customer's phone number + type: string + provider: + description: >- + The telco provider of customer's phone number. This can be fetched from + the List Bank endpoint + type: string diff --git a/src/assets/openapi/components/schemas/OrderCancelResponse.yaml b/src/assets/openapi/components/schemas/OrderCancelResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderCancelResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/OrderCreate.yaml b/src/assets/openapi/components/schemas/OrderCreate.yaml new file mode 100644 index 0000000..b062789 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderCreate.yaml @@ -0,0 +1,39 @@ +type: object +required: + - email + - first_name + - last_name + - phone + - currency + - items + - shipping +properties: + email: + description: The email of the customer placing the order + type: string + first_name: + description: The customer's first name + type: string + last_name: + description: The customer's last name + type: string + phone: + description: The customer's mobile number + type: string + currency: + description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + type: string + items: + type: array + items: + $ref: ./OrderItems.yaml + shipping: + $ref: ./OrderShipping.yaml + is_gift: + description: | + A flag to indicate if the order is for someone else + type: boolean + pay_for_me: + description: | + A flag to indicate if the someone else should pay for the order + type: boolean diff --git a/src/assets/openapi/components/schemas/OrderCreateResponse.yaml b/src/assets/openapi/components/schemas/OrderCreateResponse.yaml new file mode 100644 index 0000000..894e948 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderCreateResponse.yaml @@ -0,0 +1,143 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + discounts: + type: array + items: {} + currency: + type: string + shipping_address: + nullable: true + integration: + type: integer + domain: + type: string + email: + type: string + customer: + type: integer + amount: + type: integer + pay_for_me: + type: boolean + shipping: + type: object + properties: + customer: + type: integer + integration: + type: integer + domain: + type: string + fees: + type: integer + delivery_note: + nullable: true + street_line: + type: string + city: + type: string + state: + type: string + country: + type: string + is_shipped: + type: boolean + delivery_tracking_link: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - customer + - integration + - domain + - fees + - delivery_note + - street_line + - city + - state + - country + - is_shipped + - delivery_tracking_link + - id + - createdAt + - updatedAt + nullable: true + shipping_fees: + type: integer + shipping_method: + type: object + properties: + region: + type: string + fee: + type: integer + currency: + type: string + required: + - region + - fee + - currency + metadata: + type: object + order_code: + type: string + status: + type: string + refunded: + type: boolean + is_viewed: + type: boolean + expiration_date: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + items: + type: array + items: {} + pay_for_me_code: + type: string + discount_amount: + type: integer + required: + - discounts + - currency + - shipping_address + - integration + - domain + - email + - customer + - amount + - pay_for_me + - shipping + - shipping_fees + - metadata + - order_code + - status + - refunded + - is_viewed + - expiration_date + - id + - createdAt + - updatedAt + - items + - pay_for_me_code + - discount_amount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/OrderDeliverResponse.yaml b/src/assets/openapi/components/schemas/OrderDeliverResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderDeliverResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/OrderFetchProductResponse.yaml b/src/assets/openapi/components/schemas/OrderFetchProductResponse.yaml new file mode 100644 index 0000000..c20a2b3 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderFetchProductResponse.yaml @@ -0,0 +1,38 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./OrderFetchProductResponseArray.yaml + meta: + type: object + properties: + quantity_sold: + type: integer + revenue: + type: integer + total: + type: integer + skipped: + type: integer + perPage: + type: integer + pageCount: + type: integer + required: + - quantity_sold + - revenue + - total + - skipped + - perPage + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/OrderFetchProductResponseArray.yaml b/src/assets/openapi/components/schemas/OrderFetchProductResponseArray.yaml new file mode 100644 index 0000000..c17af9c --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderFetchProductResponseArray.yaml @@ -0,0 +1,102 @@ +type: object +properties: + order_id: + type: integer + transaction: + type: integer + order_code: + type: string + customer: + type: integer + first_name: + type: string + last_name: + type: string + customer_name: + type: string + phone: + type: string + email: + type: string + product_code: + type: string + product_id: + type: integer + product_name: + type: string + price: + type: integer + quantity_sold: + type: integer + currency: + type: string + quantity: + type: integer + variant_id: + nullable: true + variant_price: + nullable: true + variant_code: + nullable: true + amount: + type: integer + shipping_method: + nullable: true + status: + type: string + shipping_address: + nullable: true + refunded: + type: boolean + shipping: + nullable: true + paid_at: + type: string + created_at: + type: string + is_shipped: + type: boolean + is_viewed: + type: integer + delivery_note: + nullable: true + shipping_fee: + nullable: true + amount_paid: + type: integer + storefront_slug: + type: string +required: + - order_id + - transaction + - order_code + - customer + - first_name + - last_name + - customer_name + - phone + - email + - product_code + - product_id + - product_name + - price + - quantity_sold + - currency + - quantity + - variant_id + - variant_price + - variant_code + - amount + - shipping_method + - status + - shipping_address + - refunded + - shipping + - paid_at + - created_at + - is_shipped + - is_viewed + - delivery_note + - shipping_fee + - amount_paid + - storefront_slug diff --git a/src/assets/openapi/components/schemas/OrderFetchResponse.yaml b/src/assets/openapi/components/schemas/OrderFetchResponse.yaml new file mode 100644 index 0000000..dde2897 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderFetchResponse.yaml @@ -0,0 +1,165 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + discounts: + type: array + items: {} + order_code: + type: string + domain: + type: string + currency: + type: string + amount: + type: integer + email: + type: string + status: + type: string + refunded: + type: boolean + paid_at: + type: string + shipping_address: + nullable: true + metadata: + type: object + shipping_fees: + type: integer + shipping_method: + nullable: true + is_viewed: + type: boolean + expiration_date: + type: string + pay_for_me: + type: boolean + id: + type: integer + integration: + type: integer + page: + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + shipping: + nullable: true + createdAt: + type: string + updatedAt: + type: string + transaction: + type: integer + is_gift: + type: boolean + payer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + fully_refunded: + type: boolean + refunded_amount: + type: integer + items: + type: array + items: + $ref: ./OrderItemsArray.yaml + discount_amount: + nullable: true + required: + - discounts + - order_code + - domain + - currency + - amount + - email + - status + - refunded + - paid_at + - shipping_address + - metadata + - shipping_fees + - shipping_method + - is_viewed + - expiration_date + - pay_for_me + - id + - integration + - page + - customer + - shipping + - createdAt + - updatedAt + - transaction + - is_gift + - payer + - fully_refunded + - refunded_amount + - items + - discount_amount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/OrderItems.yaml b/src/assets/openapi/components/schemas/OrderItems.yaml new file mode 100644 index 0000000..e165ebe --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderItems.yaml @@ -0,0 +1,20 @@ +type: object +description: The collection of items that make up the order +required: + - item + - type + - quantity + - amount +properties: + item: + description: The product ID of the item + type: string + type: + description: The type of the item. `product` is currently the acceptable value + type: string + quantity: + description: The number of items to get + type: integer + amount: + description: The cost of the item + type: integer diff --git a/src/assets/openapi/components/schemas/OrderItemsArray.yaml b/src/assets/openapi/components/schemas/OrderItemsArray.yaml new file mode 100644 index 0000000..bf4a719 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderItemsArray.yaml @@ -0,0 +1,66 @@ +type: object +properties: + order_item_id: + type: integer + orderId: + type: integer + type: + type: string + item: + type: integer + current_total_items_price: + type: integer + files: + type: string + order: + type: integer + amount: + type: integer + quantity: + type: integer + createdAt: + type: string + name: + type: string + product_level_type: + type: string + product_id: + type: integer + product_success_message: + nullable: true + product_redirect_url: + nullable: true + IFNULL(p1.expires_in, p2.expires_in): + nullable: true + product_quantity_sold: + type: integer + product_notification_emails: + nullable: true + IFNULL(p1.metadata, p2.metadata): + type: string + storefront_redirect_url: + nullable: true + storefront_success_message: + nullable: true +required: + - order_item_id + - orderId + - type + - item + - current_total_items_price + - files + - order + - amount + - quantity + - createdAt + - name + - product_level_type + - product_id + - product_success_message + - product_redirect_url + - IFNULL(p1.expires_in, p2.expires_in) + - product_quantity_sold + - product_notification_emails + - IFNULL(p1.metadata, p2.metadata) + - storefront_redirect_url + - storefront_success_message diff --git a/src/assets/openapi/components/schemas/OrderListResponse.yaml b/src/assets/openapi/components/schemas/OrderListResponse.yaml new file mode 100644 index 0000000..a536bd1 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderListResponse.yaml @@ -0,0 +1,38 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./OrderListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + revenue: + type: object + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - revenue + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/OrderListResponseArray.yaml b/src/assets/openapi/components/schemas/OrderListResponseArray.yaml new file mode 100644 index 0000000..1f80bb1 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderListResponseArray.yaml @@ -0,0 +1,83 @@ +type: object +properties: + id: + type: integer + order_code: + type: string + integration: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + transaction: + type: integer + page: + nullable: true + customer: + type: integer + customer_name: + type: string + status: + type: string + shipping_address: + nullable: true + metadata: + type: string + created_at: + type: string + updated_at: + type: string + email: + type: string + paid_at: + type: string + shipping: + nullable: true + shipping_fees: + type: integer + refunded: + type: boolean + is_viewed: + type: boolean + refunded_amount: + nullable: true + discount_amount: + nullable: true + discounts: + nullable: true + items: + type: array + items: + $ref: ./OrderItemsArray.yaml + fully_refunded: + type: boolean +required: + - id + - order_code + - integration + - domain + - currency + - amount + - transaction + - page + - customer + - customer_name + - status + - shipping_address + - metadata + - created_at + - updated_at + - email + - paid_at + - shipping + - shipping_fees + - refunded + - is_viewed + - refunded_amount + - discount_amount + - discounts + - items + - fully_refunded diff --git a/src/assets/openapi/components/schemas/OrderRefundResponse.yaml b/src/assets/openapi/components/schemas/OrderRefundResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderRefundResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/OrderShipping.yaml b/src/assets/openapi/components/schemas/OrderShipping.yaml new file mode 100644 index 0000000..a438862 --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderShipping.yaml @@ -0,0 +1,27 @@ +type: object +description: The shipping details of the order +required: + - street_line + - city + - state + - country + - shipping_fee +properties: + street_line: + description: The address of for the delivery + type: string + city: + description: The city of the delivery address + type: string + state: + description: The state of the delivery address + type: string + country: + description: The country of the delivery address + type: string + shipping_fee: + description: The cost of delivery + type: integer + delivery_note: + description: Extra details to be aware of for the delivery + type: string diff --git a/src/assets/openapi/components/schemas/OrderValidateResponse.yaml b/src/assets/openapi/components/schemas/OrderValidateResponse.yaml new file mode 100644 index 0000000..69f550f --- /dev/null +++ b/src/assets/openapi/components/schemas/OrderValidateResponse.yaml @@ -0,0 +1,130 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + order_code: + type: string + domain: + type: string + currency: + type: string + amount: + type: integer + email: + type: string + status: + type: string + refunded: + type: boolean + paid_at: + nullable: true + shipping_address: + nullable: true + metadata: + nullable: true + shipping_fees: + type: integer + shipping_method: + nullable: true + is_viewed: + type: boolean + expiration_date: + type: string + pay_for_me: + type: boolean + id: + type: integer + integration: + type: object + properties: + key: + type: string + name: + type: string + logo: + type: string + allowed_currencies: + type: array + items: {} + required: + - key + - name + - logo + - allowed_currencies + transaction: + nullable: true + page: + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + shipping: + nullable: true + createdAt: + type: string + updatedAt: + type: string + payer: + nullable: true + required: + - order_code + - domain + - currency + - amount + - email + - status + - refunded + - paid_at + - shipping_address + - metadata + - shipping_fees + - shipping_method + - is_viewed + - expiration_date + - pay_for_me + - id + - integration + - transaction + - page + - customer + - shipping + - createdAt + - updatedAt + - payer +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PageAddProductsResponse.yaml b/src/assets/openapi/components/schemas/PageAddProductsResponse.yaml new file mode 100644 index 0000000..91b1858 --- /dev/null +++ b/src/assets/openapi/components/schemas/PageAddProductsResponse.yaml @@ -0,0 +1,85 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + plan: + nullable: true + domain: + type: string + name: + type: string + description: + nullable: true + amount: + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + nullable: true + type: + type: string + redirect_url: + nullable: true + success_message: + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: + type: array + items: + $ref: ./PageProductsArray.yaml + required: + - integration + - plan + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - createdAt + - updatedAt + - products +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PageCheckSlugAvailabilityResponse.yaml b/src/assets/openapi/components/schemas/PageCheckSlugAvailabilityResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/PageCheckSlugAvailabilityResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/PageCreate.yaml b/src/assets/openapi/components/schemas/PageCreate.yaml new file mode 100644 index 0000000..91b0e1e --- /dev/null +++ b/src/assets/openapi/components/schemas/PageCreate.yaml @@ -0,0 +1,79 @@ +type: object +required: + - name +properties: + name: + description: Name of page + type: string + description: + description: The description of the page + type: string + amount: + description: >- + Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + currency: + description: The transaction currency. Defaults to your integration currency. + type: string + enum: + - NGN + - GHS + - ZAR + - KES + - USD + slug: + description: >- + URL slug you would like to be associated with this page. Page will be + accessible at `https://paystack.com/pay/[slug]` + type: string + type: + description: > + The type of payment page to create. Defaults to `payment` if no type is + specified. + type: string + enum: + - payment + - subscription + - product + - plan + plan: + description: >- + The ID of the plan to subscribe customers on this payment page to when + `type` is set to `subscription`. + type: string + fixed_amount: + description: >- + Specifies whether to collect a fixed amount on the payment page. If true, + `amount` must be passed. + type: boolean + split_code: + description: The split code of the transaction split. e.g. `SPL_98WF13Eb3w` + type: string + metadata: + description: Stringified JSON object of custom data + type: string + redirect_url: + description: > + If you would like Paystack to redirect to a URL upon successful payment, + specify the URL here. + type: string + success_message: + description: > + A success message to display to the customer after a successful + transaction + type: string + notification_email: + description: > + An email address that will receive transaction notifications for this + payment page + type: string + collect_phone: + description: | + Specify whether to collect phone numbers on the payment page + type: boolean + custom_fields: + description: If you would like to accept custom fields, specify them here. + type: array + items: + type: object diff --git a/src/assets/openapi/components/schemas/PageCreateResponse.yaml b/src/assets/openapi/components/schemas/PageCreateResponse.yaml new file mode 100644 index 0000000..cfbaeaf --- /dev/null +++ b/src/assets/openapi/components/schemas/PageCreateResponse.yaml @@ -0,0 +1,53 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + name: + type: string + integration: + type: integer + domain: + type: string + slug: + type: string + currency: + type: string + type: + type: string + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - name + - integration + - domain + - slug + - currency + - type + - collect_phone + - active + - published + - migrate + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PageFetchResponse.yaml b/src/assets/openapi/components/schemas/PageFetchResponse.yaml new file mode 100644 index 0000000..fdaacf1 --- /dev/null +++ b/src/assets/openapi/components/schemas/PageFetchResponse.yaml @@ -0,0 +1,78 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + domain: + type: string + name: + type: string + description: + nullable: true + amount: + type: integer + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + nullable: true + type: + type: string + redirect_url: + nullable: true + success_message: + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PageListResponse.yaml b/src/assets/openapi/components/schemas/PageListResponse.yaml new file mode 100644 index 0000000..85b4477 --- /dev/null +++ b/src/assets/openapi/components/schemas/PageListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./PageListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/PageListResponseArray.yaml b/src/assets/openapi/components/schemas/PageListResponseArray.yaml new file mode 100644 index 0000000..7a0f11b --- /dev/null +++ b/src/assets/openapi/components/schemas/PageListResponseArray.yaml @@ -0,0 +1,76 @@ +type: object +properties: + integration: + type: integer + plan: + nullable: true + domain: + type: string + name: + type: string + description: + type: string + nullable: true + amount: + type: integer + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + type: array + nullable: true + items: {} + type: + type: string + redirect_url: + type: string + nullable: true + success_message: + type: string + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + type: object + nullable: true + split_code: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string +required: + - integration + - plan + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - createdAt + - updatedAt diff --git a/src/assets/openapi/components/schemas/PageProduct.yaml b/src/assets/openapi/components/schemas/PageProduct.yaml new file mode 100644 index 0000000..89160a2 --- /dev/null +++ b/src/assets/openapi/components/schemas/PageProduct.yaml @@ -0,0 +1,9 @@ +type: object +required: + - product +properties: + product: + description: IDs of all products to add to a page + type: array + items: + type: string diff --git a/src/assets/openapi/components/schemas/PageProductsArray.yaml b/src/assets/openapi/components/schemas/PageProductsArray.yaml new file mode 100644 index 0000000..4cfd694 --- /dev/null +++ b/src/assets/openapi/components/schemas/PageProductsArray.yaml @@ -0,0 +1,48 @@ +type: object +properties: + product_id: + type: integer + name: + type: string + description: + type: string + product_code: + type: string + page: + type: integer + price: + type: integer + currency: + type: string + quantity: + type: integer + type: + type: string + features: + nullable: true + is_shippable: + type: integer + domain: + type: string + integration: + type: integer + active: + type: integer + in_stock: + type: integer +required: + - product_id + - name + - description + - product_code + - page + - price + - currency + - quantity + - type + - features + - is_shippable + - domain + - integration + - active + - in_stock diff --git a/src/assets/openapi/components/schemas/PageUpdate.yaml b/src/assets/openapi/components/schemas/PageUpdate.yaml new file mode 100644 index 0000000..7818df9 --- /dev/null +++ b/src/assets/openapi/components/schemas/PageUpdate.yaml @@ -0,0 +1,16 @@ +type: object +properties: + name: + description: Name of page + type: string + description: + description: The description of the page + type: string + amount: + description: >- + Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + active: + description: Set to false to deactivate page url + type: boolean diff --git a/src/assets/openapi/components/schemas/PageUpdateResponse.yaml b/src/assets/openapi/components/schemas/PageUpdateResponse.yaml new file mode 100644 index 0000000..1141138 --- /dev/null +++ b/src/assets/openapi/components/schemas/PageUpdateResponse.yaml @@ -0,0 +1,80 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + domain: + type: string + name: + type: string + description: + nullable: true + amount: + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + nullable: true + type: + type: string + redirect_url: + nullable: true + success_message: + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true + id: + type: integer + integration: + type: integer + plan: + nullable: true + createdAt: + type: string + updatedAt: + type: string + required: + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - integration + - plan + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentChannelCreateBankChargeResponse.yaml b/src/assets/openapi/components/schemas/PaymentChannelCreateBankChargeResponse.yaml new file mode 100644 index 0000000..36b20e6 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentChannelCreateBankChargeResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + display_text: + type: string + required: + - reference + - status + - display_text +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentChannelCreateDirectDebitChargeResponse.yaml b/src/assets/openapi/components/schemas/PaymentChannelCreateDirectDebitChargeResponse.yaml new file mode 100644 index 0000000..921ff9a --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentChannelCreateDirectDebitChargeResponse.yaml @@ -0,0 +1,241 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + amount: + type: integer + message: + type: string + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + type: string + nullable: true + receiver_bank: + type: string + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true + split: + type: object + order_id: + type: string + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + type: string + nullable: true + fees_breakdown: + type: string + nullable: true + connect: + type: string + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentChannelCreateEFTChargeResponse.yaml b/src/assets/openapi/components/schemas/PaymentChannelCreateEFTChargeResponse.yaml new file mode 100644 index 0000000..87eb810 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentChannelCreateEFTChargeResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + url: + type: string + required: + - reference + - status + - url +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentChannelCreateMobileMoneyChargeResponse.yaml b/src/assets/openapi/components/schemas/PaymentChannelCreateMobileMoneyChargeResponse.yaml new file mode 100644 index 0000000..fc4ee7a --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentChannelCreateMobileMoneyChargeResponse.yaml @@ -0,0 +1,239 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + nullable: true + account_name: + nullable: true + mobile_money_number: + type: string + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - mobile_money_number + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + type: object + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentChannelCreatePayWithTransferChargeResponse.yaml b/src/assets/openapi/components/schemas/PaymentChannelCreatePayWithTransferChargeResponse.yaml new file mode 100644 index 0000000..75f6daa --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentChannelCreatePayWithTransferChargeResponse.yaml @@ -0,0 +1,46 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + display_text: + type: string + reference: + type: string + account_name: + type: string + account_number: + type: string + bank: + type: object + properties: + slug: + type: string + name: + type: string + id: + type: integer + required: + - slug + - name + - id + account_expires_at: + type: string + required: + - status + - display_text + - reference + - account_name + - account_number + - bank + - account_expires_at +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentChannelCreateQRChargeResponse.yaml b/src/assets/openapi/components/schemas/PaymentChannelCreateQRChargeResponse.yaml new file mode 100644 index 0000000..5a9d3bd --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentChannelCreateQRChargeResponse.yaml @@ -0,0 +1,26 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + qr_code: + type: string + url: + type: string + message: + type: string + required: + - reference + - status +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentChannelCreateUSSDChargeResponse.yaml b/src/assets/openapi/components/schemas/PaymentChannelCreateUSSDChargeResponse.yaml new file mode 100644 index 0000000..04d8716 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentChannelCreateUSSDChargeResponse.yaml @@ -0,0 +1,26 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + display_text: + type: string + ussd_code: + type: string + required: + - reference + - status + - display_text + - ussd_code +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentRequestArchiveResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestArchiveResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestArchiveResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/PaymentRequestCreate.yaml b/src/assets/openapi/components/schemas/PaymentRequestCreate.yaml new file mode 100644 index 0000000..13fbcc0 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestCreate.yaml @@ -0,0 +1,70 @@ +type: object +required: + - customer +properties: + customer: + description: Customer id or code + type: string + amount: + description: >- + Payment request amount. Only useful if line items and tax values are + ignored. + + The endpoint will throw a friendly warning if neither is available. + type: integer + currency: + description: >- + Specify the currency of the invoice. Allowed values are NGN, GHS, ZAR and + USD. Defaults to NGN + type: string + due_date: + description: ISO 8601 representation of request due date + type: string + format: date-time + description: + description: A short description of the payment request + type: string + line_items: + description: Array of line items + type: array + items: + type: object + tax: + description: Array of taxes + type: array + items: + type: object + send_notification: + description: >- + Indicates whether Paystack sends an email notification to customer. + Defaults to true + type: boolean + items: + type: object + draft: + description: >- + Indicate if request should be saved as draft. Defaults to false and + overrides send_notification + type: boolean + items: + type: object + has_invoice: + description: >- + Set to true to create a draft invoice (adds an auto incrementing invoice + number if none is provided) + + even if there are no line_items or tax passed + type: boolean + items: + type: object + invoice_number: + description: >- + Numeric value of invoice. Invoice will start from 1 and auto increment + from there. This field is to help + + override whatever value Paystack decides. Auto increment for subsequent + invoices continue from this point. + type: integer + split_code: + description: The split code of the transaction split. + type: string diff --git a/src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml new file mode 100644 index 0000000..ff8b853 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml @@ -0,0 +1,81 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + nullable: true + description: + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: + type: boolean + metadata: + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: integer + created_at: + type: string + discount: + nullable: true + split_code: + nullable: true + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - line_items + - tax + - request_code + - status + - paid + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentRequestFinalizeResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestFinalizeResponse.yaml new file mode 100644 index 0000000..ea78801 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestFinalizeResponse.yaml @@ -0,0 +1,135 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + type: string + nullable: true + pdf_url: + nullable: true + line_items: + type: array + items: + $ref: ./PaymentRequestLineItemsArray.yaml + tax: + type: array + items: + $ref: ./PaymentRequestTaxArray.yaml + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + type: object + properties: + type: + type: string + amount: + type: integer + required: + - type + - amount + nullable: true + split_code: + nullable: true + pending_amount: + type: integer + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code + - pending_amount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentRequestLineItemsArray.yaml b/src/assets/openapi/components/schemas/PaymentRequestLineItemsArray.yaml new file mode 100644 index 0000000..e6e8ebe --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestLineItemsArray.yaml @@ -0,0 +1,12 @@ +type: object +properties: + name: + type: string + amount: + type: integer + quantity: + type: integer +required: + - name + - amount + - quantity diff --git a/src/assets/openapi/components/schemas/PaymentRequestListResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestListResponse.yaml new file mode 100644 index 0000000..0e7b723 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestListResponse.yaml @@ -0,0 +1,37 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./PaymentRequestListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + anyOf: + - type: integer + - type: string + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/PaymentRequestListResponseArray.yaml b/src/assets/openapi/components/schemas/PaymentRequestListResponseArray.yaml new file mode 100644 index 0000000..4595044 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestListResponseArray.yaml @@ -0,0 +1,111 @@ +type: object +properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + type: string + nullable: true + pdf_url: + type: string + nullable: true + line_items: + type: array + items: + $ref: ./PaymentRequestLineItemsArray.yaml + tax: + type: array + items: + $ref: ./PaymentRequestTaxArray.yaml + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + nullable: true + split_code: + type: string + nullable: true +required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code diff --git a/src/assets/openapi/components/schemas/PaymentRequestNotificationsArray.yaml b/src/assets/openapi/components/schemas/PaymentRequestNotificationsArray.yaml new file mode 100644 index 0000000..540c1ab --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestNotificationsArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + sent_at: + type: string + channel: + type: string +required: + - sent_at + - channel diff --git a/src/assets/openapi/components/schemas/PaymentRequestPendingArray.yaml b/src/assets/openapi/components/schemas/PaymentRequestPendingArray.yaml new file mode 100644 index 0000000..abd9c5d --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestPendingArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + currency: + type: string + amount: + type: integer +required: + - currency + - amount diff --git a/src/assets/openapi/components/schemas/PaymentRequestSendNotificationResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestSendNotificationResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestSendNotificationResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/PaymentRequestSuccessfulArray.yaml b/src/assets/openapi/components/schemas/PaymentRequestSuccessfulArray.yaml new file mode 100644 index 0000000..abd9c5d --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestSuccessfulArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + currency: + type: string + amount: + type: integer +required: + - currency + - amount diff --git a/src/assets/openapi/components/schemas/PaymentRequestTaxArray.yaml b/src/assets/openapi/components/schemas/PaymentRequestTaxArray.yaml new file mode 100644 index 0000000..ce26f32 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestTaxArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + name: + type: string + amount: + type: integer +required: + - name + - amount diff --git a/src/assets/openapi/components/schemas/PaymentRequestTotalArray.yaml b/src/assets/openapi/components/schemas/PaymentRequestTotalArray.yaml new file mode 100644 index 0000000..abd9c5d --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestTotalArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + currency: + type: string + amount: + type: integer +required: + - currency + - amount diff --git a/src/assets/openapi/components/schemas/PaymentRequestTotalResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestTotalResponse.yaml new file mode 100644 index 0000000..c7387dc --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestTotalResponse.yaml @@ -0,0 +1,29 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + pending: + type: array + items: + $ref: ./PaymentRequestPendingArray.yaml + successful: + type: array + items: + $ref: ./PaymentRequestSuccessfulArray.yaml + total: + type: array + items: + $ref: ./PaymentRequestTotalArray.yaml + required: + - pending + - successful + - total +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentRequestUpdate.yaml b/src/assets/openapi/components/schemas/PaymentRequestUpdate.yaml new file mode 100644 index 0000000..86aa0c7 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestUpdate.yaml @@ -0,0 +1,68 @@ +type: object +properties: + customer: + description: Customer id or code + type: string + amount: + description: >- + Payment request amount. Only useful if line items and tax values are + ignored. + + The endpoint will throw a friendly warning if neither is available. + type: integer + currency: + description: >- + Specify the currency of the invoice. Allowed values are NGN, GHS, ZAR and + USD. Defaults to NGN + type: string + due_date: + description: ISO 8601 representation of request due date + type: string + format: date-time + description: + description: A short description of the payment request + type: string + line_items: + description: Array of line items + type: array + items: + type: object + tax: + description: Array of taxes + type: array + items: + type: object + send_notification: + description: >- + Indicates whether Paystack sends an email notification to customer. + Defaults to true + type: boolean + items: + type: object + draft: + description: >- + Indicate if request should be saved as draft. Defaults to false and + overrides send_notification + type: boolean + items: + type: object + has_invoice: + description: >- + Set to true to create a draft invoice (adds an auto incrementing invoice + number if none is provided) + + even if there are no line_items or tax passed + type: boolean + items: + type: object + invoice_number: + description: >- + Numeric value of invoice. Invoice will start from 1 and auto increment + from there. This field is to help + + override whatever value Paystack decides. Auto increment for subsequent + invoices continue from this point. + type: integer + split_code: + description: The split code of the transaction split. + type: string diff --git a/src/assets/openapi/components/schemas/PaymentRequestUpdateResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestUpdateResponse.yaml new file mode 100644 index 0000000..a1eefb7 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestUpdateResponse.yaml @@ -0,0 +1,122 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + nullable: true + pdf_url: + type: string + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: + $ref: ./PaymentRequestNotificationsArray.yaml + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + nullable: true + split_code: + nullable: true + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentRequestVerifyResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestVerifyResponse.yaml new file mode 100644 index 0000000..549be83 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestVerifyResponse.yaml @@ -0,0 +1,141 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: object + properties: + key: + type: string + name: + type: string + logo: + type: string + allowed_currencies: + type: array + items: + type: string + required: + - key + - name + - logo + - allowed_currencies + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + nullable: true + pdf_url: + type: string + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: + $ref: ./PaymentRequestNotificationsArray.yaml + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + nullable: true + split_code: + nullable: true + pending_amount: + type: integer + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code + - pending_amount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentRequestViewResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestViewResponse.yaml new file mode 100644 index 0000000..826b394 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentRequestViewResponse.yaml @@ -0,0 +1,168 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + domain: + type: string + request_code: + type: string + description: + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + amount: + type: integer + discount: + nullable: true + currency: + type: string + due_date: + type: string + nullable: true + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + offline_reference: + type: string + pdf_url: + type: string + nullable: true + notifications: + type: array + items: + $ref: ./PaymentRequestNotificationsArray.yaml + archived: + type: boolean + source: + type: string + payment_method: + nullable: true + note: + nullable: true + amount_paid: + nullable: true + split_code: + nullable: true + id: + type: integer + integration: + type: integer + customer: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + createdAt: + type: string + updatedAt: + type: string + pending_amount: + type: integer + required: + - transactions + - domain + - request_code + - description + - line_items + - tax + - amount + - discount + - currency + - due_date + - status + - paid + - paid_at + - metadata + - has_invoice + - invoice_number + - offline_reference + - pdf_url + - notifications + - archived + - source + - payment_method + - note + - amount_paid + - split_code + - id + - integration + - customer + - createdAt + - updatedAt + - pending_amount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PaymentSession.yaml b/src/assets/openapi/components/schemas/PaymentSession.yaml new file mode 100644 index 0000000..ae57d41 --- /dev/null +++ b/src/assets/openapi/components/schemas/PaymentSession.yaml @@ -0,0 +1,8 @@ +type: object +required: + - timeout +properties: + timeout: + description: Time in seconds before a transaction becomes invalid + type: string + example: '30' diff --git a/src/assets/openapi/components/schemas/PlanCreate.yaml b/src/assets/openapi/components/schemas/PlanCreate.yaml new file mode 100644 index 0000000..a48027d --- /dev/null +++ b/src/assets/openapi/components/schemas/PlanCreate.yaml @@ -0,0 +1,36 @@ +type: object +required: + - name + - amount + - interval +properties: + name: + description: Name of plan + type: string + amount: + description: >- + Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + interval: + description: >- + Interval in words. Valid intervals are daily, weekly, monthly,biannually, + annually + type: string + description: + description: A description for this plan + type: string + send_invoices: + description: Set to false if you don't want invoices to be sent to your customers + type: boolean + send_sms: + description: Set to false if you don't want text messages to be sent to your customers + type: boolean + currency: + description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + type: string + invoice_limit: + description: |- + Number of invoices to raise during subscription to this plan. + Can be overridden by specifying an invoice_limit while subscribing. + type: integer diff --git a/src/assets/openapi/components/schemas/PlanCreateResponse.yaml b/src/assets/openapi/components/schemas/PlanCreateResponse.yaml new file mode 100644 index 0000000..9a81de8 --- /dev/null +++ b/src/assets/openapi/components/schemas/PlanCreateResponse.yaml @@ -0,0 +1,62 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + currency: + type: string + name: + type: string + amount: + type: integer + interval: + type: string + integration: + type: integer + domain: + type: string + plan_code: + type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + migrate: + type: boolean + is_archived: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - currency + - name + - amount + - interval + - integration + - domain + - plan_code + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - migrate + - is_archived + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PlanFetchResponse.yaml b/src/assets/openapi/components/schemas/PlanFetchResponse.yaml new file mode 100644 index 0000000..404e6de --- /dev/null +++ b/src/assets/openapi/components/schemas/PlanFetchResponse.yaml @@ -0,0 +1,102 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + subscriptions: + type: array + items: {} + pages: + type: array + items: {} + domain: + type: string + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + hosted_page_url: + nullable: true + hosted_page_summary: + nullable: true + currency: + type: string + migrate: + type: boolean + is_deleted: + type: boolean + is_archived: + type: boolean + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + pages_count: + type: integer + subscribers_count: + type: integer + subscriptions_count: + type: integer + active_subscriptions_count: + type: integer + nullable: true + total_revenue: + type: integer + subscribers: + type: array + items: {} + required: + - subscriptions + - pages + - domain + - name + - plan_code + - description + - amount + - interval + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - hosted_page_url + - hosted_page_summary + - currency + - migrate + - is_deleted + - is_archived + - id + - integration + - createdAt + - updatedAt + - pages_count + - subscribers_count + - subscriptions_count + - active_subscriptions_count + - total_revenue + - subscribers +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PlanListResponse.yaml b/src/assets/openapi/components/schemas/PlanListResponse.yaml new file mode 100644 index 0000000..fda3450 --- /dev/null +++ b/src/assets/openapi/components/schemas/PlanListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./PlanListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/PlanListResponseArray.yaml b/src/assets/openapi/components/schemas/PlanListResponseArray.yaml new file mode 100644 index 0000000..a1a6bbd --- /dev/null +++ b/src/assets/openapi/components/schemas/PlanListResponseArray.yaml @@ -0,0 +1,80 @@ +type: object +properties: + subscriptions: + type: array + items: {} + pages: + type: array + items: {} + domain: + type: string + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + hosted_page_url: + nullable: true + hosted_page_summary: + nullable: true + currency: + type: string + migrate: + type: boolean + is_deleted: + type: boolean + is_archived: + type: boolean + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + total_subscriptions: + type: integer + active_subscriptions: + type: integer + total_subscriptions_revenue: + type: integer +required: + - subscriptions + - pages + - domain + - name + - plan_code + - description + - amount + - interval + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - hosted_page_url + - hosted_page_summary + - currency + - migrate + - is_deleted + - is_archived + - id + - integration + - createdAt + - updatedAt + - total_subscriptions + - active_subscriptions + - total_subscriptions_revenue diff --git a/src/assets/openapi/components/schemas/PlanUpdate.yaml b/src/assets/openapi/components/schemas/PlanUpdate.yaml new file mode 100644 index 0000000..04e9c30 --- /dev/null +++ b/src/assets/openapi/components/schemas/PlanUpdate.yaml @@ -0,0 +1,32 @@ +type: object +properties: + name: + description: Name of plan + type: string + amount: + description: >- + Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + interval: + description: >- + Interval in words. Valid intervals are daily, weekly, monthly,biannually, + annually + type: string + description: + description: A description for this plan + type: boolean + send_invoices: + description: Set to false if you don't want invoices to be sent to your customers + type: boolean + send_sms: + description: Set to false if you don't want text messages to be sent to your customers + type: boolean + currency: + description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + type: string + invoice_limit: + description: |- + Number of invoices to raise during subscription to this plan. + Can be overridden by specifying an invoice_limit while subscribing. + type: integer diff --git a/src/assets/openapi/components/schemas/PlanUpdateResponse.yaml b/src/assets/openapi/components/schemas/PlanUpdateResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/PlanUpdateResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/PreAuthorizationCaptureResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationCaptureResponse.yaml new file mode 100644 index 0000000..b782aa8 --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationCaptureResponse.yaml @@ -0,0 +1,219 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + status: + type: string + gateway_response: + type: string + transaction: + type: object + properties: + currency: + type: string + transaction_date: + type: string + status: + type: string + reference: + type: string + domain: + type: string + metadata: + type: integer + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + type: string + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + id: + type: integer + split: + type: object + properties: + id: + type: integer + name: + type: string + split_code: + type: string + formula: + type: object + properties: + type: + type: string + bearer_type: + type: string + bearer_subaccount: + type: integer + subaccounts: + type: array + items: + $ref: ./FormulaSubaccountsArray.yaml + integration: + type: integer + required: + - type + - bearer_type + - bearer_subaccount + - subaccounts + - integration + shares: + type: object + properties: + paystack: + type: integer + subaccounts: + type: array + items: + $ref: ./ShareSubaccountsArray.yaml + integration: + type: number + original_share: + type: integer + fees: + type: number + required: + - paystack + - subaccounts + - integration + - original_share + - fees + required: + - id + - name + - split_code + - formula + - shares + required: + - currency + - transaction_date + - status + - reference + - domain + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer + - id + amount_released: + type: integer + split_code: + type: string + nullable: true + split: + type: object + properties: + type: + type: string + bearer_type: + type: string + subaccounts: + type: array + items: + $ref: ./SplitSubaccountsArray.yaml + required: + - type + - bearer_type + - subaccounts + nullable: true + required: + - amount + - status + - gateway_response + - transaction + - split_code + - split +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PreAuthorizationInitializeResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationInitializeResponse.yaml new file mode 100644 index 0000000..3be8761 --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationInitializeResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + authorization_url: + type: string + access_code: + type: string + reference: + type: string + required: + - authorization_url + - access_code + - reference +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PreAuthorizationListResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationListResponse.yaml new file mode 100644 index 0000000..055d8da --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./PreAuthorizationListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/PreAuthorizationListResponseArray.yaml b/src/assets/openapi/components/schemas/PreAuthorizationListResponseArray.yaml new file mode 100644 index 0000000..b68fee1 --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationListResponseArray.yaml @@ -0,0 +1,70 @@ +type: object +properties: + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + created_at: + type: string + transaction_id: + type: string + nullable: true + captured_at: + type: string + nullable: true + released_at: + type: string + nullable: true + currency: + type: string + fees: + type: integer + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + id: + type: integer +required: + - domain + - status + - reference + - amount + - created_at + - transaction_id + - captured_at + - released_at + - currency + - fees + - id diff --git a/src/assets/openapi/components/schemas/PreAuthorizationReleaseResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationReleaseResponse.yaml new file mode 100644 index 0000000..de81de6 --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationReleaseResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + reference: + type: string + required: + - status + - reference +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PreAuthorizationReserveWithAuthCodeResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationReserveWithAuthCodeResponse.yaml new file mode 100644 index 0000000..92f4217 --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationReserveWithAuthCodeResponse.yaml @@ -0,0 +1,151 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + type: string + created_at: + type: string + released_at: + type: string + nullable: true + authorized_at: + type: string + nullable: true + expiry_date: + type: string + nullable: true + currency: + type: string + metadata: + type: object + nullable: true + fees: + type: integer + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + type: string + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + merchant_id: + type: integer + merchant_name: + type: string + expire_action: + type: string + split_code: + type: string + nullable: true + split: + type: object + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - created_at + - released_at + - authorized_at + - expiry_date + - currency + - metadata + - fees + - authorization + - customer + - merchant_id + - merchant_name + - expire_action + - split + - split_code +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PreAuthorizationReserveWithSelfCheckoutResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationReserveWithSelfCheckoutResponse.yaml new file mode 100644 index 0000000..ef4c36f --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationReserveWithSelfCheckoutResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + message: + type: string + required: + - reference + - status + - message +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PreAuthorizationVerifyResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationVerifyResponse.yaml new file mode 100644 index 0000000..1ca4a89 --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationVerifyResponse.yaml @@ -0,0 +1,37 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + type: string + currency: + type: string + redirecturl: + type: string + required: + - id + - domain + - status + - reference + - amount + - message + - currency +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/PreAuthorizationViewResponse.yaml b/src/assets/openapi/components/schemas/PreAuthorizationViewResponse.yaml new file mode 100644 index 0000000..267f87e --- /dev/null +++ b/src/assets/openapi/components/schemas/PreAuthorizationViewResponse.yaml @@ -0,0 +1,110 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + type: string + created_at: + type: string + released_at: + type: string + nullable: true + authorized_at: + type: string + nullable: true + expiry_date: + type: string + nullable: true + currency: + type: string + nullable: true + metadata: + type: string + nullable: true + fees: + type: integer + authorization: + type: object + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + merchant_id: + type: integer + merchant_name: + type: string + expire_action: + type: string + split_code: + type: string + nullable: true + split: + type: object + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - created_at + - released_at + - authorized_at + - expiry_date + - currency + - metadata + - fees + - authorization + - customer + - merchant_id + - merchant_name + - expire_action + - split + - split_code +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ProductCreate.yaml b/src/assets/openapi/components/schemas/ProductCreate.yaml new file mode 100644 index 0000000..e4d3343 --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductCreate.yaml @@ -0,0 +1,36 @@ +type: object +required: + - name + - description + - price + - currency +properties: + name: + description: Name of product + type: string + description: + description: The description of the product + type: string + price: + description: | + Price should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + currency: + description: | + Currency in which price is set. Allowed values are: NGN, GHS, ZAR or USD + type: string + unlimited: + description: | + Set to true if the product has unlimited stock. Leave as false if the + product has limited stock + type: boolean + quantity: + description: Number of products in stock. Use if limited is true + type: integer + split_code: + description: The split code if sharing the transaction with partners + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/ProductCreateResponse.yaml b/src/assets/openapi/components/schemas/ProductCreateResponse.yaml new file mode 100644 index 0000000..6456871 --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductCreateResponse.yaml @@ -0,0 +1,119 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + variants_options: + type: array + items: {} + variants: + type: array + items: {} + name: + type: string + description: + type: string + currency: + type: string + price: + type: integer + quantity: + type: integer + type: + type: string + is_shippable: + type: boolean + unlimited: + type: boolean + files: + type: array + items: {} + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + integration: + type: integer + domain: + type: string + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + product_code: + type: string + quantity_sold: + type: integer + active: + type: boolean + deleted_at: + nullable: true + in_stock: + type: boolean + minimum_orderable: + type: integer + maximum_orderable: + type: integer + nullable: true + redirect_url: + type: string + nullable: true + low_stock_alert: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - variants_options + - variants + - name + - description + - currency + - price + - quantity + - type + - is_shippable + - unlimited + - files + - shipping_fields + - integration + - domain + - metadata + - slug + - product_code + - quantity_sold + - active + - deleted_at + - in_stock + - minimum_orderable + - maximum_orderable + - low_stock_alert + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ProductDeleteResponse.yaml b/src/assets/openapi/components/schemas/ProductDeleteResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductDeleteResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/ProductFetchResponse.yaml b/src/assets/openapi/components/schemas/ProductFetchResponse.yaml new file mode 100644 index 0000000..0e9fbbf --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductFetchResponse.yaml @@ -0,0 +1,132 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + digital_assets: + type: array + items: {} + integration: + type: integer + name: + type: string + description: + type: string + product_code: + type: string + price: + type: integer + currency: + type: string + quantity: + type: integer + quantity_sold: + nullable: true + type: + type: string + files: + type: array + items: {} + file_path: + nullable: true + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + unlimited: + type: boolean + domain: + type: string + active: + type: boolean + features: + nullable: true + in_stock: + type: boolean + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + low_stock_alert: + type: boolean + stock_threshold: + nullable: true + expires_in: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - digital_assets + - integration + - name + - description + - product_code + - price + - currency + - quantity + - quantity_sold + - type + - files + - file_path + - is_shippable + - shipping_fields + - unlimited + - domain + - active + - features + - in_stock + - metadata + - slug + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - low_stock_alert + - stock_threshold + - expires_in + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/ProductListsResponse.yaml b/src/assets/openapi/components/schemas/ProductListsResponse.yaml new file mode 100644 index 0000000..bffca36 --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductListsResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./ProductListsResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: string + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/ProductListsResponseArray.yaml b/src/assets/openapi/components/schemas/ProductListsResponseArray.yaml new file mode 100644 index 0000000..f2eb00a --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductListsResponseArray.yaml @@ -0,0 +1,113 @@ +type: object +properties: + id: + type: integer + name: + type: string + description: + type: string + product_code: + type: string + slug: + type: string + currency: + type: string + price: + type: integer + quantity: + type: integer + quantity_sold: + type: integer + active: + type: boolean + domain: + type: string + type: + type: string + in_stock: + type: boolean + unlimited: + type: boolean + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + files: + type: array + items: {} + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + createdAt: + type: string + updatedAt: + type: string + digital_assets: + type: array + items: {} + variant_options: + type: array + items: {} + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + integration: + type: integer + low_stock_alert: + type: integer +required: + - id + - name + - description + - product_code + - slug + - currency + - price + - quantity + - quantity_sold + - active + - domain + - type + - in_stock + - unlimited + - metadata + - files + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - createdAt + - updatedAt + - digital_assets + - variant_options + - is_shippable + - shipping_fields + - integration + - low_stock_alert diff --git a/src/assets/openapi/components/schemas/ProductUpdate.yaml b/src/assets/openapi/components/schemas/ProductUpdate.yaml new file mode 100644 index 0000000..1aadc84 --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductUpdate.yaml @@ -0,0 +1,31 @@ +type: object +properties: + name: + description: Name of product + type: string + description: + description: The description of the product + type: string + price: + description: | + Price should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + currency: + description: | + Currency in which price is set. Allowed values are: NGN, GHS, ZAR or USD + type: string + unlimited: + description: | + Set to true if the product has unlimited stock. Leave as false if the + product has limited stock + type: boolean + quantity: + description: Number of products in stock. Use if limited is true + type: integer + split_code: + description: The split code if sharing the transaction with partners + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/ProductUpdateResponse.yaml b/src/assets/openapi/components/schemas/ProductUpdateResponse.yaml new file mode 100644 index 0000000..d815631 --- /dev/null +++ b/src/assets/openapi/components/schemas/ProductUpdateResponse.yaml @@ -0,0 +1,128 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + name: + type: string + description: + type: string + product_code: + type: string + price: + type: integer + currency: + type: string + quantity: + type: integer + quantity_sold: + type: integer + type: + type: string + files: + type: array + items: {} + file_path: + nullable: true + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + unlimited: + type: boolean + domain: + type: string + active: + type: boolean + features: + nullable: true + in_stock: + type: boolean + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + low_stock_alert: + type: boolean + stock_threshold: + nullable: true + expires_in: + nullable: true + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - name + - description + - product_code + - price + - currency + - quantity + - quantity_sold + - type + - files + - file_path + - is_shippable + - shipping_fields + - unlimited + - domain + - active + - features + - in_stock + - metadata + - slug + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - low_stock_alert + - stock_threshold + - expires_in + - id + - integration + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/RefundCreate.yaml b/src/assets/openapi/components/schemas/RefundCreate.yaml new file mode 100644 index 0000000..e20a753 --- /dev/null +++ b/src/assets/openapi/components/schemas/RefundCreate.yaml @@ -0,0 +1,23 @@ +type: object +required: + - transaction +properties: + transaction: + description: Transaction reference or id + type: string + amount: + description: >- + Amount ( in kobo if currency is NGN, pesewas, if currency is GHS, and + cents, if currency is ZAR ) to be refunded to the customer. + + Amount cannot be more than the original transaction amount + type: integer + currency: + description: Three-letter ISO currency. Allowed values are NGN, GHS, ZAR or USD + type: string + customer_note: + description: Customer reason + type: string + merchant_note: + description: Merchant reason + type: string diff --git a/src/assets/openapi/components/schemas/RefundCreateResponse.yaml b/src/assets/openapi/components/schemas/RefundCreateResponse.yaml new file mode 100644 index 0000000..f7f77be --- /dev/null +++ b/src/assets/openapi/components/schemas/RefundCreateResponse.yaml @@ -0,0 +1,137 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + reference: + type: string + amount: + type: integer + paid_at: + type: string + channel: + type: string + currency: + type: string + authorization: + type: object + properties: + exp_month: + nullable: true + exp_year: + nullable: true + account_name: + nullable: true + required: + - exp_month + - exp_year + - account_name + customer: + type: object + properties: + international_format_phone: + type: string + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + properties: + currency: + nullable: true + required: + - currency + split: + type: object + order_id: + nullable: true + paidAt: + type: string + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + required: + - id + - domain + - reference + - amount + - paid_at + - channel + - currency + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - pos_transaction_data + - source + - fees_breakdown + integration: + type: integer + deducted_amount: + type: integer + channel: + nullable: true + merchant_note: + type: string + customer_note: + type: string + status: + type: string + refunded_by: + type: string + expected_at: + type: string + currency: + type: string + domain: + type: string + amount: + type: integer + fully_deducted: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - transaction + - integration + - deducted_amount + - channel + - merchant_note + - customer_note + - status + - refunded_by + - expected_at + - currency + - domain + - amount + - fully_deducted + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/RefundFetchResponse.yaml b/src/assets/openapi/components/schemas/RefundFetchResponse.yaml new file mode 100644 index 0000000..6cfb8b2 --- /dev/null +++ b/src/assets/openapi/components/schemas/RefundFetchResponse.yaml @@ -0,0 +1,121 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + transaction: + type: integer + dispute: + nullable: true + settlement: + nullable: true + id: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + status: + type: string + refunded_at: + nullable: true + refunded_by: + type: string + customer_note: + type: string + merchant_note: + type: string + deducted_amount: + type: integer + fully_deducted: + type: integer + createdAt: + type: string + bank_reference: + nullable: true + transaction_reference: + type: string + reason: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + refund_type: + type: string + transaction_amount: + type: integer + initiated_by: + type: string + refund_channel: + type: string + session_id: + nullable: true + collect_account_number: + type: boolean + required: + - integration + - transaction + - dispute + - settlement + - id + - domain + - currency + - amount + - status + - refunded_at + - refunded_by + - customer_note + - merchant_note + - deducted_amount + - fully_deducted + - createdAt + - bank_reference + - transaction_reference + - reason + - customer + - refund_type + - transaction_amount + - initiated_by + - refund_channel + - session_id + - collect_account_number +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/RefundListResponse.yaml b/src/assets/openapi/components/schemas/RefundListResponse.yaml new file mode 100644 index 0000000..7902c4e --- /dev/null +++ b/src/assets/openapi/components/schemas/RefundListResponse.yaml @@ -0,0 +1,38 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./RefundListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: string + page: + type: integer + pageCount: + type: integer + failedRefundCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + - failedRefundCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/RefundListResponseArray.yaml b/src/assets/openapi/components/schemas/RefundListResponseArray.yaml new file mode 100644 index 0000000..f84c080 --- /dev/null +++ b/src/assets/openapi/components/schemas/RefundListResponseArray.yaml @@ -0,0 +1,111 @@ +type: object +properties: + integration: + type: integer + transaction: + type: integer + dispute: + nullable: true + settlement: + nullable: true + id: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + status: + type: string + refunded_at: + nullable: true + refunded_by: + type: string + customer_note: + type: string + merchant_note: + type: string + deducted_amount: + type: integer + fully_deducted: + type: integer + createdAt: + type: string + bank_reference: + nullable: true + transaction_reference: + type: string + reason: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + refund_type: + type: string + transaction_amount: + type: integer + initiated_by: + type: string + refund_channel: + type: string + session_id: + nullable: true + collect_account_number: + type: boolean +required: + - integration + - transaction + - dispute + - settlement + - id + - domain + - currency + - amount + - status + - refunded_at + - refunded_by + - customer_note + - merchant_note + - deducted_amount + - fully_deducted + - createdAt + - bank_reference + - transaction_reference + - reason + - customer + - refund_type + - transaction_amount + - initiated_by + - refund_channel + - session_id + - collect_account_number diff --git a/src/assets/openapi/components/schemas/Response.yaml b/src/assets/openapi/components/schemas/Response.yaml new file mode 100644 index 0000000..50a78b8 --- /dev/null +++ b/src/assets/openapi/components/schemas/Response.yaml @@ -0,0 +1,8 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object diff --git a/src/assets/openapi/components/schemas/ShareSubaccountsArray.yaml b/src/assets/openapi/components/schemas/ShareSubaccountsArray.yaml new file mode 100644 index 0000000..2dfb5ee --- /dev/null +++ b/src/assets/openapi/components/schemas/ShareSubaccountsArray.yaml @@ -0,0 +1,21 @@ +type: object +properties: + amount: + type: integer + original_share: + type: number + fees: + type: integer + subaccount_code: + type: string + id: + type: integer + integration: + type: string +required: + - amount + - original_share + - fees + - subaccount_code + - id + - integration diff --git a/src/assets/openapi/components/schemas/SplitAddUpdateSubaccountResponse.yaml b/src/assets/openapi/components/schemas/SplitAddUpdateSubaccountResponse.yaml new file mode 100644 index 0000000..ed92c76 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitAddUpdateSubaccountResponse.yaml @@ -0,0 +1,61 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: ./SplitSubaccountsArray.yaml + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SplitCreate.yaml b/src/assets/openapi/components/schemas/SplitCreate.yaml new file mode 100644 index 0000000..fdbea70 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitCreate.yaml @@ -0,0 +1,44 @@ +type: object +description: | + Split configuration for transactions +properties: + name: + description: Name of the transaction split + type: string + type: + description: The type of transaction split you want to create. + type: string + enum: + - percentage + - flat + subaccounts: + description: A list of object containing subaccount code and number of shares + type: array + items: + $ref: ./SplitSubaccounts.yaml + currency: + description: The transaction currency + type: string + enum: + - NGN + - GHS + - ZAR + - USD + bearer_type: + description: This allows you specify how the transaction charge should be processed + type: string + enum: + - subaccount + - account + - all-proportional + - all + bearer_subaccount: + description: >- + This is the subaccount code of the customer or partner that would bear the + transaction charge if you specified subaccount as the bearer type + type: string +required: + - name + - type + - subaccounts + - currency diff --git a/src/assets/openapi/components/schemas/SplitCreateResponse.yaml b/src/assets/openapi/components/schemas/SplitCreateResponse.yaml new file mode 100644 index 0000000..ed92c76 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitCreateResponse.yaml @@ -0,0 +1,61 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: ./SplitSubaccountsArray.yaml + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SplitFetchResponse.yaml b/src/assets/openapi/components/schemas/SplitFetchResponse.yaml new file mode 100644 index 0000000..ed92c76 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitFetchResponse.yaml @@ -0,0 +1,61 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: ./SplitSubaccountsArray.yaml + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SplitListResponse.yaml b/src/assets/openapi/components/schemas/SplitListResponse.yaml new file mode 100644 index 0000000..7482f72 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./SplitListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/SplitListResponseArray.yaml b/src/assets/openapi/components/schemas/SplitListResponseArray.yaml new file mode 100644 index 0000000..dab4218 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitListResponseArray.yaml @@ -0,0 +1,50 @@ +type: object +properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: ./SplitSubaccountsArray.yaml + total_subaccounts: + type: integer +required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts diff --git a/src/assets/openapi/components/schemas/SplitRemoveSubaccountResponse.yaml b/src/assets/openapi/components/schemas/SplitRemoveSubaccountResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitRemoveSubaccountResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/SplitSubaccounts.yaml b/src/assets/openapi/components/schemas/SplitSubaccounts.yaml new file mode 100644 index 0000000..cf00b5f --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitSubaccounts.yaml @@ -0,0 +1,8 @@ +type: object +properties: + subaccount: + description: Subaccount code of the customer or partner + type: string + share: + description: The percentage or flat quota of the customer or partner + type: string diff --git a/src/assets/openapi/components/schemas/SplitSubaccountsArray.yaml b/src/assets/openapi/components/schemas/SplitSubaccountsArray.yaml new file mode 100644 index 0000000..60f8831 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitSubaccountsArray.yaml @@ -0,0 +1,44 @@ +type: object +properties: + subaccount: + type: object + properties: + id: + type: integer + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + settlement_bank: + type: string + currency: + type: string + account_number: + type: string + required: + - id + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - settlement_bank + - currency + - account_number + share: + type: integer +required: + - subaccount + - share diff --git a/src/assets/openapi/components/schemas/SplitUpdate.yaml b/src/assets/openapi/components/schemas/SplitUpdate.yaml new file mode 100644 index 0000000..9e35389 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitUpdate.yaml @@ -0,0 +1,21 @@ +type: object +properties: + name: + description: Name of the transaction split + type: string + active: + description: Toggle status of split. When true, the split is active, else it's inactive + type: boolean + bearer_type: + description: This allows you specify how the transaction charge should be processed + type: string + enum: + - subaccount + - account + - all-proportional + - all + bearer_subaccount: + description: >- + This is the subaccount code of the customer or partner that would bear the + transaction charge if you specified subaccount as the bearer type + type: string diff --git a/src/assets/openapi/components/schemas/SplitUpdateResponse.yaml b/src/assets/openapi/components/schemas/SplitUpdateResponse.yaml new file mode 100644 index 0000000..ed92c76 --- /dev/null +++ b/src/assets/openapi/components/schemas/SplitUpdateResponse.yaml @@ -0,0 +1,61 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: ./SplitSubaccountsArray.yaml + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/StorefrontAddProducts.yaml b/src/assets/openapi/components/schemas/StorefrontAddProducts.yaml new file mode 100644 index 0000000..5a3a944 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontAddProducts.yaml @@ -0,0 +1,9 @@ +type: object +required: + - products +properties: + products: + description: An array of product IDs + type: array + items: + type: integer diff --git a/src/assets/openapi/components/schemas/StorefrontContactsArray.yaml b/src/assets/openapi/components/schemas/StorefrontContactsArray.yaml new file mode 100644 index 0000000..de176fc --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontContactsArray.yaml @@ -0,0 +1,15 @@ +type: object +properties: + value: + type: string + id: + type: integer + type_name: + nullable: true + type: + type: integer +required: + - value + - id + - type_name + - type diff --git a/src/assets/openapi/components/schemas/StorefrontCreate.yaml b/src/assets/openapi/components/schemas/StorefrontCreate.yaml new file mode 100644 index 0000000..64c4f53 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontCreate.yaml @@ -0,0 +1,24 @@ +type: object +required: + - name + - slug + - currency +properties: + name: + description: Name of the storefront + type: string + slug: + description: > + A unique identifier to access your store. Once the storefront is created, + it can be accessed from + + https://paystack.shop/your-slug + type: string + currency: + description: > + Currency for prices of products in your storefront. Allowed values are: + `NGN`, `GHS`, `KES`, `ZAR` or `USD` + type: string + description: + description: The description of the storefront + type: string diff --git a/src/assets/openapi/components/schemas/StorefrontCreateResponse.yaml b/src/assets/openapi/components/schemas/StorefrontCreateResponse.yaml new file mode 100644 index 0000000..5d957b6 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontCreateResponse.yaml @@ -0,0 +1,85 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: ./StorefrontContactsArray.yaml + name: + type: string + slug: + type: string + currency: + type: string + welcome_message: + nullable: true + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: + type: string + background_color: + type: string + status: + type: string + shippable: + type: boolean + integration: + type: integer + domain: + type: string + digital_product_expiry: + nullable: true + metadata: + type: object + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: + type: array + items: {} + shipping_fees: + type: array + items: {} + required: + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color + - status + - shippable + - integration + - domain + - digital_product_expiry + - id + - createdAt + - updatedAt + - products + - shipping_fees +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/StorefrontDeleteResponse.yaml b/src/assets/openapi/components/schemas/StorefrontDeleteResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontDeleteResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/StorefrontDuplicateResponse.yaml b/src/assets/openapi/components/schemas/StorefrontDuplicateResponse.yaml new file mode 100644 index 0000000..5d957b6 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontDuplicateResponse.yaml @@ -0,0 +1,85 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: ./StorefrontContactsArray.yaml + name: + type: string + slug: + type: string + currency: + type: string + welcome_message: + nullable: true + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: + type: string + background_color: + type: string + status: + type: string + shippable: + type: boolean + integration: + type: integer + domain: + type: string + digital_product_expiry: + nullable: true + metadata: + type: object + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: + type: array + items: {} + shipping_fees: + type: array + items: {} + required: + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color + - status + - shippable + - integration + - domain + - digital_product_expiry + - id + - createdAt + - updatedAt + - products + - shipping_fees +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/StorefrontFetchResponse.yaml b/src/assets/openapi/components/schemas/StorefrontFetchResponse.yaml new file mode 100644 index 0000000..44ec192 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontFetchResponse.yaml @@ -0,0 +1,109 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: ./StorefrontContactsArray.yaml + name: + type: string + slug: + type: string + currency: + type: string + welcome_message: + nullable: true + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: + type: string + background_color: + type: string + status: + type: string + shippable: + type: boolean + integration: + type: integer + domain: + type: string + digital_product_expiry: + nullable: true + metadata: + type: object + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: + type: array + items: {} + shipping_fees: + type: array + items: {} + required: + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color + - status + - shippable + - integration + - domain + - digital_product_expiry + - id + - createdAt + - updatedAt + - products + - shipping_fees + meta: + type: object + properties: + product_count: + type: integer + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - product_count + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/StorefrontListResponse.yaml b/src/assets/openapi/components/schemas/StorefrontListResponse.yaml new file mode 100644 index 0000000..232e560 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./StorefrontListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/StorefrontListResponseArray.yaml b/src/assets/openapi/components/schemas/StorefrontListResponseArray.yaml new file mode 100644 index 0000000..3105e48 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontListResponseArray.yaml @@ -0,0 +1,40 @@ +type: object +properties: + id: + type: integer + name: + type: string + slug: + type: string + orders_count: + type: integer + status: + type: string + revenue: + nullable: true + currency: + type: string + products: + type: array + items: {} + contacts: + type: array + items: {} + social_media: + type: array + items: {} + shipping_fees: + type: array + items: {} +required: + - id + - name + - slug + - orders_count + - status + - revenue + - currency + - products + - contacts + - social_media + - shipping_fees diff --git a/src/assets/openapi/components/schemas/StorefrontProductResponse.yaml b/src/assets/openapi/components/schemas/StorefrontProductResponse.yaml new file mode 100644 index 0000000..afd70b8 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontProductResponse.yaml @@ -0,0 +1,104 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + name: + type: string + description: + type: string + currency: + type: string + price: + type: integer + quantity: + type: integer + is_shippable: + type: boolean + unlimited: + type: boolean + files: + type: array + items: {} + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + integration: + type: integer + domain: + type: string + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + product_code: + type: string + quantity_sold: + type: integer + type: + type: string + active: + type: boolean + in_stock: + type: boolean + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + low_stock_alert: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - name + - description + - currency + - price + - quantity + - is_shippable + - unlimited + - files + - shipping_fields + - integration + - domain + - metadata + - slug + - product_code + - quantity_sold + - type + - active + - in_stock + - minimum_orderable + - maximum_orderable + - low_stock_alert + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/StorefrontShippingResponse.yaml b/src/assets/openapi/components/schemas/StorefrontShippingResponse.yaml new file mode 100644 index 0000000..b2f81cb --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontShippingResponse.yaml @@ -0,0 +1,38 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + fee: + type: integer + name: + type: string + currency: + type: string + id: + type: integer + isDeleted: + type: boolean + createdAt: + type: string + updatedAt: + type: string + storefront: + type: integer + required: + - fee + - name + - currency + - id + - isDeleted + - createdAt + - updatedAt + - storefront +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/StorefrontUpdate.yaml b/src/assets/openapi/components/schemas/StorefrontUpdate.yaml new file mode 100644 index 0000000..ee96df1 --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontUpdate.yaml @@ -0,0 +1,15 @@ +type: object +properties: + name: + description: Name of the storefront + type: string + slug: + description: > + A unique identifier to access your store. Once the storefront is created, + it can be accessed from + + https://paystack.shop/your-slug + type: string + description: + description: The description of the storefront + type: string diff --git a/src/assets/openapi/components/schemas/StorefrontUpdateResponse.yaml b/src/assets/openapi/components/schemas/StorefrontUpdateResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/StorefrontUpdateResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/SubaccountCreate.yaml b/src/assets/openapi/components/schemas/SubaccountCreate.yaml new file mode 100644 index 0000000..7f00152 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubaccountCreate.yaml @@ -0,0 +1,37 @@ +type: object +required: + - business_name + - settlement_bank + - account_number + - percentage_charge +properties: + business_name: + description: Name of business for subaccount + type: string + settlement_bank: + description: >- + Bank code for the bank. You can get the list of Bank Codes by calling the + List Banks endpoint. + type: string + account_number: + description: Bank account number + type: string + percentage_charge: + description: Customer's phone number + type: number + format: float + description: + description: A description for this subaccount + type: string + primary_contact_email: + description: A contact email for the subaccount + type: string + primary_contact_name: + description: The name of the contact person for this subaccount + type: string + primary_contact_phone: + description: A phone number to call for this subaccount + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/SubaccountCreateResponse.yaml b/src/assets/openapi/components/schemas/SubaccountCreateResponse.yaml new file mode 100644 index 0000000..e630c14 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubaccountCreateResponse.yaml @@ -0,0 +1,86 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + business_name: + type: string + account_name: + type: string + nullable: true + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + account_number: + type: string + percentage_charge: + type: number + settlement_bank: + type: string + currency: + type: string + bank: + type: integer + integration: + type: integer + domain: + type: string + product: + type: string + managed_by_integration: + type: integer + subaccount_code: + type: string + is_verified: + type: boolean + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - account_number + - percentage_charge + - settlement_bank + - currency + - bank + - integration + - domain + - managed_by_integration + - product + - subaccount_code + - is_verified + - settlement_schedule + - active + - migrate + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SubaccountFetchResponse.yaml b/src/assets/openapi/components/schemas/SubaccountFetchResponse.yaml new file mode 100644 index 0000000..b2a9da3 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubaccountFetchResponse.yaml @@ -0,0 +1,86 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + account_name: + type: string + nullable: true + bank: + type: integer + managed_by_integration: + type: integer + domain: + type: string + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + is_verified: + type: boolean + settlement_bank: + type: string + account_number: + type: string + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + currency: + type: string + product: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - bank + - managed_by_integration + - domain + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - is_verified + - settlement_bank + - account_number + - settlement_schedule + - active + - migrate + - currency + - product + - id + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SubaccountListResponse.yaml b/src/assets/openapi/components/schemas/SubaccountListResponse.yaml new file mode 100644 index 0000000..8ee9fe9 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubaccountListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./SubaccountListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml b/src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml new file mode 100644 index 0000000..90fdca5 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml @@ -0,0 +1,45 @@ +type: object +properties: + id: + type: integer + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + settlement_bank: + type: string + bank_id: + type: integer + account_number: + type: string + currency: + type: string + active: + type: integer +required: + - id + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - settlement_bank + - bank_id + - account_number + - currency + - active diff --git a/src/assets/openapi/components/schemas/SubaccountUpdate.yaml b/src/assets/openapi/components/schemas/SubaccountUpdate.yaml new file mode 100644 index 0000000..a08d8ab --- /dev/null +++ b/src/assets/openapi/components/schemas/SubaccountUpdate.yaml @@ -0,0 +1,35 @@ +type: object +properties: + business_name: + description: Name of business for subaccount + type: string + settlement_bank: + description: >- + Bank code for the bank. You can get the list of Bank Codes by calling the + List Banks endpoint. + type: string + account_number: + description: Bank account number + type: string + active: + description: Activate or deactivate a subaccount + type: boolean + percentage_charge: + description: Customer's phone number + type: number + format: float + description: + description: A description for this subaccount + type: string + primary_contact_email: + description: A contact email for the subaccount + type: string + primary_contact_name: + description: The name of the contact person for this subaccount + type: string + primary_contact_phone: + description: A phone number to call for this subaccount + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/SubaccountUpdateResponse.yaml b/src/assets/openapi/components/schemas/SubaccountUpdateResponse.yaml new file mode 100644 index 0000000..1f964a3 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubaccountUpdateResponse.yaml @@ -0,0 +1,86 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + domain: + type: string + subaccount_code: + type: string + account_name: + type: string + nullable: true + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + is_verified: + type: boolean + settlement_bank: + type: string + account_number: + type: string + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + currency: + type: string + product: + type: string + id: + type: integer + integration: + type: integer + bank: + type: integer + managed_by_integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - domain + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - is_verified + - settlement_bank + - account_number + - settlement_schedule + - active + - migrate + - currency + - product + - id + - integration + - bank + - managed_by_integration + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SubscriptionCreate.yaml b/src/assets/openapi/components/schemas/SubscriptionCreate.yaml new file mode 100644 index 0000000..bf3acfb --- /dev/null +++ b/src/assets/openapi/components/schemas/SubscriptionCreate.yaml @@ -0,0 +1,25 @@ +type: object +required: + - customer + - plan +properties: + customer: + description: Customer's email address or customer code + type: string + plan: + description: Plan code + type: string + authorization: + description: >- + If customer has multiple authorizations, you can set the desired + authorization you wish to use for this subscription here. + + If this is not supplied, the customer's most recent authorization would be + used + type: string + start_date: + description: >- + Set the date for the first debit. (ISO 8601 format) e.g. + 2017-05-16T00:30:13+01:00 + type: string + format: date-time diff --git a/src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml b/src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml new file mode 100644 index 0000000..d62f492 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml @@ -0,0 +1,71 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + customer: + type: integer + plan: + type: integer + integration: + type: integer + domain: + type: string + start: + type: integer + status: + type: string + quantity: + type: integer + amount: + type: integer + authorization: + type: integer + invoice_limit: + type: integer + split_code: + nullable: true + subscription_code: + type: string + email_token: + type: string + id: + type: integer + cancelledAt: + nullable: true + createdAt: + type: string + updatedAt: + type: string + cron_expression: + type: string + next_payment_date: + type: string + required: + - customer + - plan + - integration + - domain + - start + - status + - quantity + - amount + - authorization + - invoice_limit + - split_code + - subscription_code + - email_token + - id + - cancelledAt + - createdAt + - updatedAt + - cron_expression + - next_payment_date +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SubscriptionDisableResponse.yaml b/src/assets/openapi/components/schemas/SubscriptionDisableResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/SubscriptionDisableResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml b/src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml new file mode 100644 index 0000000..6160bb6 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml @@ -0,0 +1,178 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + subscription_code: + type: string + email_token: + type: string + amount: + type: integer + cron_expression: + type: string + next_payment_date: + type: string + open_invoice: + nullable: true + createdAt: + type: string + cancelledAt: + nullable: true + integration: + type: integer + plan: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + invoices: + type: array + items: {} + invoices_history: + type: array + items: {} + invoice_limit: + type: integer + split_code: + nullable: true + most_recent_invoice: + nullable: true + payments_count: + type: integer + required: + - id + - domain + - status + - subscription_code + - email_token + - amount + - cron_expression + - next_payment_date + - open_invoice + - createdAt + - cancelledAt + - integration + - plan + - authorization + - customer + - invoices + - invoices_history + - invoice_limit + - split_code + - most_recent_invoice + - payments_count +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/SubscriptionListResponse.yaml b/src/assets/openapi/components/schemas/SubscriptionListResponse.yaml new file mode 100644 index 0000000..9037e20 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubscriptionListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./SubscriptionListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml b/src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml new file mode 100644 index 0000000..11e7ec0 --- /dev/null +++ b/src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml @@ -0,0 +1,180 @@ +type: object +properties: + id: + type: integer + domain: + type: string + status: + type: string + start: + type: integer + quantity: + type: integer + subscription_code: + type: string + email_token: + type: string + amount: + type: integer + cron_expression: + type: string + nullable: true + next_payment_date: + type: string + nullable: true + open_invoice: + nullable: true + createdAt: + type: string + integration: + type: integer + plan: + type: object + properties: + id: + type: integer + domain: + type: string + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - id + - domain + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + - integration + - createdAt + - updatedAt + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + nullable: true + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: integer + signature: + type: string + nullable: true + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + invoice_limit: + type: integer + split_code: + nullable: true + payments_count: + type: integer + most_recent_invoice: + nullable: true +required: + - id + - domain + - status + - start + - quantity + - subscription_code + - email_token + - amount + - cron_expression + - next_payment_date + - open_invoice + - createdAt + - integration + - plan + - authorization + - customer + - invoice_limit + - split_code + - payments_count + - most_recent_invoice diff --git a/src/assets/openapi/components/schemas/SubscriptionToggle.yaml b/src/assets/openapi/components/schemas/SubscriptionToggle.yaml new file mode 100644 index 0000000..07ddf7b --- /dev/null +++ b/src/assets/openapi/components/schemas/SubscriptionToggle.yaml @@ -0,0 +1,11 @@ +type: object +required: + - code + - token +properties: + code: + description: Subscription code + type: string + token: + description: Email token + type: string diff --git a/src/assets/openapi/components/schemas/TerminalActivationToggle.yaml b/src/assets/openapi/components/schemas/TerminalActivationToggle.yaml new file mode 100644 index 0000000..65d2d66 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalActivationToggle.yaml @@ -0,0 +1,10 @@ +type: object +description: Model for activating and deactivating a debug Terminal +required: + - serial_number +properties: + serial_number: + description: Device Serial Number + type: string +example: + serial_number: '1111150412230003899' diff --git a/src/assets/openapi/components/schemas/TerminalCommissionDeviceResponse.yaml b/src/assets/openapi/components/schemas/TerminalCommissionDeviceResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalCommissionDeviceResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TerminalCountsResponse.yaml b/src/assets/openapi/components/schemas/TerminalCountsResponse.yaml new file mode 100644 index 0000000..362d364 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalCountsResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + count: + type: integer + status: + type: string + required: + - count + - status +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TerminalDecommissionDeviceResponse.yaml b/src/assets/openapi/components/schemas/TerminalDecommissionDeviceResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalDecommissionDeviceResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TerminalGetResponse.yaml b/src/assets/openapi/components/schemas/TerminalGetResponse.yaml new file mode 100644 index 0000000..c2ca8e0 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalGetResponse.yaml @@ -0,0 +1,48 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + serial_number: + type: string + device_make: + type: string + nullable: true + terminal_id: + type: string + integration: + type: integer + domain: + type: string + name: + type: string + nullable: true + address: + type: string + nullable: true + status: + type: string + split_code: + type: string + nullable: true + required: + - id + - serial_number + - device_make + - terminal_id + - integration + - domain + - name + - address + - status + - split_code +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TerminalGetStatusResponse.yaml b/src/assets/openapi/components/schemas/TerminalGetStatusResponse.yaml new file mode 100644 index 0000000..b97eb88 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalGetStatusResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + online: + type: boolean + available: + type: boolean + required: + - online + - available +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TerminalListsResponse.yaml b/src/assets/openapi/components/schemas/TerminalListsResponse.yaml new file mode 100644 index 0000000..8ce5c55 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalListsResponse.yaml @@ -0,0 +1,33 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./TerminalListsResponseArray.yaml + meta: + type: object + properties: + next: + type: array + nullable: true + items: {} + previous: + type: array + nullable: true + items: {} + perPage: + type: integer + required: + - next + - previous + - perPage + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/TerminalListsResponseArray.yaml b/src/assets/openapi/components/schemas/TerminalListsResponseArray.yaml new file mode 100644 index 0000000..10d3037 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalListsResponseArray.yaml @@ -0,0 +1,34 @@ +type: object +properties: + id: + type: integer + serial_number: + type: string + nullable: true + device_make: + type: string + nullable: true + terminal_id: + type: string + integration: + type: integer + domain: + type: string + name: + type: string + nullable: true + address: + type: string + nullable: true + status: + type: string +required: + - id + - serial_number + - device_make + - terminal_id + - integration + - domain + - name + - address + - status diff --git a/src/assets/openapi/components/schemas/TerminalSendEvent.yaml b/src/assets/openapi/components/schemas/TerminalSendEvent.yaml new file mode 100644 index 0000000..ff5b883 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalSendEvent.yaml @@ -0,0 +1,21 @@ +type: object +properties: + type: + description: The type of event to push + type: string + enum: + - invoice + - transaction + action: + description: > + The action the Terminal needs to perform. For the invoice type, the action + can either be process or view. + + For the transaction type, the action can either be process or print. + type: string + enum: + - process + - view + - print + data: + $ref: ./TerminalSendEventData.yaml diff --git a/src/assets/openapi/components/schemas/TerminalSendEventData.yaml b/src/assets/openapi/components/schemas/TerminalSendEventData.yaml new file mode 100644 index 0000000..fe9cb95 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalSendEventData.yaml @@ -0,0 +1,13 @@ +type: object +description: The parameters needed to perform the specified action +properties: + id: + description: The invoice or transaction ID you want to push to the Terminal + type: integer + format: int64 + reference: + description: The offline_reference from the Payment Request response + type: string +example: + id: 7895939 + reference: '4634337895939' diff --git a/src/assets/openapi/components/schemas/TerminalUpate.yaml b/src/assets/openapi/components/schemas/TerminalUpate.yaml new file mode 100644 index 0000000..1bc0741 --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalUpate.yaml @@ -0,0 +1,12 @@ +type: object +description: Model for updating a Terminal details +properties: + name: + description: The new name for the Terminal + type: string + address: + description: The new address for the Terminal + type: string +example: + name: Oreos + address: Somewhere on earth diff --git a/src/assets/openapi/components/schemas/TerminalUpdateResponse.yaml b/src/assets/openapi/components/schemas/TerminalUpdateResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TerminalUpdateResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml b/src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml new file mode 100644 index 0000000..a2b9e35 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml @@ -0,0 +1,52 @@ +type: object +required: + - email + - amount + - authorization_code +properties: + email: + description: Customer's email address + type: string + amount: + description: Amount in the lower denomination of your currency + type: integer + authorization_code: + description: Valid authorization code to charge + type: string + reference: + description: >- + Unique transaction reference. Only -, ., = and alphanumeric characters + allowed. + type: string + currency: + $ref: ./Currency.yaml + split_code: + description: The split code of the transaction split + type: string + subaccount: + description: The code for the subaccount that owns the payment + type: string + transaction_charge: + description: |- + A flat fee to charge the subaccount for a transaction. + This overrides the split percentage set when the subaccount was created + type: string + bearer: + description: The bearer of the transaction charge + type: string + enum: + - account + - subaccount + metadata: + description: Stringified JSON object of custom data + type: string + queue: + description: >- + If you are making a scheduled charge call, it is a good idea to queue them + so the processing system does not get overloaded causing transaction + processing errors. + type: boolean +example: + email: jb@email.com + amount: 30000 + authorization_code: AUTH_df1l5ehnym diff --git a/src/assets/openapi/components/schemas/TransactionChargeResponse.yaml b/src/assets/openapi/components/schemas/TransactionChargeResponse.yaml new file mode 100644 index 0000000..ab06b82 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionChargeResponse.yaml @@ -0,0 +1,131 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + amount: + type: integer + currency: + type: string + transaction_date: + type: string + reference: + type: string + domain: + type: string + redirect_url: + type: string + nullable: true + metadata: + type: object + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + nullable: true + bin: + type: string + nullable: true + last4: + type: string + nullable: true + exp_month: + type: string + exp_year: + type: string + channel: + type: string + nullable: true + card_type: + type: string + nullable: true + bank: + type: string + nullable: true + country_code: + type: string + nullable: true + brand: + type: string + nullable: true + reusable: + type: boolean + signature: + type: string + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - email + - customer_code + - phone + - risk_action + url: + type: string + required: + - status + - amount + - currency + - transaction_date + - reference + - domain + - redirect_url + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionCheckAuthorizationResponse.yaml b/src/assets/openapi/components/schemas/TransactionCheckAuthorizationResponse.yaml new file mode 100644 index 0000000..fdb6b07 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionCheckAuthorizationResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + currency: + type: string + required: + - amount + - currency +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionExportResponse.yaml b/src/assets/openapi/components/schemas/TransactionExportResponse.yaml new file mode 100644 index 0000000..839e1c8 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionExportResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + path: + type: string + expiresAt: + type: string + required: + - path + - expiresAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionFetchResponse.yaml b/src/assets/openapi/components/schemas/TransactionFetchResponse.yaml new file mode 100644 index 0000000..5c765d3 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionFetchResponse.yaml @@ -0,0 +1,201 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + helpdesk_link: + nullable: true + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: ./MetadataCustomFieldsArray.yaml + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + type: object + properties: + type: + type: string + source: + type: string + identifier: + nullable: true + required: + - type + - source + - identifier + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - helpdesk_link + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionInitialize.yaml b/src/assets/openapi/components/schemas/TransactionInitialize.yaml new file mode 100644 index 0000000..4f3e00c --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionInitialize.yaml @@ -0,0 +1,81 @@ +description: Initialize a transaction +type: object +required: + - email + - amount +properties: + email: + description: Customer's email address + type: string + amount: + description: > + Amount should be in smallest denomination of the currency. For example if + currency is NGN, pesewas, if currency is GHS, and cents, if currency is + ZAR + type: integer + currency: + $ref: ./Currency.yaml + reference: + description: >- + Unique transaction reference. Only -, ., = and alphanumeric characters + allowed. + type: string + channels: + description: >- + An array of payment channels to control what channels you want to make + available to the user to make a payment with + type: array + items: + type: string + enum: + - card + - bank + - ussd + - qr + - eft + - mobile_money + - bank_transfer + callback_url: + description: > + Fully qualified url, e.g. https://example.com/ to redirect your customers + to after a successful payment. Use this to override the callback url + provided on the dashboard for this transaction + type: string + plan: + description: > + If transaction is to create a subscription to a predefined plan, provide + plan code here. + + This would invalidate the value provided in amount + type: string + invoice_limit: + description: Number of times to charge customer during subscription to plan + type: integer + split_code: + description: The split code of the transaction split + type: string + split: + $ref: ./SplitCreate.yaml + subaccount: + description: The code for the subaccount that owns the payment + type: string + transaction_charge: + description: | + A flat fee to charge the subaccount for a transaction. + This overrides the split percentage set when the subaccount was created + type: string + bearer: + description: The bearer of the transaction charge + type: string + enum: + - account + - subaccount + label: + description: Used to replace the email address shown on the Checkout + type: string + metadata: + description: Stringified JSON object of custom data + type: string +example: + email: test@demo.com + amount: 10000 diff --git a/src/assets/openapi/components/schemas/TransactionInitializeBadRequestModel.yaml b/src/assets/openapi/components/schemas/TransactionInitializeBadRequestModel.yaml new file mode 100644 index 0000000..d8db5d8 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionInitializeBadRequestModel.yaml @@ -0,0 +1,34 @@ +type: object +description: > + Error response returned when a transaction is initialized with incorrect + parameters +properties: + status: + type: boolean + description: An indicator for the state of the request + message: + type: string + description: A short description of the error + meta: + $ref: ./ErrorMeta.yaml + type: + type: string + description: A tag to indicate the type of the error + enum: + - validation_error + - processor_error + - api_error + code: + type: string + description: The error code + errorCodeMappingNotFound: + type: boolean + description: An indicator for error mapping for the request +example: + status: false + message: Duplicate Transaction Reference + meta: + nextStep: Try and create the Transaction or Charge with a new reference + type: validation_error + code: duplicate_reference + errorCodeMappingNotFound: false diff --git a/src/assets/openapi/components/schemas/TransactionInitializeResponse.yaml b/src/assets/openapi/components/schemas/TransactionInitializeResponse.yaml new file mode 100644 index 0000000..3be8761 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionInitializeResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + authorization_url: + type: string + access_code: + type: string + reference: + type: string + required: + - authorization_url + - access_code + - reference +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionListResponse.yaml b/src/assets/openapi/components/schemas/TransactionListResponse.yaml new file mode 100644 index 0000000..4d0d747 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionListResponse.yaml @@ -0,0 +1,40 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./TransactionListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + total_volume: + type: number + skipped: + type: integer + perPage: + anyOf: + - type: string + - type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - total_volume + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/TransactionListResponseArray.yaml b/src/assets/openapi/components/schemas/TransactionListResponseArray.yaml new file mode 100644 index 0000000..f7ab103 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionListResponseArray.yaml @@ -0,0 +1,179 @@ +type: object +properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + nullable: true + metadata: + type: object + nullable: true + log: + nullable: true + fees: + type: integer + nullable: true + fees_split: + type: integer + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + customer_code: + type: string + risk_action: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - customer_code + - risk_action + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + plan: + type: object + split: + type: object + subaccount: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + source: + type: object + properties: + source: + type: string + type: + type: string + identifier: + nullable: true + entry_point: + type: string + required: + - source + - type + - identifier + - entry_point + nullable: true + connect: + type: object + nullable: true + pos_transaction_data: + nullable: true +required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - customer + - authorization + - plan + - split + - subaccount + - order_id + - paidAt + - createdAt + - requested_amount + - source + - connect + - pos_transaction_data diff --git a/src/assets/openapi/components/schemas/TransactionPartialDebit.yaml b/src/assets/openapi/components/schemas/TransactionPartialDebit.yaml new file mode 100644 index 0000000..a154f80 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionPartialDebit.yaml @@ -0,0 +1,32 @@ +type: object +required: + - email + - amount + - authorization_code + - currency +properties: + email: + description: Customer's email address + type: string + amount: + description: Specified in the lowest denomination of your currency + type: integer + format: int64 + authorization_code: + description: Valid authorization code to charge + type: string + currency: + $ref: ./Currency.yaml + at_least: + description: Minimum amount to charge + type: string + reference: + description: >- + Unique transaction reference. Only -, ., = and alphanumeric characters + allowed. + type: string +example: + email: tap@email.com + amount: 40510 + authorization_code: AUTH_df1l5ehnym + currency: ZAR diff --git a/src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml b/src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml new file mode 100644 index 0000000..f38dcc6 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml @@ -0,0 +1,143 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + currency: + type: string + transaction_date: + type: string + status: + type: string + reference: + type: string + domain: + type: string + metadata: + type: string + gateway_response: + type: string + message: + nullable: true + channel: + type: string + ip_address: + nullable: true + log: + nullable: true + fees: + type: integer + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: integer + requested_amount: + type: integer + id: + type: integer + required: + - amount + - currency + - transaction_date + - status + - reference + - domain + - gateway_response + - message + - channel + - ip_address + - log + - fees + - authorization + - customer + - metadata + - plan + - requested_amount + - id +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionPendingTransfersByCurrencyArray.yaml b/src/assets/openapi/components/schemas/TransactionPendingTransfersByCurrencyArray.yaml new file mode 100644 index 0000000..abd9c5d --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionPendingTransfersByCurrencyArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + currency: + type: string + amount: + type: integer +required: + - currency + - amount diff --git a/src/assets/openapi/components/schemas/TransactionTimelineResponse.yaml b/src/assets/openapi/components/schemas/TransactionTimelineResponse.yaml new file mode 100644 index 0000000..a62c524 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionTimelineResponse.yaml @@ -0,0 +1,12 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionTotalVolumeByCurrencyArray.yaml b/src/assets/openapi/components/schemas/TransactionTotalVolumeByCurrencyArray.yaml new file mode 100644 index 0000000..abd9c5d --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionTotalVolumeByCurrencyArray.yaml @@ -0,0 +1,9 @@ +type: object +properties: + currency: + type: string + amount: + type: integer +required: + - currency + - amount diff --git a/src/assets/openapi/components/schemas/TransactionTotalsResponse.yaml b/src/assets/openapi/components/schemas/TransactionTotalsResponse.yaml new file mode 100644 index 0000000..c2d8997 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionTotalsResponse.yaml @@ -0,0 +1,33 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + total_transactions: + type: integer + total_volume: + type: integer + total_volume_by_currency: + type: array + items: + $ref: ./TransactionTotalVolumeByCurrencyArray.yaml + pending_transfers: + type: integer + pending_transfers_by_currency: + type: array + items: + $ref: ./TransactionPendingTransfersByCurrencyArray.yaml + required: + - total_transactions + - total_volume + - total_volume_by_currency + - pending_transfers + - pending_transfers_by_currency +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml b/src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml new file mode 100644 index 0000000..78d573e --- /dev/null +++ b/src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml @@ -0,0 +1,181 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + anyOf: + - type: string + - type: object + log: + nullable: true + fees: + type: integer + nullable: true + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + nullable: true + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferApprovalGetSettingsResponse.yaml b/src/assets/openapi/components/schemas/TransferApprovalGetSettingsResponse.yaml new file mode 100644 index 0000000..c011f7c --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferApprovalGetSettingsResponse.yaml @@ -0,0 +1,41 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + on_for_test_mode: + type: boolean + on_for_live_mode: + type: boolean + on_when_otp_is_on: + type: boolean + on_for_dashboard_initiated_transfers: + type: boolean + automatically_blacklist_rejected_recipients: + type: boolean + test_approval_url: + type: string + live_approval_url: + type: string + test_contact_email: + type: string + live_contact_email: + type: string + required: + - on_for_test_mode + - on_for_live_mode + - on_when_otp_is_on + - on_for_dashboard_initiated_transfers + - automatically_blacklist_rejected_recipients + - test_approval_url + - live_approval_url + - test_contact_email + - live_contact_email +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferApprovalUpdateSettingsResponse.yaml b/src/assets/openapi/components/schemas/TransferApprovalUpdateSettingsResponse.yaml new file mode 100644 index 0000000..c011f7c --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferApprovalUpdateSettingsResponse.yaml @@ -0,0 +1,41 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + on_for_test_mode: + type: boolean + on_for_live_mode: + type: boolean + on_when_otp_is_on: + type: boolean + on_for_dashboard_initiated_transfers: + type: boolean + automatically_blacklist_rejected_recipients: + type: boolean + test_approval_url: + type: string + live_approval_url: + type: string + test_contact_email: + type: string + live_contact_email: + type: string + required: + - on_for_test_mode + - on_for_live_mode + - on_when_otp_is_on + - on_for_dashboard_initiated_transfers + - automatically_blacklist_rejected_recipients + - test_approval_url + - live_approval_url + - test_contact_email + - live_contact_email +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferBase.yaml b/src/assets/openapi/components/schemas/TransferBase.yaml new file mode 100644 index 0000000..57b650c --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferBase.yaml @@ -0,0 +1,24 @@ +type: object +required: + - amount + - recipient + - reference +properties: + amount: + description: >- + Amount to transfer in kobo if currency is NGN and pesewas if currency is + GHS. + type: integer + recipient: + description: The transfer recipient's code + type: string + reference: + description: > + To ensure idempotency, you need to provide e a unique identifier for the + request. The identifier should be a lowercase alphanumeric string with + only -,_ symbols allowed. + type: string + minimum: 16 + reason: + description: The reason or narration for the transfer. + type: string diff --git a/src/assets/openapi/components/schemas/TransferBulk.yaml b/src/assets/openapi/components/schemas/TransferBulk.yaml new file mode 100644 index 0000000..44d3416 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferBulk.yaml @@ -0,0 +1,15 @@ +type: object +required: + - source + - transfers +properties: + source: + description: Where should we transfer from? Only balance is allowed for now + type: string + transfers: + description: >- + A list of transfer object. Each object should contain amount, recipient, + and reference + type: array + items: + $ref: ./TransferInitiate.yaml diff --git a/src/assets/openapi/components/schemas/TransferBulkResponse.yaml b/src/assets/openapi/components/schemas/TransferBulkResponse.yaml new file mode 100644 index 0000000..3daa427 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferBulkResponse.yaml @@ -0,0 +1,14 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./TransferBulkResponseArray.yaml +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferBulkResponseArray.yaml b/src/assets/openapi/components/schemas/TransferBulkResponseArray.yaml new file mode 100644 index 0000000..6194284 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferBulkResponseArray.yaml @@ -0,0 +1,21 @@ +type: object +properties: + reference: + type: string + recipient: + type: string + amount: + type: integer + transfer_code: + type: string + currency: + type: string + status: + type: string +required: + - reference + - recipient + - amount + - transfer_code + - currency + - status diff --git a/src/assets/openapi/components/schemas/TransferCreateResponse.yaml b/src/assets/openapi/components/schemas/TransferCreateResponse.yaml new file mode 100644 index 0000000..964577c --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferCreateResponse.yaml @@ -0,0 +1,72 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transfersessionid: + type: array + items: {} + domain: + type: string + amount: + type: integer + currency: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + reason: + type: string + status: + type: string + failures: + nullable: true + transfer_code: + type: string + titan_code: + nullable: true + transferred_at: + nullable: true + id: + type: integer + integration: + type: integer + request: + type: integer + recipient: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - transfersessionid + - domain + - amount + - currency + - reference + - source + - source_details + - reason + - status + - failures + - transfer_code + - titan_code + - transferred_at + - id + - integration + - request + - recipient + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferDisablesOtpResponse.yaml b/src/assets/openapi/components/schemas/TransferDisablesOtpResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferDisablesOtpResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TransferEnablesOtpResponse.yaml b/src/assets/openapi/components/schemas/TransferEnablesOtpResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferEnablesOtpResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TransferFeesBreakdownArray.yaml b/src/assets/openapi/components/schemas/TransferFeesBreakdownArray.yaml new file mode 100644 index 0000000..b31abc6 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferFeesBreakdownArray.yaml @@ -0,0 +1,12 @@ +type: object +properties: + amount: + type: string + formula: + nullable: true + type: + type: string +required: + - amount + - formula + - type diff --git a/src/assets/openapi/components/schemas/TransferFetchResponse.yaml b/src/assets/openapi/components/schemas/TransferFetchResponse.yaml new file mode 100644 index 0000000..91a09ca --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferFetchResponse.yaml @@ -0,0 +1,160 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + request: + type: integer + transferred_at: + nullable: true + updatedAt: + type: string + recipient: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + fee_charged: + type: integer + fees_breakdown: + type: array + items: + $ref: ./TransferFeesBreakdownArray.yaml + nullable: true + gateway_response: + type: string + nullable: true + required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - request + - transferred_at + - updatedAt + - recipient + - session + - fee_charged + - fees_breakdown + - gateway_response +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferFetchZAResponse.yaml b/src/assets/openapi/components/schemas/TransferFetchZAResponse.yaml new file mode 100644 index 0000000..694d80c --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferFetchZAResponse.yaml @@ -0,0 +1,180 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + request: + type: integer + transferred_at: + nullable: true + updatedAt: + type: string + recipient: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + type: object + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + fee_charged: + type: integer + fees_breakdown: + type: array + items: + $ref: ./TransferFeesBreakdownArray.yaml + nullable: true + gateway_response: + type: string + nullable: true + transferAttributes: + type: object + properties: + transfer: + type: integer + transfer_type: + type: integer + created_at: + type: string + updated_at: + nullable: true + receipt_number: + nullable: true + required: + - transfer + - transfer_type + - created_at + - updated_at + - receipt_number + required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - request + - transferred_at + - updatedAt + - recipient + - session + - fee_charged + - fees_breakdown + - gateway_response + - transferAttributes +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferFinalize.yaml b/src/assets/openapi/components/schemas/TransferFinalize.yaml new file mode 100644 index 0000000..1e1dbcf --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferFinalize.yaml @@ -0,0 +1,11 @@ +type: object +required: + - transfer_code + - otp +properties: + transfer_code: + description: The transfer code you want to finalize + type: string + otp: + description: OTP sent to business phone to verify transfer + type: string diff --git a/src/assets/openapi/components/schemas/TransferFinalizeDisableOTP.yaml b/src/assets/openapi/components/schemas/TransferFinalizeDisableOTP.yaml new file mode 100644 index 0000000..6bb0350 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferFinalizeDisableOTP.yaml @@ -0,0 +1,7 @@ +type: object +required: + - otp +properties: + otp: + description: OTP sent to business phone to verify disabling OTP requirement + type: string diff --git a/src/assets/openapi/components/schemas/TransferFinalizeDisablesOtpResponse.yaml b/src/assets/openapi/components/schemas/TransferFinalizeDisablesOtpResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferFinalizeDisablesOtpResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TransferInitiate.yaml b/src/assets/openapi/components/schemas/TransferInitiate.yaml new file mode 100644 index 0000000..398f027 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferInitiate.yaml @@ -0,0 +1,30 @@ +type: object +required: + - source + - amount + - recipient +properties: + source: + description: Where should we transfer from? Only balance is allowed for now + type: string + amount: + description: >- + Amount to transfer in kobo if currency is NGN and pesewas if currency is + GHS. + type: string + recipient: + description: The transfer recipient's code + type: string + reason: + description: The reason or narration for the transfer. + type: string + currency: + description: Specify the currency of the transfer. Defaults to NGN. + type: string + reference: + description: >- + If specified, the field should be a unique identifier (in lowercase) for + the object. + + Only -,_ and alphanumeric characters are allowed. + type: string diff --git a/src/assets/openapi/components/schemas/TransferListResponse.yaml b/src/assets/openapi/components/schemas/TransferListResponse.yaml new file mode 100644 index 0000000..6f82465 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./TransferListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/TransferListResponseArray.yaml b/src/assets/openapi/components/schemas/TransferListResponseArray.yaml new file mode 100644 index 0000000..1a1fe8a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferListResponseArray.yaml @@ -0,0 +1,135 @@ +type: object +properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + transferred_at: + nullable: true + updatedAt: + type: string + recipient: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + fee_charged: + type: integer +required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - transferred_at + - updatedAt + - recipient + - session + - fee_charged diff --git a/src/assets/openapi/components/schemas/TransferRecipientBulk.yaml b/src/assets/openapi/components/schemas/TransferRecipientBulk.yaml new file mode 100644 index 0000000..5e0f3b6 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientBulk.yaml @@ -0,0 +1,13 @@ +type: object +required: + - batch +properties: + batch: + description: >- + A list of transfer recipient object. Each object should contain type, + name, and bank_code. + + Any Create Transfer Recipient param can also be passed. + type: array + items: + $ref: ./TransferRecipientCreate.yaml diff --git a/src/assets/openapi/components/schemas/TransferRecipientBulkCreateResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientBulkCreateResponse.yaml new file mode 100644 index 0000000..0a56d46 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientBulkCreateResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + success: + type: array + items: {} + errors: + type: array + items: + $ref: ./TransferRecipientErrorsArray.yaml + required: + - success + - errors +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferRecipientCreate.yaml b/src/assets/openapi/components/schemas/TransferRecipientCreate.yaml new file mode 100644 index 0000000..e9cc658 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientCreate.yaml @@ -0,0 +1,33 @@ +type: object +required: + - type + - name + - account_number + - bank_code +properties: + type: + description: Recipient Type (Only nuban at this time) + type: string + name: + description: Recipient's name + type: string + account_number: + description: Recipient's bank account number + type: string + bank_code: + description: >- + Recipient's bank code. You can get the list of Bank Codes by calling the + List Banks endpoint + type: string + description: + description: A description for this recipient + type: string + currency: + description: Currency for the account receiving the transfer + type: string + authorization_code: + description: An authorization code from a previous transaction + type: string + metadata: + description: Stringified JSON object of custom data + type: string diff --git a/src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml new file mode 100644 index 0000000..78a62b0 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml @@ -0,0 +1,80 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferRecipientDeleteResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientDeleteResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientDeleteResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TransferRecipientErrorsArray.yaml b/src/assets/openapi/components/schemas/TransferRecipientErrorsArray.yaml new file mode 100644 index 0000000..88f4770 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientErrorsArray.yaml @@ -0,0 +1,11 @@ +type: object +properties: + message: + type: string + records: + type: array + items: + $ref: ./ErrorRecordsArray.yaml +required: + - message + - records diff --git a/src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml new file mode 100644 index 0000000..f55c46b --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml @@ -0,0 +1,79 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + domain: + type: string + type: + type: string + currency: + type: string + name: + type: string + details: + type: object + properties: + account_number: + type: string + account_name: + type: string + bank_code: + type: string + bank_name: + type: string + required: + - account_number + - account_name + - bank_code + - bank_name + description: + type: string + metadata: + nullable: true + recipient_code: + type: string + active: + type: boolean + recipient_account: + type: string + institution_code: + type: string + email: + type: string + id: + type: integer + isDeleted: + type: boolean + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - domain + - type + - currency + - name + - details + - description + - metadata + - recipient_code + - active + - recipient_account + - institution_code + - email + - id + - isDeleted + - createdAt + - updatedAt +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/TransferRecipientListResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientListResponse.yaml new file mode 100644 index 0000000..e980142 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientListResponse.yaml @@ -0,0 +1,35 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: ./TransferRecipientListResponseArray.yaml + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false +required: + - status + - message + - data + - meta diff --git a/src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml b/src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml new file mode 100644 index 0000000..748d853 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml @@ -0,0 +1,70 @@ +type: object +properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + nullable: true + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name +required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details diff --git a/src/assets/openapi/components/schemas/TransferRecipientUpdate.yaml b/src/assets/openapi/components/schemas/TransferRecipientUpdate.yaml new file mode 100644 index 0000000..45a269a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientUpdate.yaml @@ -0,0 +1,8 @@ +type: object +properties: + name: + description: Recipient's name + type: string + email: + description: Recipient's email address + type: string diff --git a/src/assets/openapi/components/schemas/TransferRecipientUpdateResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientUpdateResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferRecipientUpdateResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TransferResendOTP.yaml b/src/assets/openapi/components/schemas/TransferResendOTP.yaml new file mode 100644 index 0000000..f139096 --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferResendOTP.yaml @@ -0,0 +1,11 @@ +type: object +required: + - transfer_code + - reason +properties: + transfer_code: + description: The transfer code that requires an OTP validation + type: string + reason: + description: Either resend_otp or transfer + type: string diff --git a/src/assets/openapi/components/schemas/TransferResendsOtpResponse.yaml b/src/assets/openapi/components/schemas/TransferResendsOtpResponse.yaml new file mode 100644 index 0000000..87b039a --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferResendsOtpResponse.yaml @@ -0,0 +1,9 @@ +type: object +properties: + status: + type: boolean + message: + type: string +required: + - status + - message diff --git a/src/assets/openapi/components/schemas/TransferVerifyResponse.yaml b/src/assets/openapi/components/schemas/TransferVerifyResponse.yaml new file mode 100644 index 0000000..aa8a6af --- /dev/null +++ b/src/assets/openapi/components/schemas/TransferVerifyResponse.yaml @@ -0,0 +1,144 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + transferred_at: + nullable: true + updatedAt: + type: string + recipient: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + gateway_response: + type: string + nullable: true + required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - transferred_at + - updatedAt + - recipient + - session + - gateway_response +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/USSD.yaml b/src/assets/openapi/components/schemas/USSD.yaml new file mode 100644 index 0000000..f36ff04 --- /dev/null +++ b/src/assets/openapi/components/schemas/USSD.yaml @@ -0,0 +1,10 @@ +type: object +properties: + type: + description: The three-digit USSD code. + type: string + enum: + - 737 + - 919 + - 822 + - 966 diff --git a/src/assets/openapi/components/schemas/VerificationResolveAccountNumberResponse.yaml b/src/assets/openapi/components/schemas/VerificationResolveAccountNumberResponse.yaml new file mode 100644 index 0000000..9405925 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerificationResolveAccountNumberResponse.yaml @@ -0,0 +1,23 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + account_number: + type: string + account_name: + type: string + bank_id: + type: integer + required: + - account_number + - account_name + - bank_id +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerificationResolveCardBINResponse.yaml b/src/assets/openapi/components/schemas/VerificationResolveCardBINResponse.yaml new file mode 100644 index 0000000..36bb5e6 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerificationResolveCardBINResponse.yaml @@ -0,0 +1,41 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + bin: + type: string + brand: + type: string + sub_brand: + type: string + country_code: + type: string + country_name: + type: string + card_type: + type: string + bank: + type: string + currency: + type: string + linked_bank_id: + type: integer + required: + - bin + - brand + - sub_brand + - country_code + - country_name + - card_type + - bank + - currency + - linked_bank_id +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml b/src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml new file mode 100644 index 0000000..df7ed13 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml @@ -0,0 +1,20 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + verified: + type: boolean + verificationMessage: + type: string + required: + - verified + - verificationMessage +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyAccessCodeGHResponse.yaml b/src/assets/openapi/components/schemas/VerifyAccessCodeGHResponse.yaml new file mode 100644 index 0000000..0ba6efc --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyAccessCodeGHResponse.yaml @@ -0,0 +1,221 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + mobile_money: + type: array + items: + $ref: ./ChannelOptionMobileMoneyArray.yaml + required: + - mobile_money + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + elevy_percentage: + type: number + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - elevy_percentage + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyAccessCodeKEResponse.yaml b/src/assets/openapi/components/schemas/VerifyAccessCodeKEResponse.yaml new file mode 100644 index 0000000..99d5144 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyAccessCodeKEResponse.yaml @@ -0,0 +1,218 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + mobile_money: + type: array + items: + $ref: ./ChannelOptionMobileMoneyArray.yaml + required: + - mobile_money + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyAccessCodeNGResponse.yaml b/src/assets/openapi/components/schemas/VerifyAccessCodeNGResponse.yaml new file mode 100644 index 0000000..5917698 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyAccessCodeNGResponse.yaml @@ -0,0 +1,237 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + bank_transfer: + type: array + items: + type: string + ussd: + type: array + items: + type: string + required: + - bank_transfer + - ussd + merchant_channel_settings: + type: object + properties: + bank_transfer: + type: object + properties: + fulfil_late_notification: + type: boolean + required: + - fulfil_late_notification + required: + - bank_transfer + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + supported_banks: + type: array + items: + $ref: ./VerifyAccessCodeSupportedBanksArray.yaml + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyAccessCodeSupportedBanksArray.yaml b/src/assets/openapi/components/schemas/VerifyAccessCodeSupportedBanksArray.yaml new file mode 100644 index 0000000..b6ee688 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyAccessCodeSupportedBanksArray.yaml @@ -0,0 +1,18 @@ +type: object +properties: + id: + type: integer + name: + type: string + slug: + type: string + gateway: + type: string + code: + type: string +required: + - id + - name + - slug + - gateway + - code diff --git a/src/assets/openapi/components/schemas/VerifyAccessCodeZAResponse.yaml b/src/assets/openapi/components/schemas/VerifyAccessCodeZAResponse.yaml new file mode 100644 index 0000000..bad2feb --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyAccessCodeZAResponse.yaml @@ -0,0 +1,223 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + qr: + type: array + items: + type: string + eft: + type: array + items: + type: string + required: + - qr + - eft + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyAuthorizationCardResponse.yaml b/src/assets/openapi/components/schemas/VerifyAuthorizationCardResponse.yaml new file mode 100644 index 0000000..aa1e687 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyAuthorizationCardResponse.yaml @@ -0,0 +1,30 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + advise: + type: string + message: + type: string + authorizationCode: + type: string + customerEmail: + type: string + description: The customer email used to initialize authorization + required: + - status + - advise + - message + - authorizationCode + - customerEmail +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyAuthorizationDirectdebitResponse.yaml b/src/assets/openapi/components/schemas/VerifyAuthorizationDirectdebitResponse.yaml new file mode 100644 index 0000000..c3dbdc3 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyAuthorizationDirectdebitResponse.yaml @@ -0,0 +1,87 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + authorization_code: + type: string + domain: + type: string + active: + type: boolean + last4: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + exp_month: + type: integer + exp_year: + type: integer + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + type: string + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + code: + type: string + email: + type: string + description: The customer email used to initialize the authorization + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - code + - email + - phone + - metadata + - risk_action + required: + - authorization_code + - domain + - active + - last4 + - channel + - card_type + - bank + - exp_month + - exp_year + - country_code + - brand + - reusable + - signature + - account_name + - customer +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyCodeGHResponse.yaml b/src/assets/openapi/components/schemas/VerifyCodeGHResponse.yaml new file mode 100644 index 0000000..f195878 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyCodeGHResponse.yaml @@ -0,0 +1,221 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + mobile_money: + type: array + items: + $ref: ./ChannelOptionMobileMoneyArray.yaml + required: + - mobile_money + merchant_channel_settings: + type: object + elevy_percentage: + type: number + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - elevy_percentage + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyCodeKEResponse.yaml b/src/assets/openapi/components/schemas/VerifyCodeKEResponse.yaml new file mode 100644 index 0000000..1566258 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyCodeKEResponse.yaml @@ -0,0 +1,243 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + mobile_money: + type: array + items: + type: object + properties: + key: + type: string + value: + type: string + isNew: + type: boolean + phoneNumberRegex: + type: string + phoneNumberPlaceholder: + type: string + isChannel: + type: boolean + isMobileMoneyBusiness: + type: boolean + accountNumberRegex: + type: string + required: + - key + - value + - isNew + - phoneNumberRegex + - isChannel + - isMobileMoneyBusiness + additionalProperties: false + required: + - mobile_money + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyCodeNGResponse.yaml b/src/assets/openapi/components/schemas/VerifyCodeNGResponse.yaml new file mode 100644 index 0000000..429adcb --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyCodeNGResponse.yaml @@ -0,0 +1,241 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + qr: + type: array + items: + type: string + ussd: + type: array + items: + type: string + bank_transfer: + type: array + items: + type: string + required: + - ussd + - bank_transfer + merchant_channel_settings: + type: object + properties: + bank_transfer: + type: object + properties: + fulfil_late_notification: + type: boolean + required: + - fulfil_late_notification + required: + - bank_transfer + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + supported_banks: + type: array + items: + $ref: ./VerifyCodeSupportedBanksArray.yaml + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyCodeSupportedBanksArray.yaml b/src/assets/openapi/components/schemas/VerifyCodeSupportedBanksArray.yaml new file mode 100644 index 0000000..b6ee688 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyCodeSupportedBanksArray.yaml @@ -0,0 +1,18 @@ +type: object +properties: + id: + type: integer + name: + type: string + slug: + type: string + gateway: + type: string + code: + type: string +required: + - id + - name + - slug + - gateway + - code diff --git a/src/assets/openapi/components/schemas/VerifyCodeZAResponse.yaml b/src/assets/openapi/components/schemas/VerifyCodeZAResponse.yaml new file mode 100644 index 0000000..8f8c039 --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyCodeZAResponse.yaml @@ -0,0 +1,223 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + qr: + type: array + items: + type: string + eft: + type: array + items: + type: string + required: + - qr + - eft + merchant_channel_settings: + type: object + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyMultiSplitResponse.yaml b/src/assets/openapi/components/schemas/VerifyMultiSplitResponse.yaml new file mode 100644 index 0000000..b29e4ff --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyMultiSplitResponse.yaml @@ -0,0 +1,285 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + anyOf: + - type: string + - type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + additionalProperties: false + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + fees_split: + nullable: true + authorization: + type: object + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true + split: + type: object + properties: + id: + type: integer + name: + type: string + split_code: + type: string + formula: + type: object + properties: + type: + type: string + bearer_type: + type: string + bearer_subaccount: + type: integer + subaccounts: + type: array + items: + $ref: ./FormulaSubaccountsArray.yaml + integration: + type: integer + required: + - type + - bearer_type + - bearer_subaccount + - subaccounts + - integration + shares: + type: object + properties: + paystack: + type: integer + subaccounts: + type: array + items: + $ref: ./ShareSubaccountsArray.yaml + integration: + type: integer + original_share: + type: number + fees: + type: integer + required: + - paystack + - subaccounts + - integration + - original_share + - fees + required: + - id + - name + - split_code + - formula + - shares + order_id: + nullable: true + paidAt: + type: string + nullable: true + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + oneOf: + - allOf: + - minProperties: 0 + - {} + - allOf: + - not: + minProperties: 0 + - required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + additionalProperties: false + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifyResponse.yaml b/src/assets/openapi/components/schemas/VerifyResponse.yaml new file mode 100644 index 0000000..16bdecc --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifyResponse.yaml @@ -0,0 +1,261 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + anyOf: + - type: string + - type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + additionalProperties: false + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + nullable: true + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + oneOf: + - allOf: + - minProperties: 0 + - {} + - allOf: + - not: + minProperties: 0 + - required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + additionalProperties: false + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/components/schemas/VerifySingleSplitResponse.yaml b/src/assets/openapi/components/schemas/VerifySingleSplitResponse.yaml new file mode 100644 index 0000000..1d8037a --- /dev/null +++ b/src/assets/openapi/components/schemas/VerifySingleSplitResponse.yaml @@ -0,0 +1,293 @@ +type: object +properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + anyOf: + - type: string + - type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + additionalProperties: false + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + nullable: true + fees_split: + type: object + properties: + paystack: + type: integer + integration: + type: number + subaccount: + type: number + params: + type: object + properties: + bearer: + type: string + transaction_charge: + type: string + percentage_charge: + type: string + required: + - bearer + - transaction_charge + - percentage_charge + required: + - paystack + - integration + - subaccount + - params + authorization: + type: object + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + customer_code: + type: string + phone: + nullable: true + metadata: + nullable: true + risk_action: + type: string + international_format_phone: + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + nullable: true + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + oneOf: + - allOf: + - minProperties: 0 + - {} + - allOf: + - not: + minProperties: 0 + - required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + additionalProperties: false + subaccount: + type: object + properties: + id: + type: integer + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + settlement_bank: + type: string + bank_id: + type: integer + account_number: + type: string + currency: + type: string + active: + type: boolean + is_verified: + type: boolean + required: + - id + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - settlement_bank + - bank_id + - account_number + - currency + - active + - is_verified + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount +required: + - status + - message + - data diff --git a/src/assets/openapi/openapi.yaml b/src/assets/openapi/openapi.yaml new file mode 100644 index 0000000..c0144ca --- /dev/null +++ b/src/assets/openapi/openapi.yaml @@ -0,0 +1,363 @@ +openapi: 3.0.1 +info: + title: Paystack + description: >- + The OpenAPI specification of the Paystack API that merchants and developers + can harness to build financial solutions in Africa. + version: 1.0.0 + contact: + email: techsupport@paystack.com +servers: + - url: https://api.paystack.co + description: Base API endpoint +security: + - bearerAuth: [] +tags: + - name: Transaction + description: | + A collection of endpoints for managing payments + x-product-name: Transactions + - name: Split + description: > + A collection of endpoints for spliting a transaction and managing the + splits + x-product-name: Transaction Splits + - name: Terminal + description: > + A collection of endpoints for building delightful in-person payment + experiences + x-product-name: Terminal + - name: Customer + description: > + A collection of endpoints for creating and managing customers on an + integration + x-product-name: Transaction Splits + - name: Dedicated Virtual Account + description: > + A collection of endpoints for creating and managing payment accounts for + customers + x-product-name: Dedicated Virtual Accounts + - name: Apple Pay + description: > + A collection of endpoints for managing application's top-level domain or + subdomain accepting payment via Apple Pay + x-product-name: Apple Pay + - name: Subaccount + description: | + A collection of endpoints for creating and managing accounts for sharing a + transaction with + x-product-name: Subaccounts + - name: Plan + description: | + A collection of endpoints for creating and managing recurring payment + configuration + x-product-name: Plans + - name: Subscription + description: | + A collection of endpoints for creating and managing recurring payments + x-product-name: Subscriptions + - name: Product + description: | + A collection of endpoints for creating and managing inventories + x-product-name: Products + - name: Storefront + description: | + A collection of endpoints for creating and managing storefronts + x-product-name: Storefronts + - name: Order + description: | + A collection of endpoints for creating and managing orders + x-product-name: Orders + - name: Page + description: | + A collection of endpoints for creating and managing links for the + collection of payment for products + x-product-name: Payment Pages + - name: Payment Request + description: | + A collection of endpoints for managing invoices for the payment of goods + and services + x-product-name: Payment Requests + - name: Settlement + description: | + A collection of endpoints for gaining insights into payouts + x-product-name: Settlements + - name: Transfer Recipient + description: > + A collection of endpoints for creating and managing beneficiaries that you + send money to + x-product-name: Transfer Recipients + - name: Transfer + description: | + A collection of endpoints for automating sending money to beneficiaries + x-product-name: Transfers + - name: Balance + description: > + A collection of endpoints gaining insights into the amount on an + integration + x-product-name: Balance + - name: Charge + description: > + A collection of endpoints for configuring and managing the payment + channels when initiating a payment + x-product-name: Charges + - name: Bulk Charge + description: > + A collection of endpoints for creating and managing multiple recurring + payments + x-product-name: Bulk Charges + - name: Integration + description: | + A collection of endpoints for managing some settings on an integration + x-product-name: Integration + - name: Refund + description: > + A collection of endpoints for creating and managing transaction + reimbursement + x-product-name: Refunds + - name: Dispute + description: > + A collection of endpoints for managing transactions complaint made by + customers + x-product-name: Disputes + - name: Bank + description: | + A collection of endpoints for managing bank details + x-product-name: Banks + - name: Miscellaneous + description: | + A collection of endpoints that provides utility functions + x-product-name: Miscellaneous +paths: + /transaction/initialize: + $ref: paths/transaction_initialize.yaml + /transaction/verify/{reference}: + $ref: paths/transaction_verify_{reference}.yaml + /transaction: + $ref: paths/transaction.yaml + /transaction/{id}: + $ref: paths/transaction_{id}.yaml + /transaction/timeline/{id}: + $ref: paths/transaction_timeline_{id}.yaml + /transaction/totals: + $ref: paths/transaction_totals.yaml + /transaction/export: + $ref: paths/transaction_export.yaml + /transaction/charge_authorization: + $ref: paths/transaction_charge_authorization.yaml + /transaction/partial_debit: + $ref: paths/transaction_partial_debit.yaml + /transaction/{id}/event: + $ref: paths/transaction_{id}_event.yaml + /transaction/{id}/session: + $ref: paths/transaction_{id}_session.yaml + /split: + $ref: paths/split.yaml + /split/{id}: + $ref: paths/split_{id}.yaml + /split/{id}/subaccount/add: + $ref: paths/split_{id}_subaccount_add.yaml + /split/{id}/subaccount/remove: + $ref: paths/split_{id}_subaccount_remove.yaml + /terminal/{id}/event: + $ref: paths/terminal_{id}_event.yaml + /terminal/{terminal_id}/event/{event_id}: + $ref: paths/terminal_{terminal_id}_event_{event_id}.yaml + /terminal/{terminal_id}/presence: + $ref: paths/terminal_{terminal_id}_presence.yaml + /terminal: + $ref: paths/terminal.yaml + /terminal/{terminal_id}: + $ref: paths/terminal_{terminal_id}.yaml + /terminal/commission_device: + $ref: paths/terminal_commission_device.yaml + /terminal/decommission_device: + $ref: paths/terminal_decommission_device.yaml + /customer: + $ref: paths/customer.yaml + /customer/{code}: + $ref: paths/customer_{code}.yaml + /customer/set_risk_action: + $ref: paths/customer_set_risk_action.yaml + /customer/deactivate_authorization: + $ref: paths/customer_deactivate_authorization.yaml + /customer/{code}/identification: + $ref: paths/customer_{code}_identification.yaml + /dedicated_account: + $ref: paths/dedicated_account.yaml + /dedicated_account/assign: + $ref: paths/dedicated_account_assign.yaml + /dedicated_account/{account_id}: + $ref: paths/dedicated_account_{account_id}.yaml + /dedicated_account/requery: + $ref: paths/dedicated_account_requery.yaml + /dedicated_account/split: + $ref: paths/dedicated_account_split.yaml + /dedicated_account/available_providers: + $ref: paths/dedicated_account_available_providers.yaml + /apple-pay/domain: + $ref: paths/apple-pay_domain.yaml + /subaccount: + $ref: paths/subaccount.yaml + /subaccount/{code}: + $ref: paths/subaccount_{code}.yaml + /plan: + $ref: paths/plan.yaml + /plan/{code}: + $ref: paths/plan_{code}.yaml + /subscription: + $ref: paths/subscription.yaml + /subscription/{code}: + $ref: paths/subscription_{code}.yaml + /subscription/disable: + $ref: paths/subscription_disable.yaml + /subscription/enable: + $ref: paths/subscription_enable.yaml + /subscription/{code}/manage/link: + $ref: paths/subscription_{code}_manage_link.yaml + /subscription/{code}/manage/email: + $ref: paths/subscription_{code}_manage_email.yaml + /product: + $ref: paths/product.yaml + /product/{id}: + $ref: paths/product_{id}.yaml + /storefront: + $ref: paths/storefront.yaml + /storefront/{id}: + $ref: paths/storefront_{id}.yaml + /storefront/verify/{slug}: + $ref: paths/storefront_verify_{slug}.yaml + /storefront/{id}/order: + $ref: paths/storefront_{id}_order.yaml + /storefront/{id}/product: + $ref: paths/storefront_{id}_product.yaml + /storefront/{id}/publish: + $ref: paths/storefront_{id}_publish.yaml + /storefront/{id}/duplicate: + $ref: paths/storefront_{id}_duplicate.yaml + /order: + $ref: paths/order.yaml + /order/{id}: + $ref: paths/order_{id}.yaml + /order/product/{id}: + $ref: paths/order_product_{id}.yaml + /order/{code}/validate: + $ref: paths/order_{code}_validate.yaml + /page: + $ref: paths/page.yaml + /page/{id}: + $ref: paths/page_{id}.yaml + /page/check_slug_availability/{slug}: + $ref: paths/page_check_slug_availability_{slug}.yaml + /page/{id}/product: + $ref: paths/page_{id}_product.yaml + /paymentrequest: + $ref: paths/paymentrequest.yaml + /paymentrequest/{id}: + $ref: paths/paymentrequest_{id}.yaml + /paymentrequest/verify/{id}: + $ref: paths/paymentrequest_verify_{id}.yaml + /paymentrequest/notify/{id}: + $ref: paths/paymentrequest_notify_{id}.yaml + /paymentrequest/totals: + $ref: paths/paymentrequest_totals.yaml + /paymentrequest/finalize/{id}: + $ref: paths/paymentrequest_finalize_{id}.yaml + /paymentrequest/archive/{id}: + $ref: paths/paymentrequest_archive_{id}.yaml + /settlement: + $ref: paths/settlement.yaml + /settlement/{id}/transaction: + $ref: paths/settlement_{id}_transaction.yaml + /transferrecipient: + $ref: paths/transferrecipient.yaml + /transferrecipient/bulk: + $ref: paths/transferrecipient_bulk.yaml + /transferrecipient/{code}: + $ref: paths/transferrecipient_{code}.yaml + /transfer: + $ref: paths/transfer.yaml + /transfer/finalize_transfer: + $ref: paths/transfer_finalize_transfer.yaml + /transfer/bulk: + $ref: paths/transfer_bulk.yaml + /transfer/{code}: + $ref: paths/transfer_{code}.yaml + /transfer/verify/{reference}: + $ref: paths/transfer_verify_{reference}.yaml + /transfer/export: + $ref: paths/transfer_export.yaml + /transfer/resend_otp: + $ref: paths/transfer_resend_otp.yaml + /transfer/disable_otp: + $ref: paths/transfer_disable_otp.yaml + /transfer/disable_otp_finalize: + $ref: paths/transfer_disable_otp_finalize.yaml + /transfer/enable_otp: + $ref: paths/transfer_enable_otp.yaml + /balance: + $ref: paths/balance.yaml + /balance/ledger: + $ref: paths/balance_ledger.yaml + /charge: + $ref: paths/charge.yaml + /charge/submit_pin: + $ref: paths/charge_submit_pin.yaml + /charge/submit_otp: + $ref: paths/charge_submit_otp.yaml + /charge/submit_phone: + $ref: paths/charge_submit_phone.yaml + /charge/submit_birthday: + $ref: paths/charge_submit_birthday.yaml + /charge/submit_address: + $ref: paths/charge_submit_address.yaml + /charge/{reference}: + $ref: paths/charge_{reference}.yaml + /bulkcharge: + $ref: paths/bulkcharge.yaml + /bulkcharge/{code}: + $ref: paths/bulkcharge_{code}.yaml + /bulkcharge/{code}/charges: + $ref: paths/bulkcharge_{code}_charges.yaml + /bulkcharge/pause/{code}: + $ref: paths/bulkcharge_pause_{code}.yaml + /bulkcharge/resume/{code}: + $ref: paths/bulkcharge_resume_{code}.yaml + /integration/payment_session_timeout: + $ref: paths/integration_payment_session_timeout.yaml + /refund: + $ref: paths/refund.yaml + /refund/{id}: + $ref: paths/refund_{id}.yaml + /dispute: + $ref: paths/dispute.yaml + /dispute/{id}: + $ref: paths/dispute_{id}.yaml + /dispute/{id}/upload_url: + $ref: paths/dispute_{id}_upload_url.yaml + /dispute/export: + $ref: paths/dispute_export.yaml + /dispute/transaction/{id}: + $ref: paths/dispute_transaction_{id}.yaml + /dispute/{id}/resolve: + $ref: paths/dispute_{id}_resolve.yaml + /dispute/{id}/evidence: + $ref: paths/dispute_{id}_evidence.yaml + /bank: + $ref: paths/bank.yaml + /bank/resolve: + $ref: paths/bank_resolve.yaml + /bank/validate: + $ref: paths/bank_validate.yaml + /decision/bin/{bin}: + $ref: paths/decision_bin_{bin}.yaml + /country: + $ref: paths/country.yaml + /address_verification/states: + $ref: paths/address_verification_states.yaml +components: + securitySchemes: + bearerAuth: + type: http + scheme: bearer + description: Secret key in the format sk_domain_xxxxxx diff --git a/src/assets/openapi/paths/address_verification_states.yaml b/src/assets/openapi/paths/address_verification_states.yaml new file mode 100644 index 0000000..310608c --- /dev/null +++ b/src/assets/openapi/paths/address_verification_states.yaml @@ -0,0 +1,27 @@ +get: + tags: + - Miscellaneous + summary: List States (AVS) + operationId: miscellaneous_avs + parameters: + - in: query + name: type + schema: + type: string + - in: query + name: country + schema: + type: string + - in: query + name: currency + schema: + type: string + responses: + '200': + $ref: ../components/responses/MiscellaneousListStatesSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/apple-pay_domain.yaml b/src/assets/openapi/paths/apple-pay_domain.yaml new file mode 100644 index 0000000..78b9250 --- /dev/null +++ b/src/assets/openapi/paths/apple-pay_domain.yaml @@ -0,0 +1,74 @@ +post: + tags: + - Apple Pay + summary: Register Domain + description: Register a top-level domain or subdomain for your Apple Pay integration. + operationId: applePay_registerDomain + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ApplePayParam.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ApplePayParam.yaml + responses: + '200': + $ref: ../components/responses/ApplePayOkResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Apple Pay + summary: List Domains + description: Lists all registered domains on your integration + operationId: applePay_listDomain + parameters: + - name: use_cursor + in: query + schema: + type: boolean + - name: next + in: query + schema: + type: string + - name: previous + in: query + schema: + type: string + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +delete: + tags: + - Apple Pay + summary: Unregister Domain + description: >- + Unregister a top-level domain or subdomain previously used for your Apple + Pay integration. + operationId: applePay_unregisterDomain + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ApplePayParam.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ApplePayParam.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/balance.yaml b/src/assets/openapi/paths/balance.yaml new file mode 100644 index 0000000..ae9bc5f --- /dev/null +++ b/src/assets/openapi/paths/balance.yaml @@ -0,0 +1,19 @@ +get: + tags: + - Balance + summary: Fetch Balance + operationId: balance_fetch + description: You can only transfer from what you have + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BalanceCheckResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/balance_ledger.yaml b/src/assets/openapi/paths/balance_ledger.yaml new file mode 100644 index 0000000..39b2ca1 --- /dev/null +++ b/src/assets/openapi/paths/balance_ledger.yaml @@ -0,0 +1,41 @@ +get: + tags: + - Balance + summary: Balance Ledger + operationId: balance_ledger + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BalanceFetchLedgerResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bank.yaml b/src/assets/openapi/paths/bank.yaml new file mode 100644 index 0000000..430a18f --- /dev/null +++ b/src/assets/openapi/paths/bank.yaml @@ -0,0 +1,43 @@ +get: + tags: + - Bank + summary: List Banks + operationId: bank_list + parameters: + - in: query + name: country + schema: + type: string + - in: query + name: pay_with_bank_transfer + schema: + type: boolean + - in: query + name: use_cursor + schema: + type: boolean + - in: query + name: perPage + schema: + type: integer + - in: query + name: next + schema: + type: string + - in: query + name: previous + schema: + type: string + - in: query + name: gateway + schema: + type: string + responses: + '200': + $ref: ../components/responses/MiscellaneousListBanksSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bank_resolve.yaml b/src/assets/openapi/paths/bank_resolve.yaml new file mode 100644 index 0000000..299449d --- /dev/null +++ b/src/assets/openapi/paths/bank_resolve.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Bank + summary: Resolve Account Number + operationId: bank_resolveAccountNumber + parameters: + - name: account_number + in: query + schema: + type: integer + example: 22728151 + - name: bank_code + in: query + schema: + type: integer + example: 63 + responses: + '200': + $ref: ../components/responses/VerificationResolveAccountNumberSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bank_validate.yaml b/src/assets/openapi/paths/bank_validate.yaml new file mode 100644 index 0000000..bf85390 --- /dev/null +++ b/src/assets/openapi/paths/bank_validate.yaml @@ -0,0 +1,20 @@ +post: + tags: + - Bank + summary: Validate Bank Account + operationId: bank_validateAccountNumber + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/BankValidateRequest.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/BankValidateRequest.yaml + responses: + '200': + $ref: ../components/responses/VerificationValidateAccountSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bulkcharge.yaml b/src/assets/openapi/paths/bulkcharge.yaml new file mode 100644 index 0000000..6d6b9c8 --- /dev/null +++ b/src/assets/openapi/paths/bulkcharge.yaml @@ -0,0 +1,70 @@ +post: + tags: + - Bulk Charge + summary: Initiate Bulk Charge + operationId: bulkCharge_initiate + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: ../components/schemas/BulkChargeInitiate.yaml + application/x-www-form-urlencoded: + schema: + type: array + items: + properties: + charges: + type: object + items: + $ref: ../components/schemas/BulkChargeInitiate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BulkChargeInitiateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Bulk Charge + summary: List Bulk Charge Batches + operationId: bulkCharge_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: status + schema: + type: string + enum: + - active + - paused + - complete + description: Filter by the status of the charges + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BulkChargeListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bulkcharge_pause_{code}.yaml b/src/assets/openapi/paths/bulkcharge_pause_{code}.yaml new file mode 100644 index 0000000..25c3b2b --- /dev/null +++ b/src/assets/openapi/paths/bulkcharge_pause_{code}.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Bulk Charge + summary: Pause Bulk Charge Batch + operationId: bulkCharge_pause + parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BulkChargePauseResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bulkcharge_resume_{code}.yaml b/src/assets/openapi/paths/bulkcharge_resume_{code}.yaml new file mode 100644 index 0000000..270a5a8 --- /dev/null +++ b/src/assets/openapi/paths/bulkcharge_resume_{code}.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Bulk Charge + summary: Resume Bulk Charge Batch + operationId: bulkCharge_resume + parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BulkChargeResumeResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bulkcharge_{code}.yaml b/src/assets/openapi/paths/bulkcharge_{code}.yaml new file mode 100644 index 0000000..da6e95b --- /dev/null +++ b/src/assets/openapi/paths/bulkcharge_{code}.yaml @@ -0,0 +1,25 @@ +parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string +get: + tags: + - Bulk Charge + summary: Fetch Bulk Charge Batch + operationId: bulkCharge_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BulkChargeFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/bulkcharge_{code}_charges.yaml b/src/assets/openapi/paths/bulkcharge_{code}_charges.yaml new file mode 100644 index 0000000..bb54cdf --- /dev/null +++ b/src/assets/openapi/paths/bulkcharge_{code}_charges.yaml @@ -0,0 +1,46 @@ +get: + tags: + - Bulk Charge + summary: List Charges in a Batch + operationId: bulkCharge_charges + parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: status + schema: + type: string + enum: + - success + - failed + - pending + - error + - inactive_authorization + description: Filter by the status of the charges + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/BulkChargeFetchBulkBatchChargesResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/charge.yaml b/src/assets/openapi/paths/charge.yaml new file mode 100644 index 0000000..33d0aa6 --- /dev/null +++ b/src/assets/openapi/paths/charge.yaml @@ -0,0 +1,58 @@ +post: + tags: + - Charge + summary: Create Charge + operationId: charge_create + requestBody: + content: + application/json: + schema: + allOf: + - $ref: ../components/schemas/ChargeCreate.yaml + - type: object + properties: + bank: + $ref: ../components/schemas/Bank.yaml + - type: object + properties: + mobile_money: + $ref: ../components/schemas/MobileMoney.yaml + - type: object + properties: + ussd: + $ref: ../components/schemas/USSD.yaml + - type: object + properties: + eft: + $ref: ../components/schemas/EFT.yaml + application/x-www-form-urlencoded: + schema: + allOf: + - $ref: ../components/schemas/ChargeCreate.yaml + - type: object + properties: + bank: + $ref: ../components/schemas/Bank.yaml + - type: object + properties: + mobile_money: + $ref: ../components/schemas/MobileMoney.yaml + - type: object + properties: + ussd: + $ref: ../components/schemas/USSD.yaml + - type: object + properties: + eft: + $ref: ../components/schemas/EFT.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/ChargeCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/charge_submit_address.yaml b/src/assets/openapi/paths/charge_submit_address.yaml new file mode 100644 index 0000000..a8e4106 --- /dev/null +++ b/src/assets/openapi/paths/charge_submit_address.yaml @@ -0,0 +1,20 @@ +post: + tags: + - Charge + summary: Submit Address + operationId: charge_submitAddress + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitAddress.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ChargeSubmitAddress.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/charge_submit_birthday.yaml b/src/assets/openapi/paths/charge_submit_birthday.yaml new file mode 100644 index 0000000..ac1050d --- /dev/null +++ b/src/assets/openapi/paths/charge_submit_birthday.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Charge + summary: Submit Birthday + operationId: charge_submitBirthday + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitBirthday.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ChargeSubmitBirthday.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitBirthdayResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/charge_submit_otp.yaml b/src/assets/openapi/paths/charge_submit_otp.yaml new file mode 100644 index 0000000..bddf7ce --- /dev/null +++ b/src/assets/openapi/paths/charge_submit_otp.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Charge + summary: Submit OTP + operationId: charge_submitOtp + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitOTP.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ChargeSubmitOTP.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitOtpResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/charge_submit_phone.yaml b/src/assets/openapi/paths/charge_submit_phone.yaml new file mode 100644 index 0000000..4b7a791 --- /dev/null +++ b/src/assets/openapi/paths/charge_submit_phone.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Charge + summary: Submit Phone + operationId: charge_submitPhone + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitPhone.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ChargeSubmitPhone.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitPhoneResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/charge_submit_pin.yaml b/src/assets/openapi/paths/charge_submit_pin.yaml new file mode 100644 index 0000000..9769d3f --- /dev/null +++ b/src/assets/openapi/paths/charge_submit_pin.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Charge + summary: Submit PIN + operationId: charge_submitPin + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitPin.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ChargeSubmitPin.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/ChargeSubmitPinResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/charge_{reference}.yaml b/src/assets/openapi/paths/charge_{reference}.yaml new file mode 100644 index 0000000..d3dd307 --- /dev/null +++ b/src/assets/openapi/paths/charge_{reference}.yaml @@ -0,0 +1,24 @@ +get: + tags: + - Charge + summary: Check pending charge + operationId: charge_check + parameters: + - name: reference + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/ChargeCheckPendingResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/country.yaml b/src/assets/openapi/paths/country.yaml new file mode 100644 index 0000000..c7073c8 --- /dev/null +++ b/src/assets/openapi/paths/country.yaml @@ -0,0 +1,14 @@ +get: + tags: + - Miscellaneous + summary: List Countries + operationId: miscellaneous_listCountries + responses: + '200': + $ref: ../components/responses/MiscellaneousListCountriesSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer.yaml b/src/assets/openapi/paths/customer.yaml new file mode 100644 index 0000000..9304870 --- /dev/null +++ b/src/assets/openapi/paths/customer.yaml @@ -0,0 +1,85 @@ +post: + tags: + - Customer + summary: Create Customer + operationId: customer_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/CustomerCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/CustomerCreate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/CustomerCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Customer + summary: List Customers + operationId: customer_list + description: List customers on your integration + parameters: + - name: use_cursor + description: A flag to indicate if cursor based pagination should be used + in: query + schema: + type: boolean + - name: next + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the next set of data + in: query + schema: + type: string + - name: previous + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the previous set of data + in: query + schema: + type: string + - name: from + description: The start date + in: query + schema: + type: string + format: date-time + - name: to + description: The end date + in: query + schema: + type: string + format: date-time + - name: perPage + description: The number of records to fetch per request + in: query + schema: + type: string + - name: page + in: query + description: The offset to retrieve data from + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/CustomerListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_authorization_initialize.yaml b/src/assets/openapi/paths/customer_authorization_initialize.yaml new file mode 100644 index 0000000..5fbafa8 --- /dev/null +++ b/src/assets/openapi/paths/customer_authorization_initialize.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Customer + summary: Initialize Authorization + description: >- + Initiate a request to create a reusable authorization code for recurring + transactions + operationId: customer_initializeAuthorization + requestBody: + required: true + content: + application/json: + schema: + $ref: ../components/schemas/CustomerAuthorizationInitializeRequest.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/CustomerAuthorizationInitializeRequest.yaml + responses: + '200': + $ref: ../components/responses/CustomerAuthorizationInitializeSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_authorization_verify_{reference}.yaml b/src/assets/openapi/paths/customer_authorization_verify_{reference}.yaml new file mode 100644 index 0000000..fe0c908 --- /dev/null +++ b/src/assets/openapi/paths/customer_authorization_verify_{reference}.yaml @@ -0,0 +1,22 @@ +get: + tags: + - Customer + summary: Verify Authorization + description: Check the status of an authorization request + operationId: customer_verifyAuthorization + parameters: + - name: reference + in: path + description: The reference returned in the initialization response + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/CustomerAuthorizationVerifySuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_deactivate_authorization.yaml b/src/assets/openapi/paths/customer_deactivate_authorization.yaml new file mode 100644 index 0000000..8811845 --- /dev/null +++ b/src/assets/openapi/paths/customer_deactivate_authorization.yaml @@ -0,0 +1,25 @@ +post: + tags: + - Customer + summary: Deactivate Authorization + operationId: customer_deactivateAuthorization + description: Deactivate a customer's card + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/CustomerDeactivateAuthorization.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/CustomerDeactivateAuthorization.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/CustomerDeactivateAuthorizationResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_set_risk_action.yaml b/src/assets/openapi/paths/customer_set_risk_action.yaml new file mode 100644 index 0000000..5292bc9 --- /dev/null +++ b/src/assets/openapi/paths/customer_set_risk_action.yaml @@ -0,0 +1,25 @@ +post: + tags: + - Customer + summary: Set Risk Action + description: Set customer's risk action by whitelisting or blacklisting the customer + operationId: customer_riskAction + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/CustomerRiskAction.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/CustomerRiskAction.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/CustomerWhitelistBlacklistResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_{code}.yaml b/src/assets/openapi/paths/customer_{code}.yaml new file mode 100644 index 0000000..9d47117 --- /dev/null +++ b/src/assets/openapi/paths/customer_{code}.yaml @@ -0,0 +1,50 @@ +parameters: + - name: code + in: path + required: true + schema: + type: string +get: + tags: + - Customer + summary: Fetch Customer + operationId: customer_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/CustomerFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Customer + summary: Update Customer + operationId: customer_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/CustomerUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/CustomerUpdate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/CustomerUpdateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_{code}_identification.yaml b/src/assets/openapi/paths/customer_{code}_identification.yaml new file mode 100644 index 0000000..78d26c8 --- /dev/null +++ b/src/assets/openapi/paths/customer_{code}_identification.yaml @@ -0,0 +1,31 @@ +parameters: + - name: code + in: path + required: true + schema: + type: string +post: + tags: + - Customer + summary: Validate Customer + operationId: customer_validate + description: Validate a customer's identity + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/CustomerValidate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/CustomerValidate.yaml + responses: + '202': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/CustomerValidateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_{id}_directdebit-activation-charge.yaml b/src/assets/openapi/paths/customer_{id}_directdebit-activation-charge.yaml new file mode 100644 index 0000000..53253b5 --- /dev/null +++ b/src/assets/openapi/paths/customer_{id}_directdebit-activation-charge.yaml @@ -0,0 +1,32 @@ +put: + tags: + - Customer + summary: Direct Debit Activation Charge + operationId: customer_directDebitActivationCharge + description: >- + Trigger an activation charge on an inactive mandate on behalf of your + customer + parameters: + - name: id + in: path + required: true + schema: + type: integer + description: The customer ID attached to the authorization + requestBody: + content: + application/json: + schema: + $ref: >- + ../components/schemas/CustomerDirectDebitActivationChargeRequest.yaml + application/x-www-form-urlencoded: + schema: + $ref: >- + ../components/schemas/CustomerDirectDebitActivationChargeRequest.yaml + responses: + '200': + $ref: ../components/responses/CustomerDirectDebitActivationChargeSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_{id}_directdebit-mandate-authorizations.yaml b/src/assets/openapi/paths/customer_{id}_directdebit-mandate-authorizations.yaml new file mode 100644 index 0000000..349f69f --- /dev/null +++ b/src/assets/openapi/paths/customer_{id}_directdebit-mandate-authorizations.yaml @@ -0,0 +1,20 @@ +get: + tags: + - Customer + summary: Fetch Mandate Authorizations + operationId: customer_fetchMandateAuthorizations + description: Get the list of direct debit mandates associated with a customer + parameters: + - name: id + in: path + required: true + schema: + type: string + description: The customer ID for the authorizations to fetch + responses: + '200': + $ref: ../components/responses/CustomerFetchMandateAuthorizationsSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/customer_{id}_initialize-direct-debit.yaml b/src/assets/openapi/paths/customer_{id}_initialize-direct-debit.yaml new file mode 100644 index 0000000..3f85111 --- /dev/null +++ b/src/assets/openapi/paths/customer_{id}_initialize-direct-debit.yaml @@ -0,0 +1,30 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string + description: The ID of the customer to initialize the direct debit for +post: + tags: + - Customer + summary: Initialize Direct Debit + operationId: customer_initializeDirectDebit + description: >- + Initialize the process of linking an account to a customer for Direct Debit + transactions + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/CustomerInitializeDirectDebitRequest.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/CustomerInitializeDirectDebitRequest.yaml + responses: + '200': + $ref: ../components/responses/CustomerInitializeDirectDebitSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/decision_bin_{bin}.yaml b/src/assets/openapi/paths/decision_bin_{bin}.yaml new file mode 100644 index 0000000..1d4b770 --- /dev/null +++ b/src/assets/openapi/paths/decision_bin_{bin}.yaml @@ -0,0 +1,20 @@ +get: + tags: + - Miscellaneous + summary: Resolve Card BIN + operationId: miscellaneous_resolveCardBin + parameters: + - name: bin + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/VerificationResolveCardBINSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dedicated_account.yaml b/src/assets/openapi/paths/dedicated_account.yaml new file mode 100644 index 0000000..630789c --- /dev/null +++ b/src/assets/openapi/paths/dedicated_account.yaml @@ -0,0 +1,75 @@ +post: + tags: + - Dedicated Virtual Account + summary: Create Dedicated Account + operationId: dedicatedAccount_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountCreate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedNubanCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Dedicated Virtual Account + summary: List Dedicated Accounts + operationId: dedicatedAccount_list + parameters: + - name: account_number + in: query + schema: + type: string + - name: customer + in: query + schema: + type: string + - name: active + in: query + schema: + type: boolean + - name: currency + in: query + schema: + type: string + - name: provider_slug + in: query + schema: + type: string + - name: bank_id + in: query + schema: + type: string + - name: perPage + in: query + schema: + type: string + - name: page + in: query + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedNubanListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dedicated_account_assign.yaml b/src/assets/openapi/paths/dedicated_account_assign.yaml new file mode 100644 index 0000000..ea5663b --- /dev/null +++ b/src/assets/openapi/paths/dedicated_account_assign.yaml @@ -0,0 +1,20 @@ +post: + tags: + - Dedicated Virtual Account + summary: Assign Dedicated Account + operationId: dedicatedAccount_assign + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountAssign.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountAssign.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dedicated_account_available_providers.yaml b/src/assets/openapi/paths/dedicated_account_available_providers.yaml new file mode 100644 index 0000000..e64a4a9 --- /dev/null +++ b/src/assets/openapi/paths/dedicated_account_available_providers.yaml @@ -0,0 +1,14 @@ +get: + tags: + - Dedicated Virtual Account + summary: Fetch Bank Providers + operationId: dedicatedAccount_availableProviders + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dedicated_account_requery.yaml b/src/assets/openapi/paths/dedicated_account_requery.yaml new file mode 100644 index 0000000..9d141c2 --- /dev/null +++ b/src/assets/openapi/paths/dedicated_account_requery.yaml @@ -0,0 +1,30 @@ +parameters: + - name: account_number + description: Virtual account number to requery + in: query + schema: + type: string + - name: provider_slug + description: The bank's slug in lowercase, without spaces e.g. `wema-bank` + in: query + schema: + type: string + - name: date + description: The day the transfer was made in `YYYY-MM-DD` format + in: query + schema: + type: string +get: + tags: + - Dedicated Virtual Account + summary: Requery Dedicated Account + operationId: dedicatedAccount_requery + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dedicated_account_split.yaml b/src/assets/openapi/paths/dedicated_account_split.yaml new file mode 100644 index 0000000..f6730a5 --- /dev/null +++ b/src/assets/openapi/paths/dedicated_account_split.yaml @@ -0,0 +1,42 @@ +post: + tags: + - Dedicated Virtual Account + summary: Split Dedicated Account Transaction + operationId: dedicatedAccount_addSplit + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountSplit.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountSplit.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +delete: + tags: + - Dedicated Virtual Account + summary: Remove Split from Dedicated Account + operationId: dedicatedAccount_removeSplit + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountSplit.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/DedicatedVirtualAccountSplit.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dedicated_account_{account_id}.yaml b/src/assets/openapi/paths/dedicated_account_{account_id}.yaml new file mode 100644 index 0000000..72ec6a8 --- /dev/null +++ b/src/assets/openapi/paths/dedicated_account_{account_id}.yaml @@ -0,0 +1,42 @@ +parameters: + - name: account_id + in: path + required: true + schema: + type: string +get: + tags: + - Dedicated Virtual Account + summary: Fetch Dedicated Account + operationId: dedicatedAccount_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedNubanFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +delete: + tags: + - Dedicated Virtual Account + summary: Deactivate Dedicated Account + operationId: dedicatedAccount_deactivate + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/DedicatedNubanDeactivateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/directdebit_activation-charge.yaml b/src/assets/openapi/paths/directdebit_activation-charge.yaml new file mode 100644 index 0000000..9980f40 --- /dev/null +++ b/src/assets/openapi/paths/directdebit_activation-charge.yaml @@ -0,0 +1,19 @@ +put: + tags: + - Direct Debit + summary: Trigger Activation Charge + description: Trigger activation charge for specified customers + operationId: directdebit_triggerActivationCharge + requestBody: + required: true + content: + application/json: + schema: + $ref: ../components/schemas/DirectDebitActivationChargeRequest.yaml + responses: + '200': + $ref: ../components/responses/DirectDebitActivationChargeSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/directdebit_mandate-authorizations.yaml b/src/assets/openapi/paths/directdebit_mandate-authorizations.yaml new file mode 100644 index 0000000..7a206ec --- /dev/null +++ b/src/assets/openapi/paths/directdebit_mandate-authorizations.yaml @@ -0,0 +1,35 @@ +get: + tags: + - Direct Debit + summary: List Mandate Authorizations + description: Get a list of all the direct debit mandates on your integration + operationId: directdebit_listMandateAuthorizations + parameters: + - name: cursor + in: query + description: >- + The cursor value of the next set of authorizations to fetch. You can get + this from the meta object of the response + schema: + type: string + - name: status + in: query + description: Filter by the authorization status + schema: + type: string + enum: + - pending + - active + - revoked + - name: per_page + in: query + description: The number of authorizations to fetch per request + schema: + type: integer + responses: + '200': + $ref: ../components/responses/CustomerFetchMandateAuthorizationsSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dispute.yaml b/src/assets/openapi/paths/dispute.yaml new file mode 100644 index 0000000..e9e88c0 --- /dev/null +++ b/src/assets/openapi/paths/dispute.yaml @@ -0,0 +1,49 @@ +get: + tags: + - Dispute + summary: List Disputes + operationId: dispute_list + parameters: + - in: query + name: perPage + description: Number of records to fetch per page + schema: + type: integer + - in: query + name: page + description: The section to retrieve + schema: + type: integer + - in: query + name: status + description: >- + Dispute Status. Acceptable values are awaiting-merchant-feedback, + awaiting-bank-feedback, pending, resolved + schema: + type: string + - in: query + name: transaction + description: Transaction ID + schema: + type: string + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/DisputeListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dispute_export.yaml b/src/assets/openapi/paths/dispute_export.yaml new file mode 100644 index 0000000..12b9f24 --- /dev/null +++ b/src/assets/openapi/paths/dispute_export.yaml @@ -0,0 +1,41 @@ +get: + tags: + - Dispute + summary: Export Disputes + operationId: dispute_download + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: status + schema: + type: string + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/DisputeExportSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dispute_transaction_{id}.yaml b/src/assets/openapi/paths/dispute_transaction_{id}.yaml new file mode 100644 index 0000000..83785a4 --- /dev/null +++ b/src/assets/openapi/paths/dispute_transaction_{id}.yaml @@ -0,0 +1,21 @@ +get: + tags: + - Dispute + summary: List Transaction Disputes + operationId: dispute_transaction + parameters: + - name: id + description: Transaction ID + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/DisputeListTransactionSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dispute_{id}.yaml b/src/assets/openapi/paths/dispute_{id}.yaml new file mode 100644 index 0000000..489579e --- /dev/null +++ b/src/assets/openapi/paths/dispute_{id}.yaml @@ -0,0 +1,43 @@ +parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string +get: + tags: + - Dispute + summary: Fetch Dispute + operationId: dispute_fetch + responses: + '200': + $ref: ../components/responses/DisputeFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Dispute + summary: Update Dispute + operationId: dispute_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/DisputeUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/DisputeUpdate.yaml + responses: + '200': + $ref: ../components/responses/DisputeUpdateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dispute_{id}_evidence.yaml b/src/assets/openapi/paths/dispute_{id}_evidence.yaml new file mode 100644 index 0000000..82af031 --- /dev/null +++ b/src/assets/openapi/paths/dispute_{id}_evidence.yaml @@ -0,0 +1,27 @@ +post: + tags: + - Dispute + summary: Add Evidence + operationId: dispute_evidence + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/DisputeEvidence.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/DisputeEvidence.yaml + parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/DisputeAddEvidenceSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dispute_{id}_resolve.yaml b/src/assets/openapi/paths/dispute_{id}_resolve.yaml new file mode 100644 index 0000000..a481156 --- /dev/null +++ b/src/assets/openapi/paths/dispute_{id}_resolve.yaml @@ -0,0 +1,29 @@ +put: + tags: + - Dispute + summary: Resolve a Dispute + operationId: dispute_resolve + parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/DisputeResolve.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/DisputeResolve.yaml + responses: + '200': + $ref: ../components/responses/DisputeResolveSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/dispute_{id}_upload_url.yaml b/src/assets/openapi/paths/dispute_{id}_upload_url.yaml new file mode 100644 index 0000000..772299b --- /dev/null +++ b/src/assets/openapi/paths/dispute_{id}_upload_url.yaml @@ -0,0 +1,21 @@ +get: + tags: + - Dispute + summary: Get Upload URL + operationId: dispute_uploadUrl + parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/DisputeUploadURLSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/integration_payment_session_timeout.yaml b/src/assets/openapi/paths/integration_payment_session_timeout.yaml new file mode 100644 index 0000000..b9f1968 --- /dev/null +++ b/src/assets/openapi/paths/integration_payment_session_timeout.yaml @@ -0,0 +1,43 @@ +get: + tags: + - Integration + summary: Fetch Payment Session Timeout + operationId: integration_fetchPaymentSessionTimeout + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: >- + ../components/schemas/ControlPanelFetchPaymentSessionTimeoutResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Integration + summary: Update Payment Session Timeout + operationId: integration_updatePaymentSessionTimeout + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PaymentSession.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: >- + ../components/schemas/ControlPanelUpdatePaymentSessionTimeoutResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/order.yaml b/src/assets/openapi/paths/order.yaml new file mode 100644 index 0000000..1eee9de --- /dev/null +++ b/src/assets/openapi/paths/order.yaml @@ -0,0 +1,57 @@ +post: + tags: + - Order + summary: Create Order + operationId: order_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/OrderCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/OrderCreate.yaml + responses: + '200': + $ref: ../components/responses/OrderCreateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Order + summary: List Orders + operationId: order_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/OrderListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/order_product_{id}.yaml b/src/assets/openapi/paths/order_product_{id}.yaml new file mode 100644 index 0000000..20bb37b --- /dev/null +++ b/src/assets/openapi/paths/order_product_{id}.yaml @@ -0,0 +1,20 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +get: + tags: + - Order + summary: Fetch Products Order + operationId: order_fetchProducts + responses: + '200': + $ref: ../components/responses/OrderFetchProductSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/order_{code}_validate.yaml b/src/assets/openapi/paths/order_{code}_validate.yaml new file mode 100644 index 0000000..e85fad7 --- /dev/null +++ b/src/assets/openapi/paths/order_{code}_validate.yaml @@ -0,0 +1,20 @@ +parameters: + - name: code + in: path + required: true + schema: + type: string +get: + tags: + - Order + summary: Validate pay for me order + operationId: order_validatePayForMe + responses: + '200': + $ref: ../components/responses/OrderValidateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/order_{id}.yaml b/src/assets/openapi/paths/order_{id}.yaml new file mode 100644 index 0000000..5b6d1af --- /dev/null +++ b/src/assets/openapi/paths/order_{id}.yaml @@ -0,0 +1,20 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +get: + tags: + - Order + summary: Fetch Order + operationId: order_fetch + responses: + '200': + $ref: ../components/responses/OrderFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/page.yaml b/src/assets/openapi/paths/page.yaml new file mode 100644 index 0000000..1f14069 --- /dev/null +++ b/src/assets/openapi/paths/page.yaml @@ -0,0 +1,57 @@ +post: + tags: + - Page + summary: Create Page + operationId: page_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PageCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/PageCreate.yaml + responses: + '200': + $ref: ../components/responses/PageCreateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Page + summary: List Pages + operationId: page_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/PageListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/page_check_slug_availability_{slug}.yaml b/src/assets/openapi/paths/page_check_slug_availability_{slug}.yaml new file mode 100644 index 0000000..69c67cd --- /dev/null +++ b/src/assets/openapi/paths/page_check_slug_availability_{slug}.yaml @@ -0,0 +1,20 @@ +parameters: + - name: slug + in: path + required: true + schema: + type: string +get: + tags: + - Page + summary: Check Slug Availability + operationId: page_checkSlugAvailability + responses: + '200': + $ref: ../components/responses/PageCheckSlugAvailabilitySuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/page_{id}.yaml b/src/assets/openapi/paths/page_{id}.yaml new file mode 100644 index 0000000..55fde57 --- /dev/null +++ b/src/assets/openapi/paths/page_{id}.yaml @@ -0,0 +1,42 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +get: + tags: + - Page + summary: Fetch Page + operationId: page_fetch + responses: + '200': + $ref: ../components/responses/PageFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Page + summary: Update Page + operationId: page_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PageUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/PageUpdate.yaml + responses: + '200': + $ref: ../components/responses/PageUpdateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/page_{id}_product.yaml b/src/assets/openapi/paths/page_{id}_product.yaml new file mode 100644 index 0000000..ad3bee8 --- /dev/null +++ b/src/assets/openapi/paths/page_{id}_product.yaml @@ -0,0 +1,26 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +post: + tags: + - Page + summary: Add Products + operationId: page_addProducts + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PageProduct.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/PageProduct.yaml + responses: + '200': + $ref: ../components/responses/PageAddProductsSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/paymentrequest.yaml b/src/assets/openapi/paths/paymentrequest.yaml new file mode 100644 index 0000000..db7eb72 --- /dev/null +++ b/src/assets/openapi/paths/paymentrequest.yaml @@ -0,0 +1,74 @@ +post: + tags: + - Payment Request + summary: Create Payment Request + operationId: paymentRequest_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PaymentRequestCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/PaymentRequestCreate.yaml + responses: + '200': + $ref: ../components/responses/PaymentRequestCreateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Payment Request + summary: List Payment Request + operationId: paymentRequest_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: customer + schema: + type: string + description: Customer ID + - in: query + name: status + schema: + type: string + description: Invoice status to filter + - in: query + name: currency + schema: + type: string + description: >- + If your integration supports more than one currency, choose the one to + filter + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/PaymentRequestListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/paymentrequest_archive_{id}.yaml b/src/assets/openapi/paths/paymentrequest_archive_{id}.yaml new file mode 100644 index 0000000..91bb41a --- /dev/null +++ b/src/assets/openapi/paths/paymentrequest_archive_{id}.yaml @@ -0,0 +1,18 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +post: + tags: + - Payment Request + summary: Archive Payment Request + operationId: paymentRequest_archive + responses: + '200': + $ref: ../components/responses/PaymentRequestArchiveSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/paymentrequest_finalize_{id}.yaml b/src/assets/openapi/paths/paymentrequest_finalize_{id}.yaml new file mode 100644 index 0000000..ba68ce7 --- /dev/null +++ b/src/assets/openapi/paths/paymentrequest_finalize_{id}.yaml @@ -0,0 +1,18 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +post: + tags: + - Payment Request + summary: Finalize Payment Request + operationId: paymentRequest_finalize + responses: + '200': + $ref: ../components/responses/PaymentRequestFinalizeSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/paymentrequest_notify_{id}.yaml b/src/assets/openapi/paths/paymentrequest_notify_{id}.yaml new file mode 100644 index 0000000..e150d37 --- /dev/null +++ b/src/assets/openapi/paths/paymentrequest_notify_{id}.yaml @@ -0,0 +1,18 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +post: + tags: + - Payment Request + summary: Send Notification + operationId: paymentRequest_notify + responses: + '200': + $ref: ../components/responses/PaymentRequestSendNotificationSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/paymentrequest_totals.yaml b/src/assets/openapi/paths/paymentrequest_totals.yaml new file mode 100644 index 0000000..1738884 --- /dev/null +++ b/src/assets/openapi/paths/paymentrequest_totals.yaml @@ -0,0 +1,14 @@ +get: + tags: + - Payment Request + summary: Payment Request Total + operationId: paymentRequest_totals + responses: + '200': + $ref: ../components/responses/PaymentRequestTotalSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/paymentrequest_verify_{id}.yaml b/src/assets/openapi/paths/paymentrequest_verify_{id}.yaml new file mode 100644 index 0000000..712b93f --- /dev/null +++ b/src/assets/openapi/paths/paymentrequest_verify_{id}.yaml @@ -0,0 +1,20 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +get: + tags: + - Payment Request + summary: Verify Payment Request + operationId: paymentRequest_verify + responses: + '200': + $ref: ../components/responses/PaymentRequestVerifySuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/paymentrequest_{id}.yaml b/src/assets/openapi/paths/paymentrequest_{id}.yaml new file mode 100644 index 0000000..acc81a1 --- /dev/null +++ b/src/assets/openapi/paths/paymentrequest_{id}.yaml @@ -0,0 +1,42 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +get: + tags: + - Payment Request + summary: Fetch Payment Request + operationId: paymentRequest_fetch + responses: + '200': + $ref: ../components/responses/PaymentRequestListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Payment Request + summary: Update Payment Request + operationId: paymentRequest_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PaymentRequestUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/PaymentRequestUpdate.yaml + responses: + '200': + $ref: ../components/responses/PaymentRequestUpdateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/plan.yaml b/src/assets/openapi/paths/plan.yaml new file mode 100644 index 0000000..3425078 --- /dev/null +++ b/src/assets/openapi/paths/plan.yaml @@ -0,0 +1,67 @@ +post: + tags: + - Plan + summary: Create Plan + operationId: plan_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PlanCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/PlanCreate.yaml + responses: + '200': + $ref: ../components/responses/PlanCreateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Plan + summary: List Plans + operationId: plan_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: interval + schema: + type: string + description: Specify interval of the plan + - in: query + name: amount + schema: + type: integer + description: The amount on the plans to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/PlanListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/plan_{code}.yaml b/src/assets/openapi/paths/plan_{code}.yaml new file mode 100644 index 0000000..38c8a35 --- /dev/null +++ b/src/assets/openapi/paths/plan_{code}.yaml @@ -0,0 +1,42 @@ +parameters: + - name: code + in: path + required: true + schema: + type: string +get: + tags: + - Plan + summary: Fetch Plan + operationId: plan_fetch + responses: + '200': + $ref: ../components/responses/PlanFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Plan + summary: Update Plan + operationId: plan_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/PlanUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/PlanUpdate.yaml + responses: + '200': + $ref: ../components/responses/PlanUpdateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/product.yaml b/src/assets/openapi/paths/product.yaml new file mode 100644 index 0000000..078a379 --- /dev/null +++ b/src/assets/openapi/paths/product.yaml @@ -0,0 +1,59 @@ +post: + tags: + - Product + summary: Create Product + operationId: product_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ProductCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ProductCreate.yaml + responses: + '201': + $ref: ../components/responses/ProductCreateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Product + summary: List Products + operationId: product_list + parameters: + - name: perPage + in: query + schema: + type: integer + - name: page + in: query + schema: + type: integer + - name: active + in: query + schema: + type: boolean + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/ProductListsSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/product_{id}.yaml b/src/assets/openapi/paths/product_{id}.yaml new file mode 100644 index 0000000..ee16451 --- /dev/null +++ b/src/assets/openapi/paths/product_{id}.yaml @@ -0,0 +1,56 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +get: + tags: + - Product + summary: Fetch Product + operationId: product_fetch + responses: + '200': + $ref: ../components/responses/ProductFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Product + summary: Update product + operationId: product_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/ProductUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/ProductUpdate.yaml + responses: + '200': + $ref: ../components/responses/ProductUpdateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +delete: + tags: + - Product + summary: Delete Product + operationId: product_delete + responses: + '200': + $ref: ../components/responses/ProductDeleteSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/refund.yaml b/src/assets/openapi/paths/refund.yaml new file mode 100644 index 0000000..8ffcb6a --- /dev/null +++ b/src/assets/openapi/paths/refund.yaml @@ -0,0 +1,57 @@ +post: + tags: + - Refund + summary: Create Refund + operationId: refund_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/RefundCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/RefundCreate.yaml + responses: + '200': + $ref: ../components/responses/RefundCreateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Refund + summary: List Refunds + operationId: refund_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/RefundListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/refund_{id}.yaml b/src/assets/openapi/paths/refund_{id}.yaml new file mode 100644 index 0000000..94f128a --- /dev/null +++ b/src/assets/openapi/paths/refund_{id}.yaml @@ -0,0 +1,20 @@ +get: + tags: + - Refund + summary: Fetch Refund + operationId: refund_fetch + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/RefundFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/settlement.yaml b/src/assets/openapi/paths/settlement.yaml new file mode 100644 index 0000000..d7e0445 --- /dev/null +++ b/src/assets/openapi/paths/settlement.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Settlement + summary: Fetch Settlements + operationId: settlements_fetch + parameters: + - name: perPage + in: query + schema: + type: integer + example: 50 + - name: page + in: query + schema: + type: integer + example: 2 + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/settlement_{id}_transaction.yaml b/src/assets/openapi/paths/settlement_{id}_transaction.yaml new file mode 100644 index 0000000..bfada86 --- /dev/null +++ b/src/assets/openapi/paths/settlement_{id}_transaction.yaml @@ -0,0 +1,20 @@ +get: + tags: + - Settlement + summary: Settlement Transactions + operationId: settlements_transaction + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/split.yaml b/src/assets/openapi/paths/split.yaml new file mode 100644 index 0000000..32c7fac --- /dev/null +++ b/src/assets/openapi/paths/split.yaml @@ -0,0 +1,81 @@ +post: + tags: + - Split + summary: Create Split + operationId: split_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SplitCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SplitCreate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SplitCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Split + summary: List Splits + operationId: split_list + parameters: + - name: name + description: The name of the split + in: query + schema: + type: string + - name: active + description: The status of the split + in: query + schema: + type: boolean + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + - in: query + name: subaccount_code + description: Filter by subaccount code + schema: + type: string + example: ACCT_dskvlw3y3dMukmt + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SplitListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/split_{id}.yaml b/src/assets/openapi/paths/split_{id}.yaml new file mode 100644 index 0000000..5084b0b --- /dev/null +++ b/src/assets/openapi/paths/split_{id}.yaml @@ -0,0 +1,56 @@ +get: + tags: + - Split + summary: Fetch Split + operationId: split_fetch + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SplitFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Split + summary: Update Split + operationId: split_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SplitUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SplitUpdate.yaml + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SplitUpdateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/split_{id}_subaccount_add.yaml b/src/assets/openapi/paths/split_{id}_subaccount_add.yaml new file mode 100644 index 0000000..77e4644 --- /dev/null +++ b/src/assets/openapi/paths/split_{id}_subaccount_add.yaml @@ -0,0 +1,31 @@ +post: + tags: + - Split + summary: Add Subaccount to Split + operationId: split_addSubaccount + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SplitSubaccounts.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SplitSubaccounts.yaml + parameters: + - name: id + in: path + required: true + schema: + type: string + example: application/json + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SplitAddUpdateSubaccountResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/split_{id}_subaccount_remove.yaml b/src/assets/openapi/paths/split_{id}_subaccount_remove.yaml new file mode 100644 index 0000000..54fe7c4 --- /dev/null +++ b/src/assets/openapi/paths/split_{id}_subaccount_remove.yaml @@ -0,0 +1,30 @@ +post: + tags: + - Split + summary: Remove Subaccount from split + operationId: split_removeSubaccount + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SplitSubaccounts.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SplitSubaccounts.yaml + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SplitRemoveSubaccountResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/storefront.yaml b/src/assets/openapi/paths/storefront.yaml new file mode 100644 index 0000000..555b779 --- /dev/null +++ b/src/assets/openapi/paths/storefront.yaml @@ -0,0 +1,50 @@ +post: + tags: + - Storefront + summary: Create Storefront + operationId: storefront_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/StorefrontCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/StorefrontCreate.yaml + responses: + '200': + $ref: ../components/responses/StorefrontCreateSuccess.yaml + '400': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Storefront + summary: List Storefronts + operationId: storefront_list + parameters: + - name: perPage + in: query + schema: + type: integer + - name: page + in: query + schema: + type: integer + - name: status + in: query + schema: + type: string + enum: + - active + - inactive + responses: + '200': + $ref: ../components/responses/StorefrontListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/storefront_verify_{slug}.yaml b/src/assets/openapi/paths/storefront_verify_{slug}.yaml new file mode 100644 index 0000000..7c06b6b --- /dev/null +++ b/src/assets/openapi/paths/storefront_verify_{slug}.yaml @@ -0,0 +1,20 @@ +parameters: + - name: slug + in: path + required: true + schema: + type: string +get: + tags: + - Storefront + summary: Verify Storefront Slug + operationId: storefront_verifySlug + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/storefront_{id}.yaml b/src/assets/openapi/paths/storefront_{id}.yaml new file mode 100644 index 0000000..36bcaa2 --- /dev/null +++ b/src/assets/openapi/paths/storefront_{id}.yaml @@ -0,0 +1,56 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +get: + tags: + - Storefront + summary: Fetch Storefront + operationId: storefront_fetch + responses: + '200': + $ref: ../components/responses/StorefrontFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Storefront + summary: Update Storefront + operationId: storefront_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/StorefrontUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/StorefrontUpdate.yaml + responses: + '200': + $ref: ../components/responses/StorefrontUpdateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +delete: + tags: + - Storefront + summary: Delete Storefront + operationId: storefront_delete + responses: + '200': + $ref: ../components/responses/StorefrontDeleteSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/storefront_{id}_duplicate.yaml b/src/assets/openapi/paths/storefront_{id}_duplicate.yaml new file mode 100644 index 0000000..9bc6f65 --- /dev/null +++ b/src/assets/openapi/paths/storefront_{id}_duplicate.yaml @@ -0,0 +1,20 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +post: + tags: + - Storefront + summary: Duplicate Storefront + operationId: storefront_duplicate + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/storefront_{id}_order.yaml b/src/assets/openapi/paths/storefront_{id}_order.yaml new file mode 100644 index 0000000..31e1eaa --- /dev/null +++ b/src/assets/openapi/paths/storefront_{id}_order.yaml @@ -0,0 +1,20 @@ +get: + tags: + - Storefront + summary: Fetch Storefront Orders + description: Fetch all orders in your Storefront + operationId: storefront_fetchOrders + parameters: + - name: id + in: path + required: true + schema: + type: string + example: Z0R4orOU + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/storefront_{id}_product.yaml b/src/assets/openapi/paths/storefront_{id}_product.yaml new file mode 100644 index 0000000..b75d7ac --- /dev/null +++ b/src/assets/openapi/paths/storefront_{id}_product.yaml @@ -0,0 +1,42 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +post: + tags: + - Storefront + summary: Add Products to Storefront + operationId: storefront_addProducts + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/StorefrontAddProducts.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/StorefrontAddProducts.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +get: + tags: + - Storefront + summary: List Products in Storefront + operationId: storefront_listProducts + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/storefront_{id}_publish.yaml b/src/assets/openapi/paths/storefront_{id}_publish.yaml new file mode 100644 index 0000000..3f6bc70 --- /dev/null +++ b/src/assets/openapi/paths/storefront_{id}_publish.yaml @@ -0,0 +1,20 @@ +parameters: + - name: id + in: path + required: true + schema: + type: string +post: + tags: + - Storefront + summary: Publish Storefront + operationId: storefront_publish + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subaccount.yaml b/src/assets/openapi/paths/subaccount.yaml new file mode 100644 index 0000000..65c4502 --- /dev/null +++ b/src/assets/openapi/paths/subaccount.yaml @@ -0,0 +1,58 @@ +post: + tags: + - Subaccount + summary: Create Subaccount + operationId: subaccount_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SubaccountCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SubaccountCreate.yaml + responses: + '201': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SubaccountCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Subaccount + summary: List Subaccounts + operationId: subaccount_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: active + schema: + type: boolean + description: Filter by active or inactive subaccounts + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SubaccountListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subaccount_{code}.yaml b/src/assets/openapi/paths/subaccount_{code}.yaml new file mode 100644 index 0000000..b96ea74 --- /dev/null +++ b/src/assets/openapi/paths/subaccount_{code}.yaml @@ -0,0 +1,50 @@ +parameters: + - name: code + in: path + required: true + schema: + type: string +get: + tags: + - Subaccount + summary: Fetch Subaccount + operationId: subaccount_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SubaccountFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Subaccount + summary: Update Subaccount + operationId: subaccount_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SubaccountUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SubaccountUpdate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/SubaccountUpdateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subscription.yaml b/src/assets/openapi/paths/subscription.yaml new file mode 100644 index 0000000..2b132f0 --- /dev/null +++ b/src/assets/openapi/paths/subscription.yaml @@ -0,0 +1,67 @@ +post: + tags: + - Subscription + summary: Create Subscription + operationId: subscription_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SubscriptionCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SubscriptionCreate.yaml + responses: + '200': + $ref: ../components/responses/SubscriptionCreateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Subscription + summary: List Subscriptions + operationId: subscription_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: plan + schema: + type: string + description: Plan ID + - in: query + name: customer + schema: + type: string + description: Customer ID + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/SubscriptionListSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subscription_disable.yaml b/src/assets/openapi/paths/subscription_disable.yaml new file mode 100644 index 0000000..46fcd9b --- /dev/null +++ b/src/assets/openapi/paths/subscription_disable.yaml @@ -0,0 +1,20 @@ +post: + tags: + - Subscription + summary: Disable Subscription + operationId: subscription_disable + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SubscriptionToggle.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SubscriptionToggle.yaml + responses: + '200': + $ref: ../components/responses/SubscriptionDisableSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subscription_enable.yaml b/src/assets/openapi/paths/subscription_enable.yaml new file mode 100644 index 0000000..2ed04c1 --- /dev/null +++ b/src/assets/openapi/paths/subscription_enable.yaml @@ -0,0 +1,20 @@ +post: + tags: + - Subscription + summary: Enable Subscription + operationId: subscription_enable + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/SubscriptionToggle.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/SubscriptionToggle.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subscription_{code}.yaml b/src/assets/openapi/paths/subscription_{code}.yaml new file mode 100644 index 0000000..bc1a183 --- /dev/null +++ b/src/assets/openapi/paths/subscription_{code}.yaml @@ -0,0 +1,20 @@ +parameters: + - name: code + in: path + required: true + schema: + type: string +get: + tags: + - Subscription + summary: Fetch Subscription + operationId: subscription_fetch + responses: + '200': + $ref: ../components/responses/SubscriptionFetchSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subscription_{code}_manage_email.yaml b/src/assets/openapi/paths/subscription_{code}_manage_email.yaml new file mode 100644 index 0000000..1e336fb --- /dev/null +++ b/src/assets/openapi/paths/subscription_{code}_manage_email.yaml @@ -0,0 +1,18 @@ +post: + tags: + - Subscription + summary: Send Update Subscription Link + operationId: subscription_manageEmail + parameters: + - name: code + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/subscription_{code}_manage_link.yaml b/src/assets/openapi/paths/subscription_{code}_manage_link.yaml new file mode 100644 index 0000000..4673c06 --- /dev/null +++ b/src/assets/openapi/paths/subscription_{code}_manage_link.yaml @@ -0,0 +1,18 @@ +get: + tags: + - Subscription + summary: Generate Update Subscription Link + operationId: subscription_manageLink + parameters: + - name: code + in: path + required: true + schema: + type: string + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/terminal.yaml b/src/assets/openapi/paths/terminal.yaml new file mode 100644 index 0000000..9cadd72 --- /dev/null +++ b/src/assets/openapi/paths/terminal.yaml @@ -0,0 +1,28 @@ +get: + tags: + - Terminal + summary: List Terminals + operationId: terminal_list + description: List the Terminals available on your integration + parameters: + - name: next + in: query + schema: + type: string + - name: previous + in: query + schema: + type: string + - name: per_page + in: query + schema: + type: string + responses: + '200': + $ref: ../components/responses/TerminalListsSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/terminal_commission_device.yaml b/src/assets/openapi/paths/terminal_commission_device.yaml new file mode 100644 index 0000000..2353ba4 --- /dev/null +++ b/src/assets/openapi/paths/terminal_commission_device.yaml @@ -0,0 +1,21 @@ +post: + tags: + - Terminal + summary: Commission Terminal + description: Activate your debug device by linking it to your integration + operationId: terminal_commission + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TerminalActivationToggle.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TerminalActivationToggle.yaml + responses: + '200': + $ref: ../components/responses/TerminalCommissionDeviceSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/terminal_decommission_device.yaml b/src/assets/openapi/paths/terminal_decommission_device.yaml new file mode 100644 index 0000000..ada47ac --- /dev/null +++ b/src/assets/openapi/paths/terminal_decommission_device.yaml @@ -0,0 +1,21 @@ +post: + tags: + - Terminal + summary: Decommission Terminal + description: Unlink your debug device from your integration + operationId: terminal_decommission + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TerminalActivationToggle.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TerminalActivationToggle.yaml + responses: + '200': + $ref: ../components/responses/TerminalDecommissionDeviceSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/terminal_{id}_event.yaml b/src/assets/openapi/paths/terminal_{id}_event.yaml new file mode 100644 index 0000000..56e7d5c --- /dev/null +++ b/src/assets/openapi/paths/terminal_{id}_event.yaml @@ -0,0 +1,28 @@ +post: + tags: + - Terminal + summary: Send Event + description: Send an event from your application to the Paystack Terminal + operationId: terminal_sendEvent + parameters: + - name: id + in: path + required: true + schema: + type: string + example: Z0R4orOU + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TerminalSendEvent.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TerminalSendEvent.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/terminal_{terminal_id}.yaml b/src/assets/openapi/paths/terminal_{terminal_id}.yaml new file mode 100644 index 0000000..8bfd585 --- /dev/null +++ b/src/assets/openapi/paths/terminal_{terminal_id}.yaml @@ -0,0 +1,43 @@ +parameters: + - name: terminal_id + in: path + required: true + schema: + type: string +get: + tags: + - Terminal + summary: Fetch Terminal + description: Get the details of a Terminal + operationId: terminal_fetch + responses: + '200': + $ref: ../components/responses/TerminalGetSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Terminal + summary: Update Terminal + operationId: terminal_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TerminalUpate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TerminalUpate.yaml + responses: + '200': + $ref: ../components/responses/TerminalUpdateSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/terminal_{terminal_id}_event_{event_id}.yaml b/src/assets/openapi/paths/terminal_{terminal_id}_event_{event_id}.yaml new file mode 100644 index 0000000..63d6fe8 --- /dev/null +++ b/src/assets/openapi/paths/terminal_{terminal_id}_event_{event_id}.yaml @@ -0,0 +1,28 @@ +get: + tags: + - Terminal + summary: Fetch Event Status + description: Check the status of an event sent to the Terminal + operationId: terminal_fetchEventStatus + parameters: + - name: terminal_id + in: path + required: true + schema: + type: string + example: Z0R4orOU + - name: event_id + in: path + required: true + schema: + type: string + example: 616d721e8c5cd40a0cdd54a6 + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/terminal_{terminal_id}_presence.yaml b/src/assets/openapi/paths/terminal_{terminal_id}_presence.yaml new file mode 100644 index 0000000..8ef51bf --- /dev/null +++ b/src/assets/openapi/paths/terminal_{terminal_id}_presence.yaml @@ -0,0 +1,22 @@ +get: + tags: + - Terminal + summary: Fetch Terminal Status + description: Check the availiability of a Terminal before sending an event to it + operationId: terminal_fetchTerminalStatus + parameters: + - name: terminal_id + in: path + required: true + schema: + type: string + example: Z0R4orOU + responses: + '200': + $ref: ../components/responses/TerminalGetStatusSuccess.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction.yaml b/src/assets/openapi/paths/transaction.yaml new file mode 100644 index 0000000..9612a9a --- /dev/null +++ b/src/assets/openapi/paths/transaction.yaml @@ -0,0 +1,130 @@ +get: + tags: + - Transaction + summary: List Transactions + operationId: transaction_list + description: List transactions that has occurred on your integration + parameters: + - in: query + name: use_cursor + description: A flag to indicate if cursor based pagination should be used + schema: + type: boolean + - in: query + name: next + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the next set of data + schema: + type: string + - in: query + name: previous + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the previous set of data + schema: + type: string + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + - in: query + name: status + description: Filter transaction by status + schema: + type: string + enum: + - success + - failed + - abandoned + - reversed + - in: query + name: source + description: The origin of the payment + schema: + type: string + enum: + - merchantApi + - checkout + - pos + - virtualTerminal + - in: query + name: terminal_id + description: Filter transactions by a terminal ID + schema: + type: string + - in: query + name: virtual_account_number + description: Filter transactions by a virtual account number + schema: + type: string + - in: query + name: customer_code + description: Filter transactions by a customer code + schema: + type: string + - in: query + name: amount + description: Filter transactions by a specific amount + schema: + type: integer + format: int64 + - in: query + name: settlement + description: The settlement ID to filter for settled transactions + schema: + type: integer + format: int64 + - in: query + name: channel + description: The payment method the customer used to complete the transaction + schema: + type: string + enum: + - card + - pos + - bank + - dedicated_nuban + - ussd + - bank_transfer + - in: query + name: subaccount_code + description: Filter transaction by subaccount code + schema: + type: string + - in: query + name: split_code + description: Filter transaction by split code + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransactionListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_charge_authorization.yaml b/src/assets/openapi/paths/transaction_charge_authorization.yaml new file mode 100644 index 0000000..752fbdc --- /dev/null +++ b/src/assets/openapi/paths/transaction_charge_authorization.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Transaction + summary: Charge Authorization + operationId: transaction_chargeAuthorization + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransactionChargeAuthorization.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransactionChargeAuthorization.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/ChargeAuthorizationResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_export.yaml b/src/assets/openapi/paths/transaction_export.yaml new file mode 100644 index 0000000..2963b7f --- /dev/null +++ b/src/assets/openapi/paths/transaction_export.yaml @@ -0,0 +1,65 @@ +get: + tags: + - Transaction + summary: Export Transactions + operationId: transaction_export + x-operationId: transaction_exportTransaction + parameters: + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + example: '2024-06-01T00:00:01Z' + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + example: '2024-06-30T13:36:54Z' + - in: query + name: status + description: Filter by the status of the transaction + schema: + type: string + enum: + - success + - failed + - abandoned + - reversed + - all + example: success + - in: query + name: customer + description: Filter by customer ID + schema: + type: number + example: 123172416 + - in: query + name: subaccount_code + description: Filter by subaccount code + schema: + type: string + example: ACCT_dskvlw3y3dMukmt + - in: query + name: settlement + description: Filter by the settlement ID + schema: + type: integer + format: int64 + example: 5687910 + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransactionExportResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_initialize.yaml b/src/assets/openapi/paths/transaction_initialize.yaml new file mode 100644 index 0000000..e7faf30 --- /dev/null +++ b/src/assets/openapi/paths/transaction_initialize.yaml @@ -0,0 +1,27 @@ +post: + tags: + - Transaction + summary: Initialize Transaction + operationId: transaction_initialize + description: Create a new transaction + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransactionInitialize.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransactionInitialize.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransactionInitializeResponse.yaml + '400': + $ref: ../components/responses/TransactionInitializeBadRequestResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_partial_debit.yaml b/src/assets/openapi/paths/transaction_partial_debit.yaml new file mode 100644 index 0000000..caa69d2 --- /dev/null +++ b/src/assets/openapi/paths/transaction_partial_debit.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Transaction + summary: Partial Debit + operationId: transaction_partialDebit + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransactionPartialDebit.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransactionPartialDebit.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransactionPartialDebitResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_timeline_{id}.yaml b/src/assets/openapi/paths/transaction_timeline_{id}.yaml new file mode 100644 index 0000000..dfaa91a --- /dev/null +++ b/src/assets/openapi/paths/transaction_timeline_{id}.yaml @@ -0,0 +1,29 @@ +get: + tags: + - Transaction + summary: Fetch Transaction Timeline + operationId: transaction_timeline + description: >- + Get the details about the lifecycle of a transaction from initiation to + completion + parameters: + - name: id + in: path + required: true + schema: + type: integer + format: int64 + example: 3936799950 + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransactionTimelineResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_totals.yaml b/src/assets/openapi/paths/transaction_totals.yaml new file mode 100644 index 0000000..f315930 --- /dev/null +++ b/src/assets/openapi/paths/transaction_totals.yaml @@ -0,0 +1,34 @@ +get: + tags: + - Transaction + summary: Transaction Totals + operationId: transaction_totals + description: Get the total amount of all transactions + parameters: + - in: query + description: The start date + name: from + schema: + type: string + format: date-time + example: '2024-06-01T00:00:01Z' + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + example: '2024-06-30T13:36:54Z' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransactionTotalsResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_verify_{reference}.yaml b/src/assets/openapi/paths/transaction_verify_{reference}.yaml new file mode 100644 index 0000000..55fa8b2 --- /dev/null +++ b/src/assets/openapi/paths/transaction_verify_{reference}.yaml @@ -0,0 +1,26 @@ +get: + tags: + - Transaction + summary: Verify Transaction + operationId: transaction_verify + description: Verify a previously initiated transaction using it's reference + parameters: + - name: reference + in: path + description: The transaction reference to verify + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/VerifyResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_{id}.yaml b/src/assets/openapi/paths/transaction_{id}.yaml new file mode 100644 index 0000000..abe6060 --- /dev/null +++ b/src/assets/openapi/paths/transaction_{id}.yaml @@ -0,0 +1,26 @@ +get: + tags: + - Transaction + summary: Fetch Transaction + operationId: transaction_fetch + description: Fetch a transaction to get its details + parameters: + - name: id + in: path + description: The ID of the transaction to fetch + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransactionFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_{id}_event.yaml b/src/assets/openapi/paths/transaction_{id}_event.yaml new file mode 100644 index 0000000..934e361 --- /dev/null +++ b/src/assets/openapi/paths/transaction_{id}_event.yaml @@ -0,0 +1,22 @@ +get: + tags: + - Transaction + summary: Get Transaction Event + operationId: transaction_event + parameters: + - name: id + in: path + required: true + schema: + type: integer + format: int64 + example: 3936799950 + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transaction_{id}_session.yaml b/src/assets/openapi/paths/transaction_{id}_session.yaml new file mode 100644 index 0000000..4b70aac --- /dev/null +++ b/src/assets/openapi/paths/transaction_{id}_session.yaml @@ -0,0 +1,22 @@ +get: + tags: + - Transaction + summary: Get Transaction Session + operationId: transaction_session + parameters: + - name: id + in: path + required: true + schema: + type: integer + format: int64 + example: 3936799950 + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer.yaml b/src/assets/openapi/paths/transfer.yaml new file mode 100644 index 0000000..7614eed --- /dev/null +++ b/src/assets/openapi/paths/transfer.yaml @@ -0,0 +1,105 @@ +post: + tags: + - Transfer + summary: Initiate Transfer + operationId: transfer_initiate + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferInitiate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferInitiate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Transfer + summary: List Transfers + operationId: transfer_list + parameters: + - in: query + name: use_cursor + description: A flag to indicate if cursor based pagination should be used + schema: + type: boolean + - in: query + name: next + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the next set of data + schema: + type: string + - in: query + name: previous + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the previous set of data + schema: + type: string + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + - in: query + name: recipient + description: Filter transfer by the recipient code + schema: + type: string + - in: query + name: status + description: Filter transfer by status + schema: + type: string + default: pending + enum: + - pending + - success + - failed + - otp + - abandoned + - reversed + - blocked + - rejected + - received + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_bulk.yaml b/src/assets/openapi/paths/transfer_bulk.yaml new file mode 100644 index 0000000..284d8ae --- /dev/null +++ b/src/assets/openapi/paths/transfer_bulk.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Transfer + summary: Initiate Bulk Transfer + operationId: transfer_bulk + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferBulk.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferBulk.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferBulkResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_disable_otp.yaml b/src/assets/openapi/paths/transfer_disable_otp.yaml new file mode 100644 index 0000000..36f3d07 --- /dev/null +++ b/src/assets/openapi/paths/transfer_disable_otp.yaml @@ -0,0 +1,16 @@ +post: + tags: + - Transfer + summary: Disable OTP for Transfers + operationId: transfer_disableOtp + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferDisablesOtpResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_disable_otp_finalize.yaml b/src/assets/openapi/paths/transfer_disable_otp_finalize.yaml new file mode 100644 index 0000000..d8c1a2b --- /dev/null +++ b/src/assets/openapi/paths/transfer_disable_otp_finalize.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Transfer + summary: Finalize Disabling OTP for Transfers + operationId: transfer_disableOtpFinalize + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferFinalizeDisableOTP.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferFinalizeDisableOTP.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferFinalizeDisablesOtpResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_enable_otp.yaml b/src/assets/openapi/paths/transfer_enable_otp.yaml new file mode 100644 index 0000000..b4d8d13 --- /dev/null +++ b/src/assets/openapi/paths/transfer_enable_otp.yaml @@ -0,0 +1,16 @@ +post: + tags: + - Transfer + summary: Enable OTP requirement for Transfers + operationId: transfer_enableOtp + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferEnablesOtpResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_export.yaml b/src/assets/openapi/paths/transfer_export.yaml new file mode 100644 index 0000000..50cc7b0 --- /dev/null +++ b/src/assets/openapi/paths/transfer_export.yaml @@ -0,0 +1,48 @@ +get: + tags: + - Transfer + summary: Export Transfers + operationId: transfer_exportTransfer + parameters: + - in: query + name: recipient + description: Export transfer by the recipient code + schema: + type: string + - in: query + name: status + description: Export transfer by status + schema: + type: string + default: pending + enum: + - pending + - success + - failed + - otp + - abandoned + - reversed + - blocked + - rejected + - received + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_finalize_transfer.yaml b/src/assets/openapi/paths/transfer_finalize_transfer.yaml new file mode 100644 index 0000000..7108822 --- /dev/null +++ b/src/assets/openapi/paths/transfer_finalize_transfer.yaml @@ -0,0 +1,20 @@ +post: + tags: + - Transfer + summary: Finalize Transfer + operationId: transfer_finalize + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferFinalize.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferFinalize.yaml + responses: + '200': + $ref: ../components/responses/Ok.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_resend_otp.yaml b/src/assets/openapi/paths/transfer_resend_otp.yaml new file mode 100644 index 0000000..fb85d2d --- /dev/null +++ b/src/assets/openapi/paths/transfer_resend_otp.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Transfer + summary: Resend OTP for Transfer + operationId: transfer_resendOtp + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferResendOTP.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferResendOTP.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferResendsOtpResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_verify_{reference}.yaml b/src/assets/openapi/paths/transfer_verify_{reference}.yaml new file mode 100644 index 0000000..24c5c2e --- /dev/null +++ b/src/assets/openapi/paths/transfer_verify_{reference}.yaml @@ -0,0 +1,24 @@ +get: + tags: + - Transfer + summary: Verify Transfer + operationId: transfer_verify + parameters: + - name: reference + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferVerifyResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transfer_{code}.yaml b/src/assets/openapi/paths/transfer_{code}.yaml new file mode 100644 index 0000000..60048e4 --- /dev/null +++ b/src/assets/openapi/paths/transfer_{code}.yaml @@ -0,0 +1,25 @@ +parameters: + - name: code + description: Transfer code + in: path + required: true + schema: + type: string +get: + tags: + - Transfer + summary: Fetch Transfer + operationId: transfer_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transferrecipient.yaml b/src/assets/openapi/paths/transferrecipient.yaml new file mode 100644 index 0000000..144f4db --- /dev/null +++ b/src/assets/openapi/paths/transferrecipient.yaml @@ -0,0 +1,72 @@ +post: + tags: + - Transfer Recipient + summary: Create Transfer Recipient + operationId: transferrecipient_create + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientCreate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferRecipientCreate.yaml + responses: + '201': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error +get: + tags: + - Transfer Recipient + summary: List Transfer Recipients + operationId: transferrecipient_list + parameters: + - in: query + name: use_cursor + description: A flag to indicate if cursor based pagination should be used + schema: + type: boolean + - in: query + name: next + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the next set of data + schema: + type: string + - in: query + name: previous + description: > + An alphanumeric value returned for every cursor based retrieval, used to + retrieve the previous set of data + schema: + type: string + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientListResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transferrecipient_bulk.yaml b/src/assets/openapi/paths/transferrecipient_bulk.yaml new file mode 100644 index 0000000..f0679b0 --- /dev/null +++ b/src/assets/openapi/paths/transferrecipient_bulk.yaml @@ -0,0 +1,24 @@ +post: + tags: + - Transfer Recipient + summary: Bulk Create Transfer Recipient + operationId: transferrecipient_bulk + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientBulk.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferRecipientBulk.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientBulkCreateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + default: + description: Server error diff --git a/src/assets/openapi/paths/transferrecipient_{code}.yaml b/src/assets/openapi/paths/transferrecipient_{code}.yaml new file mode 100644 index 0000000..09c445d --- /dev/null +++ b/src/assets/openapi/paths/transferrecipient_{code}.yaml @@ -0,0 +1,69 @@ +parameters: + - name: code + description: Transfer recipient code + in: path + required: true + schema: + type: string +get: + tags: + - Transfer Recipient + summary: Fetch Transfer recipient + operationId: transferrecipient_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientFetchResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +put: + tags: + - Transfer Recipient + summary: Update Transfer recipient + operationId: transferrecipient_update + requestBody: + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientUpdate.yaml + application/x-www-form-urlencoded: + schema: + $ref: ../components/schemas/TransferRecipientUpdate.yaml + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientUpdateResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error +delete: + tags: + - Transfer Recipient + summary: Delete Transfer Recipient + operationId: transferrecipient_delete + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: ../components/schemas/TransferRecipientDeleteResponse.yaml + '401': + $ref: ../components/responses/Unauthorized.yaml + '404': + $ref: ../components/responses/NotFound.yaml + default: + description: Server error diff --git a/sdk/paystack.yaml b/src/assets/sdk/paystack.yaml similarity index 100% rename from sdk/paystack.yaml rename to src/assets/sdk/paystack.yaml diff --git a/use_cases/betting.yaml b/src/assets/use_cases/betting.yaml similarity index 100% rename from use_cases/betting.yaml rename to src/assets/use_cases/betting.yaml diff --git a/use_cases/lending.yaml b/src/assets/use_cases/lending.yaml similarity index 100% rename from use_cases/lending.yaml rename to src/assets/use_cases/lending.yaml diff --git a/use_cases/marketplace.yaml b/src/assets/use_cases/marketplace.yaml similarity index 100% rename from use_cases/marketplace.yaml rename to src/assets/use_cases/marketplace.yaml diff --git a/use_cases/membership.yaml b/src/assets/use_cases/membership.yaml similarity index 100% rename from use_cases/membership.yaml rename to src/assets/use_cases/membership.yaml diff --git a/use_cases/savings.yaml b/src/assets/use_cases/savings.yaml similarity index 100% rename from use_cases/savings.yaml rename to src/assets/use_cases/savings.yaml diff --git a/use_cases/wallet.yaml b/src/assets/use_cases/wallet.yaml similarity index 100% rename from use_cases/wallet.yaml rename to src/assets/use_cases/wallet.yaml diff --git a/src/index.js b/src/index.js new file mode 100644 index 0000000..f8f0102 --- /dev/null +++ b/src/index.js @@ -0,0 +1,27 @@ +import express from 'express' +import fs from 'fs' +import YAML from 'yaml' +import path from 'path' +import open from 'open'; + +const app = express() +const port = 3031 + +const __dirname = new URL('.', import.meta.url).pathname; +const file = fs.readFileSync(path.join(__dirname, '../temp/paystack.yaml'), 'utf8') +const oas = YAML.parse(file) + +app.use(express.static(path.join(__dirname, '/views'))); + +app.get('/health', (_, res) => { + res.send('Server running fine...') +}) + +app.get('/spec', (_, res) => { + res.json(oas) +}) + +app.listen(port, () => { + console.log(`OAS spec is listening on port ${port}`) + open(`http://localhost:${port}`); +}) diff --git a/src/views/index.html b/src/views/index.html new file mode 100644 index 0000000..6411b7b --- /dev/null +++ b/src/views/index.html @@ -0,0 +1,30 @@ + + + + + + + Paystack OAS + + + +
+ + + + + + + + + \ No newline at end of file diff --git a/temp/paystack.yaml b/temp/paystack.yaml new file mode 100644 index 0000000..37f2399 --- /dev/null +++ b/temp/paystack.yaml @@ -0,0 +1,16789 @@ +openapi: 3.0.1 +info: + title: Paystack + description: The OpenAPI specification of the Paystack API that merchants and developers can harness to build financial solutions in Africa. + version: 1.0.0 + contact: + email: techsupport@paystack.com +servers: + - url: https://api.paystack.co + description: Base API endpoint +security: + - bearerAuth: [] +tags: + - name: Transaction + description: | + A collection of endpoints for managing payments + x-product-name: Transactions + - name: Split + description: | + A collection of endpoints for spliting a transaction and managing the splits + x-product-name: Transaction Splits + - name: Terminal + description: | + A collection of endpoints for building delightful in-person payment experiences + x-product-name: Terminal + - name: Customer + description: | + A collection of endpoints for creating and managing customers on an integration + x-product-name: Transaction Splits + - name: Dedicated Virtual Account + description: | + A collection of endpoints for creating and managing payment accounts for customers + x-product-name: Dedicated Virtual Accounts + - name: Apple Pay + description: | + A collection of endpoints for managing application's top-level domain or subdomain accepting payment via Apple Pay + x-product-name: Apple Pay + - name: Subaccount + description: | + A collection of endpoints for creating and managing accounts for sharing a + transaction with + x-product-name: Subaccounts + - name: Plan + description: | + A collection of endpoints for creating and managing recurring payment + configuration + x-product-name: Plans + - name: Subscription + description: | + A collection of endpoints for creating and managing recurring payments + x-product-name: Subscriptions + - name: Product + description: | + A collection of endpoints for creating and managing inventories + x-product-name: Products + - name: Storefront + description: | + A collection of endpoints for creating and managing storefronts + x-product-name: Storefronts + - name: Order + description: | + A collection of endpoints for creating and managing orders + x-product-name: Orders + - name: Page + description: | + A collection of endpoints for creating and managing links for the + collection of payment for products + x-product-name: Payment Pages + - name: Payment Request + description: | + A collection of endpoints for managing invoices for the payment of goods + and services + x-product-name: Payment Requests + - name: Settlement + description: | + A collection of endpoints for gaining insights into payouts + x-product-name: Settlements + - name: Transfer Recipient + description: | + A collection of endpoints for creating and managing beneficiaries that you send money to + x-product-name: Transfer Recipients + - name: Transfer + description: | + A collection of endpoints for automating sending money to beneficiaries + x-product-name: Transfers + - name: Balance + description: | + A collection of endpoints gaining insights into the amount on an integration + x-product-name: Balance + - name: Charge + description: | + A collection of endpoints for configuring and managing the payment channels when initiating a payment + x-product-name: Charges + - name: Bulk Charge + description: | + A collection of endpoints for creating and managing multiple recurring payments + x-product-name: Bulk Charges + - name: Integration + description: | + A collection of endpoints for managing some settings on an integration + x-product-name: Integration + - name: Refund + description: | + A collection of endpoints for creating and managing transaction reimbursement + x-product-name: Refunds + - name: Dispute + description: | + A collection of endpoints for managing transactions complaint made by customers + x-product-name: Disputes + - name: Bank + description: | + A collection of endpoints for managing bank details + x-product-name: Banks + - name: Miscellaneous + description: | + A collection of endpoints that provides utility functions + x-product-name: Miscellaneous +paths: + /transaction/initialize: + post: + tags: + - Transaction + summary: Initialize Transaction + operationId: transaction_initialize + description: Create a new transaction + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionInitialize' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransactionInitialize' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionInitializeResponse' + '400': + $ref: '#/components/responses/TransactionInitializeBadRequestResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transaction/verify/{reference}: + get: + tags: + - Transaction + summary: Verify Transaction + operationId: transaction_verify + description: Verify a previously initiated transaction using it's reference + parameters: + - name: reference + in: path + description: The transaction reference to verify + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/VerifyResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transaction: + get: + tags: + - Transaction + summary: List Transactions + operationId: transaction_list + description: List transactions that has occurred on your integration + parameters: + - in: query + name: use_cursor + description: A flag to indicate if cursor based pagination should be used + schema: + type: boolean + - in: query + name: next + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data + schema: + type: string + - in: query + name: previous + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data + schema: + type: string + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + - in: query + name: status + description: Filter transaction by status + schema: + type: string + enum: + - success + - failed + - abandoned + - reversed + - in: query + name: source + description: The origin of the payment + schema: + type: string + enum: + - merchantApi + - checkout + - pos + - virtualTerminal + - in: query + name: terminal_id + description: Filter transactions by a terminal ID + schema: + type: string + - in: query + name: virtual_account_number + description: Filter transactions by a virtual account number + schema: + type: string + - in: query + name: customer_code + description: Filter transactions by a customer code + schema: + type: string + - in: query + name: amount + description: Filter transactions by a specific amount + schema: + type: integer + format: int64 + - in: query + name: settlement + description: The settlement ID to filter for settled transactions + schema: + type: integer + format: int64 + - in: query + name: channel + description: The payment method the customer used to complete the transaction + schema: + type: string + enum: + - card + - pos + - bank + - dedicated_nuban + - ussd + - bank_transfer + - in: query + name: subaccount_code + description: Filter transaction by subaccount code + schema: + type: string + - in: query + name: split_code + description: Filter transaction by split code + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transaction/{id}: + get: + tags: + - Transaction + summary: Fetch Transaction + operationId: transaction_fetch + description: Fetch a transaction to get its details + parameters: + - name: id + in: path + description: The ID of the transaction to fetch + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transaction/timeline/{id}: + get: + tags: + - Transaction + summary: Fetch Transaction Timeline + operationId: transaction_timeline + description: Get the details about the lifecycle of a transaction from initiation to completion + parameters: + - name: id + in: path + required: true + schema: + type: integer + format: int64 + example: 3936799950 + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionTimelineResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transaction/totals: + get: + tags: + - Transaction + summary: Transaction Totals + operationId: transaction_totals + description: Get the total amount of all transactions + parameters: + - in: query + description: The start date + name: from + schema: + type: string + format: date-time + example: '2024-06-01T00:00:01Z' + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + example: '2024-06-30T13:36:54Z' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionTotalsResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transaction/export: + get: + tags: + - Transaction + summary: Export Transactions + operationId: transaction_export + x-operationId: transaction_exportTransaction + parameters: + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + example: '2024-06-01T00:00:01Z' + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + example: '2024-06-30T13:36:54Z' + - in: query + name: status + description: Filter by the status of the transaction + schema: + type: string + enum: + - success + - failed + - abandoned + - reversed + - all + example: success + - in: query + name: customer + description: Filter by customer ID + schema: + type: number + example: 123172416 + - in: query + name: subaccount_code + description: Filter by subaccount code + schema: + type: string + example: ACCT_dskvlw3y3dMukmt + - in: query + name: settlement + description: Filter by the settlement ID + schema: + type: integer + format: int64 + example: 5687910 + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionExportResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transaction/charge_authorization: + post: + tags: + - Transaction + summary: Charge Authorization + operationId: transaction_chargeAuthorization + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionChargeAuthorization' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransactionChargeAuthorization' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeAuthorizationResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transaction/partial_debit: + post: + tags: + - Transaction + summary: Partial Debit + operationId: transaction_partialDebit + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionPartialDebit' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransactionPartialDebit' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionPartialDebitResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transaction/{id}/event: + get: + tags: + - Transaction + summary: Get Transaction Event + operationId: transaction_event + parameters: + - name: id + in: path + required: true + schema: + type: integer + format: int64 + example: 3936799950 + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transaction/{id}/session: + get: + tags: + - Transaction + summary: Get Transaction Session + operationId: transaction_session + parameters: + - name: id + in: path + required: true + schema: + type: integer + format: int64 + example: 3936799950 + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /split: + post: + tags: + - Split + summary: Create Split + operationId: split_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SplitCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SplitCreate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SplitCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Split + summary: List Splits + operationId: split_list + parameters: + - name: name + description: The name of the split + in: query + schema: + type: string + - name: active + description: The status of the split + in: query + schema: + type: boolean + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + - in: query + name: subaccount_code + description: Filter by subaccount code + schema: + type: string + example: ACCT_dskvlw3y3dMukmt + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SplitListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /split/{id}: + get: + tags: + - Split + summary: Fetch Split + operationId: split_fetch + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SplitFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Split + summary: Update Split + operationId: split_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SplitUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SplitUpdate' + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SplitUpdateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /split/{id}/subaccount/add: + post: + tags: + - Split + summary: Add Subaccount to Split + operationId: split_addSubaccount + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SplitSubaccounts' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SplitSubaccounts' + parameters: + - name: id + in: path + required: true + schema: + type: string + example: application/json + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SplitAddUpdateSubaccountResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /split/{id}/subaccount/remove: + post: + tags: + - Split + summary: Remove Subaccount from split + operationId: split_removeSubaccount + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SplitSubaccounts' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SplitSubaccounts' + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SplitRemoveSubaccountResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /terminal/{id}/event: + post: + tags: + - Terminal + summary: Send Event + description: Send an event from your application to the Paystack Terminal + operationId: terminal_sendEvent + parameters: + - name: id + in: path + required: true + schema: + type: string + example: Z0R4orOU + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalSendEvent' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TerminalSendEvent' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /terminal/{terminal_id}/event/{event_id}: + get: + tags: + - Terminal + summary: Fetch Event Status + description: Check the status of an event sent to the Terminal + operationId: terminal_fetchEventStatus + parameters: + - name: terminal_id + in: path + required: true + schema: + type: string + example: Z0R4orOU + - name: event_id + in: path + required: true + schema: + type: string + example: 616d721e8c5cd40a0cdd54a6 + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /terminal/{terminal_id}/presence: + get: + tags: + - Terminal + summary: Fetch Terminal Status + description: Check the availiability of a Terminal before sending an event to it + operationId: terminal_fetchTerminalStatus + parameters: + - name: terminal_id + in: path + required: true + schema: + type: string + example: Z0R4orOU + responses: + '200': + $ref: '#/components/responses/TerminalGetStatusSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /terminal: + get: + tags: + - Terminal + summary: List Terminals + operationId: terminal_list + description: List the Terminals available on your integration + parameters: + - name: next + in: query + schema: + type: string + - name: previous + in: query + schema: + type: string + - name: per_page + in: query + schema: + type: string + responses: + '200': + $ref: '#/components/responses/TerminalListsSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /terminal/{terminal_id}: + parameters: + - name: terminal_id + in: path + required: true + schema: + type: string + get: + tags: + - Terminal + summary: Fetch Terminal + description: Get the details of a Terminal + operationId: terminal_fetch + responses: + '200': + $ref: '#/components/responses/TerminalGetSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Terminal + summary: Update Terminal + operationId: terminal_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalUpate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TerminalUpate' + responses: + '200': + $ref: '#/components/responses/TerminalUpdateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /terminal/commission_device: + post: + tags: + - Terminal + summary: Commission Terminal + description: Activate your debug device by linking it to your integration + operationId: terminal_commission + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalActivationToggle' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TerminalActivationToggle' + responses: + '200': + $ref: '#/components/responses/TerminalCommissionDeviceSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /terminal/decommission_device: + post: + tags: + - Terminal + summary: Decommission Terminal + description: Unlink your debug device from your integration + operationId: terminal_decommission + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalActivationToggle' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TerminalActivationToggle' + responses: + '200': + $ref: '#/components/responses/TerminalDecommissionDeviceSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /customer: + post: + tags: + - Customer + summary: Create Customer + operationId: customer_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/CustomerCreate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Customer + summary: List Customers + operationId: customer_list + description: List customers on your integration + parameters: + - name: use_cursor + description: A flag to indicate if cursor based pagination should be used + in: query + schema: + type: boolean + - name: next + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data + in: query + schema: + type: string + - name: previous + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data + in: query + schema: + type: string + - name: from + description: The start date + in: query + schema: + type: string + format: date-time + - name: to + description: The end date + in: query + schema: + type: string + format: date-time + - name: perPage + description: The number of records to fetch per request + in: query + schema: + type: string + - name: page + in: query + description: The offset to retrieve data from + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /customer/{code}: + parameters: + - name: code + in: path + required: true + schema: + type: string + get: + tags: + - Customer + summary: Fetch Customer + operationId: customer_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Customer + summary: Update Customer + operationId: customer_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/CustomerUpdate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerUpdateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /customer/set_risk_action: + post: + tags: + - Customer + summary: Set Risk Action + description: Set customer's risk action by whitelisting or blacklisting the customer + operationId: customer_riskAction + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerRiskAction' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/CustomerRiskAction' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerWhitelistBlacklistResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /customer/deactivate_authorization: + post: + tags: + - Customer + summary: Deactivate Authorization + operationId: customer_deactivateAuthorization + description: Deactivate a customer's card + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerDeactivateAuthorization' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/CustomerDeactivateAuthorization' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerDeactivateAuthorizationResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /customer/{code}/identification: + parameters: + - name: code + in: path + required: true + schema: + type: string + post: + tags: + - Customer + summary: Validate Customer + operationId: customer_validate + description: Validate a customer's identity + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerValidate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/CustomerValidate' + responses: + '202': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerValidateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /dedicated_account: + post: + tags: + - Dedicated Virtual Account + summary: Create Dedicated Account + operationId: dedicatedAccount_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountCreate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedNubanCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Dedicated Virtual Account + summary: List Dedicated Accounts + operationId: dedicatedAccount_list + parameters: + - name: account_number + in: query + schema: + type: string + - name: customer + in: query + schema: + type: string + - name: active + in: query + schema: + type: boolean + - name: currency + in: query + schema: + type: string + - name: provider_slug + in: query + schema: + type: string + - name: bank_id + in: query + schema: + type: string + - name: perPage + in: query + schema: + type: string + - name: page + in: query + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedNubanListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dedicated_account/assign: + post: + tags: + - Dedicated Virtual Account + summary: Assign Dedicated Account + operationId: dedicatedAccount_assign + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountAssign' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountAssign' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /dedicated_account/{account_id}: + parameters: + - name: account_id + in: path + required: true + schema: + type: string + get: + tags: + - Dedicated Virtual Account + summary: Fetch Dedicated Account + operationId: dedicatedAccount_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedNubanFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + delete: + tags: + - Dedicated Virtual Account + summary: Deactivate Dedicated Account + operationId: dedicatedAccount_deactivate + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedNubanDeactivateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dedicated_account/requery: + parameters: + - name: account_number + description: Virtual account number to requery + in: query + schema: + type: string + - name: provider_slug + description: The bank's slug in lowercase, without spaces e.g. `wema-bank` + in: query + schema: + type: string + - name: date + description: The day the transfer was made in `YYYY-MM-DD` format + in: query + schema: + type: string + get: + tags: + - Dedicated Virtual Account + summary: Requery Dedicated Account + operationId: dedicatedAccount_requery + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dedicated_account/split: + post: + tags: + - Dedicated Virtual Account + summary: Split Dedicated Account Transaction + operationId: dedicatedAccount_addSplit + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + delete: + tags: + - Dedicated Virtual Account + summary: Remove Split from Dedicated Account + operationId: dedicatedAccount_removeSplit + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dedicated_account/available_providers: + get: + tags: + - Dedicated Virtual Account + summary: Fetch Bank Providers + operationId: dedicatedAccount_availableProviders + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /apple-pay/domain: + post: + tags: + - Apple Pay + summary: Register Domain + description: Register a top-level domain or subdomain for your Apple Pay integration. + operationId: applePay_registerDomain + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ApplePayParam' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ApplePayParam' + responses: + '200': + $ref: '#/components/responses/ApplePayOkResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Apple Pay + summary: List Domains + description: Lists all registered domains on your integration + operationId: applePay_listDomain + parameters: + - name: use_cursor + in: query + schema: + type: boolean + - name: next + in: query + schema: + type: string + - name: previous + in: query + schema: + type: string + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + delete: + tags: + - Apple Pay + summary: Unregister Domain + description: Unregister a top-level domain or subdomain previously used for your Apple Pay integration. + operationId: applePay_unregisterDomain + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ApplePayParam' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ApplePayParam' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /subaccount: + post: + tags: + - Subaccount + summary: Create Subaccount + operationId: subaccount_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubaccountCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SubaccountCreate' + responses: + '201': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SubaccountCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Subaccount + summary: List Subaccounts + operationId: subaccount_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: active + schema: + type: boolean + description: Filter by active or inactive subaccounts + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SubaccountListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /subaccount/{code}: + parameters: + - name: code + in: path + required: true + schema: + type: string + get: + tags: + - Subaccount + summary: Fetch Subaccount + operationId: subaccount_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SubaccountFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Subaccount + summary: Update Subaccount + operationId: subaccount_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubaccountUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SubaccountUpdate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SubaccountUpdateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /plan: + post: + tags: + - Plan + summary: Create Plan + operationId: plan_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PlanCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/PlanCreate' + responses: + '200': + $ref: '#/components/responses/PlanCreateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Plan + summary: List Plans + operationId: plan_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: interval + schema: + type: string + description: Specify interval of the plan + - in: query + name: amount + schema: + type: integer + description: The amount on the plans to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/PlanListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /plan/{code}: + parameters: + - name: code + in: path + required: true + schema: + type: string + get: + tags: + - Plan + summary: Fetch Plan + operationId: plan_fetch + responses: + '200': + $ref: '#/components/responses/PlanFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Plan + summary: Update Plan + operationId: plan_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PlanUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/PlanUpdate' + responses: + '200': + $ref: '#/components/responses/PlanUpdateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /subscription: + post: + tags: + - Subscription + summary: Create Subscription + operationId: subscription_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SubscriptionCreate' + responses: + '200': + $ref: '#/components/responses/SubscriptionCreateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Subscription + summary: List Subscriptions + operationId: subscription_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: plan + schema: + type: string + description: Plan ID + - in: query + name: customer + schema: + type: string + description: Customer ID + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/SubscriptionListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /subscription/{code}: + parameters: + - name: code + in: path + required: true + schema: + type: string + get: + tags: + - Subscription + summary: Fetch Subscription + operationId: subscription_fetch + responses: + '200': + $ref: '#/components/responses/SubscriptionFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /subscription/disable: + post: + tags: + - Subscription + summary: Disable Subscription + operationId: subscription_disable + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionToggle' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SubscriptionToggle' + responses: + '200': + $ref: '#/components/responses/SubscriptionDisableSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /subscription/enable: + post: + tags: + - Subscription + summary: Enable Subscription + operationId: subscription_enable + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionToggle' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/SubscriptionToggle' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /subscription/{code}/manage/link: + get: + tags: + - Subscription + summary: Generate Update Subscription Link + operationId: subscription_manageLink + parameters: + - name: code + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /subscription/{code}/manage/email: + post: + tags: + - Subscription + summary: Send Update Subscription Link + operationId: subscription_manageEmail + parameters: + - name: code + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /product: + post: + tags: + - Product + summary: Create Product + operationId: product_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ProductCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ProductCreate' + responses: + '201': + $ref: '#/components/responses/ProductCreateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Product + summary: List Products + operationId: product_list + parameters: + - name: perPage + in: query + schema: + type: integer + - name: page + in: query + schema: + type: integer + - name: active + in: query + schema: + type: boolean + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/ProductListsSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /product/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + get: + tags: + - Product + summary: Fetch Product + operationId: product_fetch + responses: + '200': + $ref: '#/components/responses/ProductFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Product + summary: Update product + operationId: product_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ProductUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ProductUpdate' + responses: + '200': + $ref: '#/components/responses/ProductUpdateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + delete: + tags: + - Product + summary: Delete Product + operationId: product_delete + responses: + '200': + $ref: '#/components/responses/ProductDeleteSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /storefront: + post: + tags: + - Storefront + summary: Create Storefront + operationId: storefront_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/StorefrontCreate' + responses: + '200': + $ref: '#/components/responses/StorefrontCreateSuccess' + '400': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Storefront + summary: List Storefronts + operationId: storefront_list + parameters: + - name: perPage + in: query + schema: + type: integer + - name: page + in: query + schema: + type: integer + - name: status + in: query + schema: + type: string + enum: + - active + - inactive + responses: + '200': + $ref: '#/components/responses/StorefrontListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /storefront/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + get: + tags: + - Storefront + summary: Fetch Storefront + operationId: storefront_fetch + responses: + '200': + $ref: '#/components/responses/StorefrontFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Storefront + summary: Update Storefront + operationId: storefront_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/StorefrontUpdate' + responses: + '200': + $ref: '#/components/responses/StorefrontUpdateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + delete: + tags: + - Storefront + summary: Delete Storefront + operationId: storefront_delete + responses: + '200': + $ref: '#/components/responses/StorefrontDeleteSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /storefront/verify/{slug}: + parameters: + - name: slug + in: path + required: true + schema: + type: string + get: + tags: + - Storefront + summary: Verify Storefront Slug + operationId: storefront_verifySlug + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /storefront/{id}/order: + get: + tags: + - Storefront + summary: Fetch Storefront Orders + description: Fetch all orders in your Storefront + operationId: storefront_fetchOrders + parameters: + - name: id + in: path + required: true + schema: + type: string + example: Z0R4orOU + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /storefront/{id}/product: + parameters: + - name: id + in: path + required: true + schema: + type: string + post: + tags: + - Storefront + summary: Add Products to Storefront + operationId: storefront_addProducts + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontAddProducts' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/StorefrontAddProducts' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + get: + tags: + - Storefront + summary: List Products in Storefront + operationId: storefront_listProducts + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /storefront/{id}/publish: + parameters: + - name: id + in: path + required: true + schema: + type: string + post: + tags: + - Storefront + summary: Publish Storefront + operationId: storefront_publish + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /storefront/{id}/duplicate: + parameters: + - name: id + in: path + required: true + schema: + type: string + post: + tags: + - Storefront + summary: Duplicate Storefront + operationId: storefront_duplicate + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /order: + post: + tags: + - Order + summary: Create Order + operationId: order_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/OrderCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/OrderCreate' + responses: + '200': + $ref: '#/components/responses/OrderCreateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Order + summary: List Orders + operationId: order_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/OrderListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /order/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + get: + tags: + - Order + summary: Fetch Order + operationId: order_fetch + responses: + '200': + $ref: '#/components/responses/OrderFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /order/product/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + get: + tags: + - Order + summary: Fetch Products Order + operationId: order_fetchProducts + responses: + '200': + $ref: '#/components/responses/OrderFetchProductSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /order/{code}/validate: + parameters: + - name: code + in: path + required: true + schema: + type: string + get: + tags: + - Order + summary: Validate pay for me order + operationId: order_validatePayForMe + responses: + '200': + $ref: '#/components/responses/OrderValidateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /page: + post: + tags: + - Page + summary: Create Page + operationId: page_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PageCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/PageCreate' + responses: + '200': + $ref: '#/components/responses/PageCreateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Page + summary: List Pages + operationId: page_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/PageListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /page/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + get: + tags: + - Page + summary: Fetch Page + operationId: page_fetch + responses: + '200': + $ref: '#/components/responses/PageFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Page + summary: Update Page + operationId: page_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PageUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/PageUpdate' + responses: + '200': + $ref: '#/components/responses/PageUpdateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /page/check_slug_availability/{slug}: + parameters: + - name: slug + in: path + required: true + schema: + type: string + get: + tags: + - Page + summary: Check Slug Availability + operationId: page_checkSlugAvailability + responses: + '200': + $ref: '#/components/responses/PageCheckSlugAvailabilitySuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /page/{id}/product: + parameters: + - name: id + in: path + required: true + schema: + type: string + post: + tags: + - Page + summary: Add Products + operationId: page_addProducts + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PageProduct' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/PageProduct' + responses: + '200': + $ref: '#/components/responses/PageAddProductsSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /paymentrequest: + post: + tags: + - Payment Request + summary: Create Payment Request + operationId: paymentRequest_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/PaymentRequestCreate' + responses: + '200': + $ref: '#/components/responses/PaymentRequestCreateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Payment Request + summary: List Payment Request + operationId: paymentRequest_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: customer + schema: + type: string + description: Customer ID + - in: query + name: status + schema: + type: string + description: Invoice status to filter + - in: query + name: currency + schema: + type: string + description: If your integration supports more than one currency, choose the one to filter + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/PaymentRequestListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /paymentrequest/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + get: + tags: + - Payment Request + summary: Fetch Payment Request + operationId: paymentRequest_fetch + responses: + '200': + $ref: '#/components/responses/PaymentRequestListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Payment Request + summary: Update Payment Request + operationId: paymentRequest_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/PaymentRequestUpdate' + responses: + '200': + $ref: '#/components/responses/PaymentRequestUpdateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /paymentrequest/verify/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + get: + tags: + - Payment Request + summary: Verify Payment Request + operationId: paymentRequest_verify + responses: + '200': + $ref: '#/components/responses/PaymentRequestVerifySuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /paymentrequest/notify/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + post: + tags: + - Payment Request + summary: Send Notification + operationId: paymentRequest_notify + responses: + '200': + $ref: '#/components/responses/PaymentRequestSendNotificationSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /paymentrequest/totals: + get: + tags: + - Payment Request + summary: Payment Request Total + operationId: paymentRequest_totals + responses: + '200': + $ref: '#/components/responses/PaymentRequestTotalSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /paymentrequest/finalize/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + post: + tags: + - Payment Request + summary: Finalize Payment Request + operationId: paymentRequest_finalize + responses: + '200': + $ref: '#/components/responses/PaymentRequestFinalizeSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /paymentrequest/archive/{id}: + parameters: + - name: id + in: path + required: true + schema: + type: string + post: + tags: + - Payment Request + summary: Archive Payment Request + operationId: paymentRequest_archive + responses: + '200': + $ref: '#/components/responses/PaymentRequestArchiveSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /settlement: + get: + tags: + - Settlement + summary: Fetch Settlements + operationId: settlements_fetch + parameters: + - name: perPage + in: query + schema: + type: integer + example: 50 + - name: page + in: query + schema: + type: integer + example: 2 + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /settlement/{id}/transaction: + get: + tags: + - Settlement + summary: Settlement Transactions + operationId: settlements_transaction + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transferrecipient: + post: + tags: + - Transfer Recipient + summary: Create Transfer Recipient + operationId: transferrecipient_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferRecipientCreate' + responses: + '201': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Transfer Recipient + summary: List Transfer Recipients + operationId: transferrecipient_list + parameters: + - in: query + name: use_cursor + description: A flag to indicate if cursor based pagination should be used + schema: + type: boolean + - in: query + name: next + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data + schema: + type: string + - in: query + name: previous + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data + schema: + type: string + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transferrecipient/bulk: + post: + tags: + - Transfer Recipient + summary: Bulk Create Transfer Recipient + operationId: transferrecipient_bulk + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientBulk' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferRecipientBulk' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientBulkCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transferrecipient/{code}: + parameters: + - name: code + description: Transfer recipient code + in: path + required: true + schema: + type: string + get: + tags: + - Transfer Recipient + summary: Fetch Transfer recipient + operationId: transferrecipient_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Transfer Recipient + summary: Update Transfer recipient + operationId: transferrecipient_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferRecipientUpdate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientUpdateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + delete: + tags: + - Transfer Recipient + summary: Delete Transfer Recipient + operationId: transferrecipient_delete + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferRecipientDeleteResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transfer: + post: + tags: + - Transfer + summary: Initiate Transfer + operationId: transfer_initiate + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferInitiate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferInitiate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Transfer + summary: List Transfers + operationId: transfer_list + parameters: + - in: query + name: use_cursor + description: A flag to indicate if cursor based pagination should be used + schema: + type: boolean + - in: query + name: next + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data + schema: + type: string + - in: query + name: previous + description: | + An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data + schema: + type: string + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: from + description: The start date + schema: + type: string + format: date-time + - in: query + name: to + description: The end date + schema: + type: string + format: date-time + - in: query + name: recipient + description: Filter transfer by the recipient code + schema: + type: string + - in: query + name: status + description: Filter transfer by status + schema: + type: string + default: pending + enum: + - pending + - success + - failed + - otp + - abandoned + - reversed + - blocked + - rejected + - received + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transfer/finalize_transfer: + post: + tags: + - Transfer + summary: Finalize Transfer + operationId: transfer_finalize + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferFinalize' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferFinalize' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transfer/bulk: + post: + tags: + - Transfer + summary: Initiate Bulk Transfer + operationId: transfer_bulk + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferBulk' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferBulk' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferBulkResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transfer/{code}: + parameters: + - name: code + description: Transfer code + in: path + required: true + schema: + type: string + get: + tags: + - Transfer + summary: Fetch Transfer + operationId: transfer_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transfer/verify/{reference}: + get: + tags: + - Transfer + summary: Verify Transfer + operationId: transfer_verify + parameters: + - name: reference + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferVerifyResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transfer/export: + get: + tags: + - Transfer + summary: Export Transfers + operationId: transfer_exportTransfer + parameters: + - in: query + name: recipient + description: Export transfer by the recipient code + schema: + type: string + - in: query + name: status + description: Export transfer by status + schema: + type: string + default: pending + enum: + - pending + - success + - failed + - otp + - abandoned + - reversed + - blocked + - rejected + - received + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /transfer/resend_otp: + post: + tags: + - Transfer + summary: Resend OTP for Transfer + operationId: transfer_resendOtp + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferResendOTP' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferResendOTP' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferResendsOtpResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transfer/disable_otp: + post: + tags: + - Transfer + summary: Disable OTP for Transfers + operationId: transfer_disableOtp + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferDisablesOtpResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transfer/disable_otp_finalize: + post: + tags: + - Transfer + summary: Finalize Disabling OTP for Transfers + operationId: transfer_disableOtpFinalize + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferFinalizeDisableOTP' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/TransferFinalizeDisableOTP' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferFinalizeDisablesOtpResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /transfer/enable_otp: + post: + tags: + - Transfer + summary: Enable OTP requirement for Transfers + operationId: transfer_enableOtp + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TransferEnablesOtpResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /balance: + get: + tags: + - Balance + summary: Fetch Balance + operationId: balance_fetch + description: You can only transfer from what you have + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BalanceCheckResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /balance/ledger: + get: + tags: + - Balance + summary: Balance Ledger + operationId: balance_ledger + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BalanceFetchLedgerResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /charge: + post: + tags: + - Charge + summary: Create Charge + operationId: charge_create + requestBody: + content: + application/json: + schema: + allOf: + - $ref: '#/components/schemas/ChargeCreate' + - type: object + properties: + bank: + $ref: '#/components/schemas/Bank' + - type: object + properties: + mobile_money: + $ref: '#/components/schemas/MobileMoney' + - type: object + properties: + ussd: + $ref: '#/components/schemas/USSD' + - type: object + properties: + eft: + $ref: '#/components/schemas/EFT' + application/x-www-form-urlencoded: + schema: + allOf: + - $ref: '#/components/schemas/ChargeCreate' + - type: object + properties: + bank: + $ref: '#/components/schemas/Bank' + - type: object + properties: + mobile_money: + $ref: '#/components/schemas/MobileMoney' + - type: object + properties: + ussd: + $ref: '#/components/schemas/USSD' + - type: object + properties: + eft: + $ref: '#/components/schemas/EFT' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeCreateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /charge/submit_pin: + post: + tags: + - Charge + summary: Submit PIN + operationId: charge_submitPin + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitPin' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ChargeSubmitPin' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitPinResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /charge/submit_otp: + post: + tags: + - Charge + summary: Submit OTP + operationId: charge_submitOtp + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitOTP' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ChargeSubmitOTP' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitOtpResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /charge/submit_phone: + post: + tags: + - Charge + summary: Submit Phone + operationId: charge_submitPhone + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitPhone' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ChargeSubmitPhone' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitPhoneResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /charge/submit_birthday: + post: + tags: + - Charge + summary: Submit Birthday + operationId: charge_submitBirthday + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitBirthday' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ChargeSubmitBirthday' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitBirthdayResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /charge/submit_address: + post: + tags: + - Charge + summary: Submit Address + operationId: charge_submitAddress + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeSubmitAddress' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/ChargeSubmitAddress' + responses: + '200': + $ref: '#/components/responses/Ok' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /charge/{reference}: + get: + tags: + - Charge + summary: Check pending charge + operationId: charge_check + parameters: + - name: reference + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargeCheckPendingResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /bulkcharge: + post: + tags: + - Bulk Charge + summary: Initiate Bulk Charge + operationId: bulkCharge_initiate + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/BulkChargeInitiate' + application/x-www-form-urlencoded: + schema: + type: array + items: + properties: + charges: + type: object + items: + $ref: '#/components/schemas/BulkChargeInitiate' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BulkChargeInitiateResponse' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Bulk Charge + summary: List Bulk Charge Batches + operationId: bulkCharge_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: status + schema: + type: string + enum: + - active + - paused + - complete + description: Filter by the status of the charges + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BulkChargeListResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /bulkcharge/{code}: + parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string + get: + tags: + - Bulk Charge + summary: Fetch Bulk Charge Batch + operationId: bulkCharge_fetch + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BulkChargeFetchResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /bulkcharge/{code}/charges: + get: + tags: + - Bulk Charge + summary: List Charges in a Batch + operationId: bulkCharge_charges + parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: status + schema: + type: string + enum: + - success + - failed + - pending + - error + - inactive_authorization + description: Filter by the status of the charges + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BulkChargeFetchBulkBatchChargesResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /bulkcharge/pause/{code}: + get: + tags: + - Bulk Charge + summary: Pause Bulk Charge Batch + operationId: bulkCharge_pause + parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BulkChargePauseResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /bulkcharge/resume/{code}: + get: + tags: + - Bulk Charge + summary: Resume Bulk Charge Batch + operationId: bulkCharge_resume + parameters: + - name: code + description: Batch code + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/BulkChargeResumeResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /integration/payment_session_timeout: + get: + tags: + - Integration + summary: Fetch Payment Session Timeout + operationId: integration_fetchPaymentSessionTimeout + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ControlPanelFetchPaymentSessionTimeoutResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Integration + summary: Update Payment Session Timeout + operationId: integration_updatePaymentSessionTimeout + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentSession' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ControlPanelUpdatePaymentSessionTimeoutResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /refund: + post: + tags: + - Refund + summary: Create Refund + operationId: refund_create + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RefundCreate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/RefundCreate' + responses: + '200': + $ref: '#/components/responses/RefundCreateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + get: + tags: + - Refund + summary: List Refunds + operationId: refund_list + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/RefundListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /refund/{id}: + get: + tags: + - Refund + summary: Fetch Refund + operationId: refund_fetch + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/RefundFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dispute: + get: + tags: + - Dispute + summary: List Disputes + operationId: dispute_list + parameters: + - in: query + name: perPage + description: Number of records to fetch per page + schema: + type: integer + - in: query + name: page + description: The section to retrieve + schema: + type: integer + - in: query + name: status + description: Dispute Status. Acceptable values are awaiting-merchant-feedback, awaiting-bank-feedback, pending, resolved + schema: + type: string + - in: query + name: transaction + description: Transaction ID + schema: + type: string + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/DisputeListSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dispute/{id}: + parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string + get: + tags: + - Dispute + summary: Fetch Dispute + operationId: dispute_fetch + responses: + '200': + $ref: '#/components/responses/DisputeFetchSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + put: + tags: + - Dispute + summary: Update Dispute + operationId: dispute_update + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeUpdate' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/DisputeUpdate' + responses: + '200': + $ref: '#/components/responses/DisputeUpdateSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dispute/{id}/upload_url: + get: + tags: + - Dispute + summary: Get Upload URL + operationId: dispute_uploadUrl + parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/DisputeUploadURLSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dispute/export: + get: + tags: + - Dispute + summary: Export Disputes + operationId: dispute_download + parameters: + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The section to retrieve + - in: query + name: status + schema: + type: string + - in: query + name: from + schema: + type: string + format: date-time + description: The start date + - in: query + name: to + schema: + type: string + format: date-time + description: The end date + responses: + '200': + $ref: '#/components/responses/DisputeExportSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dispute/transaction/{id}: + get: + tags: + - Dispute + summary: List Transaction Disputes + operationId: dispute_transaction + parameters: + - name: id + description: Transaction ID + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/DisputeListTransactionSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dispute/{id}/resolve: + put: + tags: + - Dispute + summary: Resolve a Dispute + operationId: dispute_resolve + parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeResolve' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/DisputeResolve' + responses: + '200': + $ref: '#/components/responses/DisputeResolveSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /dispute/{id}/evidence: + post: + tags: + - Dispute + summary: Add Evidence + operationId: dispute_evidence + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeEvidence' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/DisputeEvidence' + parameters: + - name: id + description: Dispute ID + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/DisputeAddEvidenceSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /bank: + get: + tags: + - Bank + summary: List Banks + operationId: bank_list + parameters: + - in: query + name: country + schema: + type: string + - in: query + name: pay_with_bank_transfer + schema: + type: boolean + - in: query + name: use_cursor + schema: + type: boolean + - in: query + name: perPage + schema: + type: integer + - in: query + name: next + schema: + type: string + - in: query + name: previous + schema: + type: string + - in: query + name: gateway + schema: + type: string + responses: + '200': + $ref: '#/components/responses/MiscellaneousListBanksSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /bank/resolve: + get: + tags: + - Bank + summary: Resolve Account Number + operationId: bank_resolveAccountNumber + parameters: + - name: account_number + in: query + schema: + type: integer + example: 22728151 + - name: bank_code + in: query + schema: + type: integer + example: 63 + responses: + '200': + $ref: '#/components/responses/VerificationResolveAccountNumberSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /bank/validate: + post: + tags: + - Bank + summary: Validate Bank Account + operationId: bank_validateAccountNumber + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/BankValidateRequest' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/BankValidateRequest' + responses: + '200': + $ref: '#/components/responses/VerificationValidateAccountSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /decision/bin/{bin}: + get: + tags: + - Miscellaneous + summary: Resolve Card BIN + operationId: miscellaneous_resolveCardBin + parameters: + - name: bin + in: path + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/VerificationResolveCardBINSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /country: + get: + tags: + - Miscellaneous + summary: List Countries + operationId: miscellaneous_listCountries + responses: + '200': + $ref: '#/components/responses/MiscellaneousListCountriesSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /address_verification/states: + get: + tags: + - Miscellaneous + summary: List States (AVS) + operationId: miscellaneous_avs + parameters: + - in: query + name: type + schema: + type: string + - in: query + name: country + schema: + type: string + - in: query + name: currency + schema: + type: string + responses: + '200': + $ref: '#/components/responses/MiscellaneousListStatesSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error +components: + securitySchemes: + bearerAuth: + type: http + scheme: bearer + description: Secret key in the format sk_domain_xxxxxx + schemas: + Currency: + description: List of all support currencies + type: string + enum: + - GHS + - KES + - NGN + - ZAR + - USD + example: GHS + SplitSubaccounts: + type: object + properties: + subaccount: + description: Subaccount code of the customer or partner + type: string + share: + description: The percentage or flat quota of the customer or partner + type: string + SplitCreate: + type: object + description: | + Split configuration for transactions + properties: + name: + description: Name of the transaction split + type: string + type: + description: The type of transaction split you want to create. + type: string + enum: + - percentage + - flat + subaccounts: + description: A list of object containing subaccount code and number of shares + type: array + items: + $ref: '#/components/schemas/SplitSubaccounts' + currency: + description: The transaction currency + type: string + enum: + - NGN + - GHS + - ZAR + - USD + bearer_type: + description: This allows you specify how the transaction charge should be processed + type: string + enum: + - subaccount + - account + - all-proportional + - all + bearer_subaccount: + description: This is the subaccount code of the customer or partner that would bear the transaction charge if you specified subaccount as the bearer type + type: string + required: + - name + - type + - subaccounts + - currency + TransactionInitialize: + description: Initialize a transaction + type: object + required: + - email + - amount + properties: + email: + description: Customer's email address + type: string + amount: + description: | + Amount should be in smallest denomination of the currency. For example if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: integer + currency: + $ref: '#/components/schemas/Currency' + reference: + description: Unique transaction reference. Only -, ., = and alphanumeric characters allowed. + type: string + channels: + description: An array of payment channels to control what channels you want to make available to the user to make a payment with + type: array + items: + type: string + enum: + - card + - bank + - ussd + - qr + - eft + - mobile_money + - bank_transfer + callback_url: + description: | + Fully qualified url, e.g. https://example.com/ to redirect your customers to after a successful payment. Use this to override the callback url provided on the dashboard for this transaction + type: string + plan: + description: | + If transaction is to create a subscription to a predefined plan, provide plan code here. + This would invalidate the value provided in amount + type: string + invoice_limit: + description: Number of times to charge customer during subscription to plan + type: integer + split_code: + description: The split code of the transaction split + type: string + split: + $ref: '#/components/schemas/SplitCreate' + subaccount: + description: The code for the subaccount that owns the payment + type: string + transaction_charge: + description: | + A flat fee to charge the subaccount for a transaction. + This overrides the split percentage set when the subaccount was created + type: string + bearer: + description: The bearer of the transaction charge + type: string + enum: + - account + - subaccount + label: + description: Used to replace the email address shown on the Checkout + type: string + metadata: + description: Stringified JSON object of custom data + type: string + example: + email: test@demo.com + amount: 10000 + TransactionInitializeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + authorization_url: + type: string + access_code: + type: string + reference: + type: string + required: + - authorization_url + - access_code + - reference + required: + - status + - message + - data + ErrorMeta: + type: object + description: Extra details to help with a resolution of the error + properties: + nextStep: + type: string + description: A summarised solution for the error + TransactionInitializeBadRequestModel: + type: object + description: | + Error response returned when a transaction is initialized with incorrect parameters + properties: + status: + type: boolean + description: An indicator for the state of the request + message: + type: string + description: A short description of the error + meta: + $ref: '#/components/schemas/ErrorMeta' + type: + type: string + description: A tag to indicate the type of the error + enum: + - validation_error + - processor_error + - api_error + code: + type: string + description: The error code + errorCodeMappingNotFound: + type: boolean + description: An indicator for error mapping for the request + example: + status: false + message: Duplicate Transaction Reference + meta: + nextStep: Try and create the Transaction or Charge with a new reference + type: validation_error + code: duplicate_reference + errorCodeMappingNotFound: false + Error: + type: object + properties: + status: + type: boolean + description: An indicator for the state of the request + message: + type: string + description: A short description of the error + meta: + $ref: '#/components/schemas/ErrorMeta' + type: + type: string + description: A tag to indicate the type of the error + code: + type: string + description: The error code + enum: + - validation_error + - processor_error + - api_error + errorCodeMappingNotFound: + type: boolean + description: An indicator for error mapping for the request + VerifyResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + anyOf: + - type: string + - type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + additionalProperties: false + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + nullable: true + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + oneOf: + - allOf: + - minProperties: 0 + - {} + - allOf: + - not: + minProperties: 0 + - required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + additionalProperties: false + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount + required: + - status + - message + - data + TransactionListResponseArray: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + nullable: true + metadata: + type: object + nullable: true + log: + nullable: true + fees: + type: integer + nullable: true + fees_split: + type: integer + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + customer_code: + type: string + risk_action: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - customer_code + - risk_action + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + plan: + type: object + split: + type: object + subaccount: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + source: + type: object + properties: + source: + type: string + type: + type: string + identifier: + nullable: true + entry_point: + type: string + required: + - source + - type + - identifier + - entry_point + nullable: true + connect: + type: object + nullable: true + pos_transaction_data: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - customer + - authorization + - plan + - split + - subaccount + - order_id + - paidAt + - createdAt + - requested_amount + - source + - connect + - pos_transaction_data + TransactionListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/TransactionListResponseArray' + meta: + type: object + properties: + total: + type: integer + total_volume: + type: number + skipped: + type: integer + perPage: + anyOf: + - type: string + - type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - total_volume + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + MetadataCustomFieldsArray: + type: object + properties: + value: + type: string + display_name: + type: string + variable_name: + type: string + required: + - value + - display_name + - variable_name + TransactionFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + helpdesk_link: + nullable: true + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + type: object + properties: + type: + type: string + source: + type: string + identifier: + nullable: true + required: + - type + - source + - identifier + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - helpdesk_link + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + required: + - status + - message + - data + TransactionTimelineResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + required: + - status + - message + - data + TransactionTotalVolumeByCurrencyArray: + type: object + properties: + currency: + type: string + amount: + type: integer + required: + - currency + - amount + TransactionPendingTransfersByCurrencyArray: + type: object + properties: + currency: + type: string + amount: + type: integer + required: + - currency + - amount + TransactionTotalsResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + total_transactions: + type: integer + total_volume: + type: integer + total_volume_by_currency: + type: array + items: + $ref: '#/components/schemas/TransactionTotalVolumeByCurrencyArray' + pending_transfers: + type: integer + pending_transfers_by_currency: + type: array + items: + $ref: '#/components/schemas/TransactionPendingTransfersByCurrencyArray' + required: + - total_transactions + - total_volume + - total_volume_by_currency + - pending_transfers + - pending_transfers_by_currency + required: + - status + - message + - data + TransactionExportResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + path: + type: string + expiresAt: + type: string + required: + - path + - expiresAt + required: + - status + - message + - data + TransactionChargeAuthorization: + type: object + required: + - email + - amount + - authorization_code + properties: + email: + description: Customer's email address + type: string + amount: + description: Amount in the lower denomination of your currency + type: integer + authorization_code: + description: Valid authorization code to charge + type: string + reference: + description: Unique transaction reference. Only -, ., = and alphanumeric characters allowed. + type: string + currency: + $ref: '#/components/schemas/Currency' + split_code: + description: The split code of the transaction split + type: string + subaccount: + description: The code for the subaccount that owns the payment + type: string + transaction_charge: + description: |- + A flat fee to charge the subaccount for a transaction. + This overrides the split percentage set when the subaccount was created + type: string + bearer: + description: The bearer of the transaction charge + type: string + enum: + - account + - subaccount + metadata: + description: Stringified JSON object of custom data + type: string + queue: + description: If you are making a scheduled charge call, it is a good idea to queue them so the processing system does not get overloaded causing transaction processing errors. + type: boolean + example: + email: jb@email.com + amount: 30000 + authorization_code: AUTH_df1l5ehnym + ChargeAuthorizationResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + currency: + type: string + transaction_date: + type: string + status: + type: string + reference: + type: string + domain: + type: string + metadata: + type: string + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + ip_address: + nullable: true + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + properties: + calling_code: + type: string + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + id: + type: integer + required: + - amount + - currency + - transaction_date + - status + - reference + - domain + - metadata + - gateway_response + - message + - channel + - ip_address + - log + - fees + - authorization + - customer + - plan + - id + required: + - status + - message + - data + TransactionPartialDebit: + type: object + required: + - email + - amount + - authorization_code + - currency + properties: + email: + description: Customer's email address + type: string + amount: + description: Specified in the lowest denomination of your currency + type: integer + format: int64 + authorization_code: + description: Valid authorization code to charge + type: string + currency: + $ref: '#/components/schemas/Currency' + at_least: + description: Minimum amount to charge + type: string + reference: + description: Unique transaction reference. Only -, ., = and alphanumeric characters allowed. + type: string + example: + email: tap@email.com + amount: 40510 + authorization_code: AUTH_df1l5ehnym + currency: ZAR + TransactionPartialDebitResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + currency: + type: string + transaction_date: + type: string + status: + type: string + reference: + type: string + domain: + type: string + metadata: + type: string + gateway_response: + type: string + message: + nullable: true + channel: + type: string + ip_address: + nullable: true + log: + nullable: true + fees: + type: integer + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: integer + requested_amount: + type: integer + id: + type: integer + required: + - amount + - currency + - transaction_date + - status + - reference + - domain + - gateway_response + - message + - channel + - ip_address + - log + - fees + - authorization + - customer + - metadata + - plan + - requested_amount + - id + required: + - status + - message + - data + Response: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + SplitSubaccountsArray: + type: object + properties: + subaccount: + type: object + properties: + id: + type: integer + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + settlement_bank: + type: string + currency: + type: string + account_number: + type: string + required: + - id + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - settlement_bank + - currency + - account_number + share: + type: integer + required: + - subaccount + - share + SplitListResponseArray: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: '#/components/schemas/SplitSubaccountsArray' + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts + SplitListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/SplitListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + SplitCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: '#/components/schemas/SplitSubaccountsArray' + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts + required: + - status + - message + - data + SplitFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: '#/components/schemas/SplitSubaccountsArray' + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts + required: + - status + - message + - data + SplitUpdate: + type: object + properties: + name: + description: Name of the transaction split + type: string + active: + description: Toggle status of split. When true, the split is active, else it's inactive + type: boolean + bearer_type: + description: This allows you specify how the transaction charge should be processed + type: string + enum: + - subaccount + - account + - all-proportional + - all + bearer_subaccount: + description: This is the subaccount code of the customer or partner that would bear the transaction charge if you specified subaccount as the bearer type + type: string + SplitUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: '#/components/schemas/SplitSubaccountsArray' + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts + required: + - status + - message + - data + SplitAddUpdateSubaccountResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: '#/components/schemas/SplitSubaccountsArray' + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts + required: + - status + - message + - data + SplitRemoveSubaccountResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TerminalSendEventData: + type: object + description: The parameters needed to perform the specified action + properties: + id: + description: The invoice or transaction ID you want to push to the Terminal + type: integer + format: int64 + reference: + description: The offline_reference from the Payment Request response + type: string + example: + id: 7895939 + reference: '4634337895939' + TerminalSendEvent: + type: object + properties: + type: + description: The type of event to push + type: string + enum: + - invoice + - transaction + action: + description: | + The action the Terminal needs to perform. For the invoice type, the action can either be process or view. + For the transaction type, the action can either be process or print. + type: string + enum: + - process + - view + - print + data: + $ref: '#/components/schemas/TerminalSendEventData' + TerminalGetStatusResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + online: + type: boolean + available: + type: boolean + required: + - online + - available + required: + - status + - message + - data + TerminalListsResponseArray: + type: object + properties: + id: + type: integer + serial_number: + type: string + nullable: true + device_make: + type: string + nullable: true + terminal_id: + type: string + integration: + type: integer + domain: + type: string + name: + type: string + nullable: true + address: + type: string + nullable: true + status: + type: string + required: + - id + - serial_number + - device_make + - terminal_id + - integration + - domain + - name + - address + - status + TerminalListsResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/TerminalListsResponseArray' + meta: + type: object + properties: + next: + type: array + nullable: true + items: {} + previous: + type: array + nullable: true + items: {} + perPage: + type: integer + required: + - next + - previous + - perPage + additionalProperties: false + required: + - status + - message + - data + - meta + TerminalGetResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + serial_number: + type: string + device_make: + type: string + nullable: true + terminal_id: + type: string + integration: + type: integer + domain: + type: string + name: + type: string + nullable: true + address: + type: string + nullable: true + status: + type: string + split_code: + type: string + nullable: true + required: + - id + - serial_number + - device_make + - terminal_id + - integration + - domain + - name + - address + - status + - split_code + required: + - status + - message + - data + TerminalUpate: + type: object + description: Model for updating a Terminal details + properties: + name: + description: The new name for the Terminal + type: string + address: + description: The new address for the Terminal + type: string + example: + name: Oreos + address: Somewhere on earth + TerminalUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TerminalActivationToggle: + type: object + description: Model for activating and deactivating a debug Terminal + required: + - serial_number + properties: + serial_number: + description: Device Serial Number + type: string + example: + serial_number: '1111150412230003899' + TerminalCommissionDeviceResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TerminalDecommissionDeviceResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + CustomerListResponseArray: + type: object + properties: + integration: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - createdAt + - updatedAt + CustomerListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/CustomerListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + anyOf: + - type: string + - type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + CustomerCreate: + type: object + required: + - email + properties: + email: + description: Customer's email address + type: string + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone number + type: string + metadata: + description: Stringified JSON object of custom data + type: string + CustomerCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + email: + type: string + first_name: + type: string + last_name: + type: string + phone: + type: string + integration: + type: integer + domain: + type: string + metadata: + type: object + properties: + calling_code: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - email + - first_name + - last_name + - phone + - integration + - domain + - metadata + - customer_code + - risk_action + - id + - createdAt + - updatedAt + - identified + - identifications + required: + - status + - message + - data + CustomerFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + created_at: + type: string + updated_at: + type: string + total_transactions: + type: integer + total_transaction_value: + type: array + items: {} + dedicated_account: + nullable: true + dedicated_accounts: + type: array + items: {} + nullable: true + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - created_at + - updated_at + - total_transactions + - total_transaction_value + - dedicated_account + - dedicated_accounts + - identified + - identifications + required: + - status + - message + - data + CustomerUpdate: + type: object + properties: + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone number + type: string + metadata: + description: Stringified JSON object of custom data + type: string + CustomerUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - identified + - identifications + required: + - status + - message + - data + CustomerRiskAction: + type: object + required: + - customer + properties: + customer: + description: Customer's code, or email address + type: string + risk_action: + description: | + One of the possible risk actions [ default, allow, deny ]. allow to whitelist. + deny to blacklist. Customers start with a default risk action. + type: string + CustomerWhitelistBlacklistResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - identified + - identifications + required: + - status + - message + - data + CustomerDeactivateAuthorization: + type: object + required: + - authorization_code + properties: + authorization_code: + description: Authorization code to be deactivated + type: string + CustomerDeactivateAuthorizationResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + CustomerValidate: + type: object + required: + - first_name + - last_name + - type + - country + - bvn + - bank_code + - account_number + properties: + first_name: + description: Customer's first name + type: string + middle_name: + description: Customer's middle name + type: string + last_name: + description: Customer's last name + type: string + type: + description: Predefined types of identification. + type: string + value: + description: Customer's identification number. Required if type is bvn + type: string + country: + description: Two-letter country code of identification issuer + type: string + bvn: + description: Customer's Bank Verification Number + type: string + bank_code: + description: You can get the list of bank codes by calling the List Banks endpoint (https://api.paystack.co/bank). + type: string + account_number: + description: Customer's bank account number. + type: string + CustomerValidateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + DedicatedNubanListResponseArray: + type: object + properties: + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + risk_action: + type: string + international_format_phone: + type: string + nullable: true + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + id: + type: integer + account_name: + type: string + account_number: + type: string + created_at: + type: string + updated_at: + type: string + currency: + type: string + split_config: + type: object + properties: + subaccount: + type: string + required: + - subaccount + nullable: true + active: + type: boolean + assigned: + type: boolean + required: + - customer + - bank + - id + - account_name + - account_number + - created_at + - updated_at + - currency + - split_config + - active + - assigned + DedicatedNubanListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/DedicatedNubanListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + DedicatedVirtualAccountCreate: + type: object + required: + - customer + properties: + customer: + description: Customer ID or code + type: string + preferred_bank: + description: The bank slug for preferred bank. To get a list of available banks, use the List Providers endpoint + type: string + subaccount: + description: Subaccount code of the account you want to split the transaction with + type: string + split_code: + description: Split code consisting of the lists of accounts you want to split the transaction with + type: string + DedicatedNubanCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + account_name: + type: string + account_number: + type: string + assigned: + type: boolean + currency: + type: string + metadata: + nullable: true + active: + type: boolean + id: + type: integer + created_at: + type: string + updated_at: + type: string + assignment: + type: object + properties: + integration: + type: integer + assignee_id: + type: integer + assignee_type: + type: string + expired: + type: boolean + account_type: + type: string + assigned_at: + type: string + expired_at: + nullable: true + required: + - integration + - assignee_id + - assignee_type + - expired + - account_type + - assigned_at + - expired_at + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + required: + - bank + - account_name + - account_number + - assigned + - currency + - metadata + - active + - id + - created_at + - updated_at + - assignment + - customer + required: + - status + - message + - data + DedicatedVirtualAccountAssign: + type: object + required: + - email + - first_name + - last_name + - phone + - preferred_bank + - country + properties: + email: + description: Customer's email address + type: string + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone name + type: string + preferred_bank: + description: | + The bank slug for preferred bank. To get a list of available banks, + use the List Banks endpoint, passing `pay_with_bank_transfer=true` query parameter + type: string + country: + description: Currently accepts NG only + type: string + account_number: + description: Customer's account number + type: string + bvn: + description: Customer's Bank Verification Number + type: string + bank_code: + description: Customer's bank code + type: string + subaccount: + description: Subaccount code of the account you want to split the transaction with + type: string + split_code: + description: Split code consisting of the lists of accounts you want to split the transaction with + type: string + DedicatedNubanFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + id: + type: integer + account_name: + type: string + account_number: + type: string + created_at: + type: string + updated_at: + type: string + currency: + type: string + split_config: + nullable: true + active: + type: boolean + assigned: + type: boolean + required: + - customer + - bank + - id + - account_name + - account_number + - created_at + - updated_at + - currency + - split_config + - active + - assigned + required: + - status + - message + - data + DedicatedNubanDeactivateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + account_name: + type: string + account_number: + type: string + assigned: + type: boolean + currency: + type: string + metadata: + nullable: true + active: + type: boolean + id: + type: integer + created_at: + type: string + updated_at: + type: string + assignment: + type: object + properties: + assignee_id: + type: integer + assignee_type: + type: string + assigned_at: + type: string + integration: + type: integer + account_type: + type: string + required: + - assignee_id + - assignee_type + - assigned_at + - integration + - account_type + required: + - bank + - account_name + - account_number + - assigned + - currency + - metadata + - active + - id + - created_at + - updated_at + - assignment + required: + - status + - message + - data + DedicatedVirtualAccountSplit: + type: object + required: + - account_number + properties: + account_number: + description: Valid Dedicated virtual account + type: string + subaccount: + description: Subaccount code of the account you want to split the transaction with + type: string + split_code: + description: Split code consisting of the lists of accounts you want to split the transaction with + type: string + ApplePayParam: + type: object + required: + - domainName + properties: + domainName: + description: The domain or subdomain for your application + type: string + example: + domainName: example.com + ApplePayCreateOkModel: + type: object + properties: + status: + description: An indicator + type: boolean + message: + description: A short description of the response + type: string + example: + status: true + message: Domain successfully registered on Apple Pay + SubaccountListResponseArray: + type: object + properties: + id: + type: integer + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + settlement_bank: + type: string + bank_id: + type: integer + account_number: + type: string + currency: + type: string + active: + type: integer + required: + - id + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - settlement_bank + - bank_id + - account_number + - currency + - active + SubaccountListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/SubaccountListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + SubaccountCreate: + type: object + required: + - business_name + - settlement_bank + - account_number + - percentage_charge + properties: + business_name: + description: Name of business for subaccount + type: string + settlement_bank: + description: Bank code for the bank. You can get the list of Bank Codes by calling the List Banks endpoint. + type: string + account_number: + description: Bank account number + type: string + percentage_charge: + description: Customer's phone number + type: number + format: float + description: + description: A description for this subaccount + type: string + primary_contact_email: + description: A contact email for the subaccount + type: string + primary_contact_name: + description: The name of the contact person for this subaccount + type: string + primary_contact_phone: + description: A phone number to call for this subaccount + type: string + metadata: + description: Stringified JSON object of custom data + type: string + SubaccountCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + business_name: + type: string + account_name: + type: string + nullable: true + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + account_number: + type: string + percentage_charge: + type: number + settlement_bank: + type: string + currency: + type: string + bank: + type: integer + integration: + type: integer + domain: + type: string + product: + type: string + managed_by_integration: + type: integer + subaccount_code: + type: string + is_verified: + type: boolean + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - account_number + - percentage_charge + - settlement_bank + - currency + - bank + - integration + - domain + - managed_by_integration + - product + - subaccount_code + - is_verified + - settlement_schedule + - active + - migrate + - id + - createdAt + - updatedAt + required: + - status + - message + - data + SubaccountFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + account_name: + type: string + nullable: true + bank: + type: integer + managed_by_integration: + type: integer + domain: + type: string + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + is_verified: + type: boolean + settlement_bank: + type: string + account_number: + type: string + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + currency: + type: string + product: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - bank + - managed_by_integration + - domain + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - is_verified + - settlement_bank + - account_number + - settlement_schedule + - active + - migrate + - currency + - product + - id + - createdAt + - updatedAt + required: + - status + - message + - data + SubaccountUpdate: + type: object + properties: + business_name: + description: Name of business for subaccount + type: string + settlement_bank: + description: Bank code for the bank. You can get the list of Bank Codes by calling the List Banks endpoint. + type: string + account_number: + description: Bank account number + type: string + active: + description: Activate or deactivate a subaccount + type: boolean + percentage_charge: + description: Customer's phone number + type: number + format: float + description: + description: A description for this subaccount + type: string + primary_contact_email: + description: A contact email for the subaccount + type: string + primary_contact_name: + description: The name of the contact person for this subaccount + type: string + primary_contact_phone: + description: A phone number to call for this subaccount + type: string + metadata: + description: Stringified JSON object of custom data + type: string + SubaccountUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + domain: + type: string + subaccount_code: + type: string + account_name: + type: string + nullable: true + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + is_verified: + type: boolean + settlement_bank: + type: string + account_number: + type: string + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + currency: + type: string + product: + type: string + id: + type: integer + integration: + type: integer + bank: + type: integer + managed_by_integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - domain + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - is_verified + - settlement_bank + - account_number + - settlement_schedule + - active + - migrate + - currency + - product + - id + - integration + - bank + - managed_by_integration + - createdAt + - updatedAt + required: + - status + - message + - data + PlanListResponseArray: + type: object + properties: + subscriptions: + type: array + items: {} + pages: + type: array + items: {} + domain: + type: string + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + hosted_page_url: + nullable: true + hosted_page_summary: + nullable: true + currency: + type: string + migrate: + type: boolean + is_deleted: + type: boolean + is_archived: + type: boolean + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + total_subscriptions: + type: integer + active_subscriptions: + type: integer + total_subscriptions_revenue: + type: integer + required: + - subscriptions + - pages + - domain + - name + - plan_code + - description + - amount + - interval + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - hosted_page_url + - hosted_page_summary + - currency + - migrate + - is_deleted + - is_archived + - id + - integration + - createdAt + - updatedAt + - total_subscriptions + - active_subscriptions + - total_subscriptions_revenue + PlanListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/PlanListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + PlanCreate: + type: object + required: + - name + - amount + - interval + properties: + name: + description: Name of plan + type: string + amount: + description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: integer + interval: + description: Interval in words. Valid intervals are daily, weekly, monthly,biannually, annually + type: string + description: + description: A description for this plan + type: string + send_invoices: + description: Set to false if you don't want invoices to be sent to your customers + type: boolean + send_sms: + description: Set to false if you don't want text messages to be sent to your customers + type: boolean + currency: + description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + type: string + invoice_limit: + description: |- + Number of invoices to raise during subscription to this plan. + Can be overridden by specifying an invoice_limit while subscribing. + type: integer + PlanCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + currency: + type: string + name: + type: string + amount: + type: integer + interval: + type: string + integration: + type: integer + domain: + type: string + plan_code: + type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + migrate: + type: boolean + is_archived: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - currency + - name + - amount + - interval + - integration + - domain + - plan_code + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - migrate + - is_archived + - id + - createdAt + - updatedAt + required: + - status + - message + - data + PlanFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + subscriptions: + type: array + items: {} + pages: + type: array + items: {} + domain: + type: string + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + hosted_page_url: + nullable: true + hosted_page_summary: + nullable: true + currency: + type: string + migrate: + type: boolean + is_deleted: + type: boolean + is_archived: + type: boolean + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + pages_count: + type: integer + subscribers_count: + type: integer + subscriptions_count: + type: integer + active_subscriptions_count: + type: integer + nullable: true + total_revenue: + type: integer + subscribers: + type: array + items: {} + required: + - subscriptions + - pages + - domain + - name + - plan_code + - description + - amount + - interval + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - hosted_page_url + - hosted_page_summary + - currency + - migrate + - is_deleted + - is_archived + - id + - integration + - createdAt + - updatedAt + - pages_count + - subscribers_count + - subscriptions_count + - active_subscriptions_count + - total_revenue + - subscribers + required: + - status + - message + - data + PlanUpdate: + type: object + properties: + name: + description: Name of plan + type: string + amount: + description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: integer + interval: + description: Interval in words. Valid intervals are daily, weekly, monthly,biannually, annually + type: string + description: + description: A description for this plan + type: boolean + send_invoices: + description: Set to false if you don't want invoices to be sent to your customers + type: boolean + send_sms: + description: Set to false if you don't want text messages to be sent to your customers + type: boolean + currency: + description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + type: string + invoice_limit: + description: |- + Number of invoices to raise during subscription to this plan. + Can be overridden by specifying an invoice_limit while subscribing. + type: integer + PlanUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + SubscriptionListResponseArray: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + start: + type: integer + quantity: + type: integer + subscription_code: + type: string + email_token: + type: string + amount: + type: integer + cron_expression: + type: string + nullable: true + next_payment_date: + type: string + nullable: true + open_invoice: + nullable: true + createdAt: + type: string + integration: + type: integer + plan: + type: object + properties: + id: + type: integer + domain: + type: string + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - id + - domain + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + - integration + - createdAt + - updatedAt + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + nullable: true + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: integer + signature: + type: string + nullable: true + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + invoice_limit: + type: integer + split_code: + nullable: true + payments_count: + type: integer + most_recent_invoice: + nullable: true + required: + - id + - domain + - status + - start + - quantity + - subscription_code + - email_token + - amount + - cron_expression + - next_payment_date + - open_invoice + - createdAt + - integration + - plan + - authorization + - customer + - invoice_limit + - split_code + - payments_count + - most_recent_invoice + SubscriptionListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/SubscriptionListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + SubscriptionCreate: + type: object + required: + - customer + - plan + properties: + customer: + description: Customer's email address or customer code + type: string + plan: + description: Plan code + type: string + authorization: + description: |- + If customer has multiple authorizations, you can set the desired authorization you wish to use for this subscription here. + If this is not supplied, the customer's most recent authorization would be used + type: string + start_date: + description: Set the date for the first debit. (ISO 8601 format) e.g. 2017-05-16T00:30:13+01:00 + type: string + format: date-time + SubscriptionCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + customer: + type: integer + plan: + type: integer + integration: + type: integer + domain: + type: string + start: + type: integer + status: + type: string + quantity: + type: integer + amount: + type: integer + authorization: + type: integer + invoice_limit: + type: integer + split_code: + nullable: true + subscription_code: + type: string + email_token: + type: string + id: + type: integer + cancelledAt: + nullable: true + createdAt: + type: string + updatedAt: + type: string + cron_expression: + type: string + next_payment_date: + type: string + required: + - customer + - plan + - integration + - domain + - start + - status + - quantity + - amount + - authorization + - invoice_limit + - split_code + - subscription_code + - email_token + - id + - cancelledAt + - createdAt + - updatedAt + - cron_expression + - next_payment_date + required: + - status + - message + - data + SubscriptionFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + subscription_code: + type: string + email_token: + type: string + amount: + type: integer + cron_expression: + type: string + next_payment_date: + type: string + open_invoice: + nullable: true + createdAt: + type: string + cancelledAt: + nullable: true + integration: + type: integer + plan: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + invoices: + type: array + items: {} + invoices_history: + type: array + items: {} + invoice_limit: + type: integer + split_code: + nullable: true + most_recent_invoice: + nullable: true + payments_count: + type: integer + required: + - id + - domain + - status + - subscription_code + - email_token + - amount + - cron_expression + - next_payment_date + - open_invoice + - createdAt + - cancelledAt + - integration + - plan + - authorization + - customer + - invoices + - invoices_history + - invoice_limit + - split_code + - most_recent_invoice + - payments_count + required: + - status + - message + - data + SubscriptionToggle: + type: object + required: + - code + - token + properties: + code: + description: Subscription code + type: string + token: + description: Email token + type: string + SubscriptionDisableResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + ProductListsResponseArray: + type: object + properties: + id: + type: integer + name: + type: string + description: + type: string + product_code: + type: string + slug: + type: string + currency: + type: string + price: + type: integer + quantity: + type: integer + quantity_sold: + type: integer + active: + type: boolean + domain: + type: string + type: + type: string + in_stock: + type: boolean + unlimited: + type: boolean + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + files: + type: array + items: {} + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + createdAt: + type: string + updatedAt: + type: string + digital_assets: + type: array + items: {} + variant_options: + type: array + items: {} + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + integration: + type: integer + low_stock_alert: + type: integer + required: + - id + - name + - description + - product_code + - slug + - currency + - price + - quantity + - quantity_sold + - active + - domain + - type + - in_stock + - unlimited + - metadata + - files + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - createdAt + - updatedAt + - digital_assets + - variant_options + - is_shippable + - shipping_fields + - integration + - low_stock_alert + ProductListsResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/ProductListsResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: string + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + ProductCreate: + type: object + required: + - name + - description + - price + - currency + properties: + name: + description: Name of product + type: string + description: + description: The description of the product + type: string + price: + description: | + Price should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + currency: + description: | + Currency in which price is set. Allowed values are: NGN, GHS, ZAR or USD + type: string + unlimited: + description: | + Set to true if the product has unlimited stock. Leave as false if the + product has limited stock + type: boolean + quantity: + description: Number of products in stock. Use if limited is true + type: integer + split_code: + description: The split code if sharing the transaction with partners + type: string + metadata: + description: Stringified JSON object of custom data + type: string + ProductCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + variants_options: + type: array + items: {} + variants: + type: array + items: {} + name: + type: string + description: + type: string + currency: + type: string + price: + type: integer + quantity: + type: integer + type: + type: string + is_shippable: + type: boolean + unlimited: + type: boolean + files: + type: array + items: {} + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + integration: + type: integer + domain: + type: string + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + product_code: + type: string + quantity_sold: + type: integer + active: + type: boolean + deleted_at: + nullable: true + in_stock: + type: boolean + minimum_orderable: + type: integer + maximum_orderable: + type: integer + nullable: true + redirect_url: + type: string + nullable: true + low_stock_alert: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - variants_options + - variants + - name + - description + - currency + - price + - quantity + - type + - is_shippable + - unlimited + - files + - shipping_fields + - integration + - domain + - metadata + - slug + - product_code + - quantity_sold + - active + - deleted_at + - in_stock + - minimum_orderable + - maximum_orderable + - low_stock_alert + - id + - createdAt + - updatedAt + required: + - status + - message + - data + ProductFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + digital_assets: + type: array + items: {} + integration: + type: integer + name: + type: string + description: + type: string + product_code: + type: string + price: + type: integer + currency: + type: string + quantity: + type: integer + quantity_sold: + nullable: true + type: + type: string + files: + type: array + items: {} + file_path: + nullable: true + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + unlimited: + type: boolean + domain: + type: string + active: + type: boolean + features: + nullable: true + in_stock: + type: boolean + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + low_stock_alert: + type: boolean + stock_threshold: + nullable: true + expires_in: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - digital_assets + - integration + - name + - description + - product_code + - price + - currency + - quantity + - quantity_sold + - type + - files + - file_path + - is_shippable + - shipping_fields + - unlimited + - domain + - active + - features + - in_stock + - metadata + - slug + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - low_stock_alert + - stock_threshold + - expires_in + - id + - createdAt + - updatedAt + required: + - status + - message + - data + ProductUpdate: + type: object + properties: + name: + description: Name of product + type: string + description: + description: The description of the product + type: string + price: + description: | + Price should be in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR + type: integer + currency: + description: | + Currency in which price is set. Allowed values are: NGN, GHS, ZAR or USD + type: string + unlimited: + description: | + Set to true if the product has unlimited stock. Leave as false if the + product has limited stock + type: boolean + quantity: + description: Number of products in stock. Use if limited is true + type: integer + split_code: + description: The split code if sharing the transaction with partners + type: string + metadata: + description: Stringified JSON object of custom data + type: string + ProductUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + name: + type: string + description: + type: string + product_code: + type: string + price: + type: integer + currency: + type: string + quantity: + type: integer + quantity_sold: + type: integer + type: + type: string + files: + type: array + items: {} + file_path: + nullable: true + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + unlimited: + type: boolean + domain: + type: string + active: + type: boolean + features: + nullable: true + in_stock: + type: boolean + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + low_stock_alert: + type: boolean + stock_threshold: + nullable: true + expires_in: + nullable: true + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - name + - description + - product_code + - price + - currency + - quantity + - quantity_sold + - type + - files + - file_path + - is_shippable + - shipping_fields + - unlimited + - domain + - active + - features + - in_stock + - metadata + - slug + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - low_stock_alert + - stock_threshold + - expires_in + - id + - integration + - createdAt + - updatedAt + required: + - status + - message + - data + ProductDeleteResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + StorefrontListResponseArray: + type: object + properties: + id: + type: integer + name: + type: string + slug: + type: string + orders_count: + type: integer + status: + type: string + revenue: + nullable: true + currency: + type: string + products: + type: array + items: {} + contacts: + type: array + items: {} + social_media: + type: array + items: {} + shipping_fees: + type: array + items: {} + required: + - id + - name + - slug + - orders_count + - status + - revenue + - currency + - products + - contacts + - social_media + - shipping_fees + StorefrontListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/StorefrontListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + StorefrontCreate: + type: object + required: + - name + - slug + - currency + properties: + name: + description: Name of the storefront + type: string + slug: + description: | + A unique identifier to access your store. Once the storefront is created, it can be accessed from + https://paystack.shop/your-slug + type: string + currency: + description: | + Currency for prices of products in your storefront. Allowed values are: `NGN`, `GHS`, `KES`, `ZAR` or `USD` + type: string + description: + description: The description of the storefront + type: string + StorefrontContactsArray: + type: object + properties: + value: + type: string + id: + type: integer + type_name: + nullable: true + type: + type: integer + required: + - value + - id + - type_name + - type + StorefrontCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: '#/components/schemas/StorefrontContactsArray' + name: + type: string + slug: + type: string + currency: + type: string + welcome_message: + nullable: true + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: + type: string + background_color: + type: string + status: + type: string + shippable: + type: boolean + integration: + type: integer + domain: + type: string + digital_product_expiry: + nullable: true + metadata: + type: object + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: + type: array + items: {} + shipping_fees: + type: array + items: {} + required: + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color + - status + - shippable + - integration + - domain + - digital_product_expiry + - id + - createdAt + - updatedAt + - products + - shipping_fees + required: + - status + - message + - data + StorefrontFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: '#/components/schemas/StorefrontContactsArray' + name: + type: string + slug: + type: string + currency: + type: string + welcome_message: + nullable: true + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: + type: string + background_color: + type: string + status: + type: string + shippable: + type: boolean + integration: + type: integer + domain: + type: string + digital_product_expiry: + nullable: true + metadata: + type: object + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: + type: array + items: {} + shipping_fees: + type: array + items: {} + required: + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color + - status + - shippable + - integration + - domain + - digital_product_expiry + - id + - createdAt + - updatedAt + - products + - shipping_fees + meta: + type: object + properties: + product_count: + type: integer + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - product_count + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + StorefrontUpdate: + type: object + properties: + name: + description: Name of the storefront + type: string + slug: + description: | + A unique identifier to access your store. Once the storefront is created, it can be accessed from + https://paystack.shop/your-slug + type: string + description: + description: The description of the storefront + type: string + StorefrontUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + StorefrontDeleteResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + StorefrontAddProducts: + type: object + required: + - products + properties: + products: + description: An array of product IDs + type: array + items: + type: integer + OrderItemsArray: + type: object + properties: + order_item_id: + type: integer + orderId: + type: integer + type: + type: string + item: + type: integer + current_total_items_price: + type: integer + files: + type: string + order: + type: integer + amount: + type: integer + quantity: + type: integer + createdAt: + type: string + name: + type: string + product_level_type: + type: string + product_id: + type: integer + product_success_message: + nullable: true + product_redirect_url: + nullable: true + IFNULL(p1.expires_in, p2.expires_in): + nullable: true + product_quantity_sold: + type: integer + product_notification_emails: + nullable: true + IFNULL(p1.metadata, p2.metadata): + type: string + storefront_redirect_url: + nullable: true + storefront_success_message: + nullable: true + required: + - order_item_id + - orderId + - type + - item + - current_total_items_price + - files + - order + - amount + - quantity + - createdAt + - name + - product_level_type + - product_id + - product_success_message + - product_redirect_url + - IFNULL(p1.expires_in, p2.expires_in) + - product_quantity_sold + - product_notification_emails + - IFNULL(p1.metadata, p2.metadata) + - storefront_redirect_url + - storefront_success_message + OrderListResponseArray: + type: object + properties: + id: + type: integer + order_code: + type: string + integration: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + transaction: + type: integer + page: + nullable: true + customer: + type: integer + customer_name: + type: string + status: + type: string + shipping_address: + nullable: true + metadata: + type: string + created_at: + type: string + updated_at: + type: string + email: + type: string + paid_at: + type: string + shipping: + nullable: true + shipping_fees: + type: integer + refunded: + type: boolean + is_viewed: + type: boolean + refunded_amount: + nullable: true + discount_amount: + nullable: true + discounts: + nullable: true + items: + type: array + items: + $ref: '#/components/schemas/OrderItemsArray' + fully_refunded: + type: boolean + required: + - id + - order_code + - integration + - domain + - currency + - amount + - transaction + - page + - customer + - customer_name + - status + - shipping_address + - metadata + - created_at + - updated_at + - email + - paid_at + - shipping + - shipping_fees + - refunded + - is_viewed + - refunded_amount + - discount_amount + - discounts + - items + - fully_refunded + OrderListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/OrderListResponseArray' + meta: + type: object + properties: + total: + type: integer + revenue: + type: object + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - revenue + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + OrderItems: + type: object + description: The collection of items that make up the order + required: + - item + - type + - quantity + - amount + properties: + item: + description: The product ID of the item + type: string + type: + description: The type of the item. `product` is currently the acceptable value + type: string + quantity: + description: The number of items to get + type: integer + amount: + description: The cost of the item + type: integer + OrderShipping: + type: object + description: The shipping details of the order + required: + - street_line + - city + - state + - country + - shipping_fee + properties: + street_line: + description: The address of for the delivery + type: string + city: + description: The city of the delivery address + type: string + state: + description: The state of the delivery address + type: string + country: + description: The country of the delivery address + type: string + shipping_fee: + description: The cost of delivery + type: integer + delivery_note: + description: Extra details to be aware of for the delivery + type: string + OrderCreate: + type: object + required: + - email + - first_name + - last_name + - phone + - currency + - items + - shipping + properties: + email: + description: The email of the customer placing the order + type: string + first_name: + description: The customer's first name + type: string + last_name: + description: The customer's last name + type: string + phone: + description: The customer's mobile number + type: string + currency: + description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + type: string + items: + type: array + items: + $ref: '#/components/schemas/OrderItems' + shipping: + $ref: '#/components/schemas/OrderShipping' + is_gift: + description: | + A flag to indicate if the order is for someone else + type: boolean + pay_for_me: + description: | + A flag to indicate if the someone else should pay for the order + type: boolean + OrderCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + discounts: + type: array + items: {} + currency: + type: string + shipping_address: + nullable: true + integration: + type: integer + domain: + type: string + email: + type: string + customer: + type: integer + amount: + type: integer + pay_for_me: + type: boolean + shipping: + type: object + properties: + customer: + type: integer + integration: + type: integer + domain: + type: string + fees: + type: integer + delivery_note: + nullable: true + street_line: + type: string + city: + type: string + state: + type: string + country: + type: string + is_shipped: + type: boolean + delivery_tracking_link: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - customer + - integration + - domain + - fees + - delivery_note + - street_line + - city + - state + - country + - is_shipped + - delivery_tracking_link + - id + - createdAt + - updatedAt + nullable: true + shipping_fees: + type: integer + shipping_method: + type: object + properties: + region: + type: string + fee: + type: integer + currency: + type: string + required: + - region + - fee + - currency + metadata: + type: object + order_code: + type: string + status: + type: string + refunded: + type: boolean + is_viewed: + type: boolean + expiration_date: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + items: + type: array + items: {} + pay_for_me_code: + type: string + discount_amount: + type: integer + required: + - discounts + - currency + - shipping_address + - integration + - domain + - email + - customer + - amount + - pay_for_me + - shipping + - shipping_fees + - metadata + - order_code + - status + - refunded + - is_viewed + - expiration_date + - id + - createdAt + - updatedAt + - items + - pay_for_me_code + - discount_amount + required: + - status + - message + - data + OrderFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + discounts: + type: array + items: {} + order_code: + type: string + domain: + type: string + currency: + type: string + amount: + type: integer + email: + type: string + status: + type: string + refunded: + type: boolean + paid_at: + type: string + shipping_address: + nullable: true + metadata: + type: object + shipping_fees: + type: integer + shipping_method: + nullable: true + is_viewed: + type: boolean + expiration_date: + type: string + pay_for_me: + type: boolean + id: + type: integer + integration: + type: integer + page: + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + shipping: + nullable: true + createdAt: + type: string + updatedAt: + type: string + transaction: + type: integer + is_gift: + type: boolean + payer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + fully_refunded: + type: boolean + refunded_amount: + type: integer + items: + type: array + items: + $ref: '#/components/schemas/OrderItemsArray' + discount_amount: + nullable: true + required: + - discounts + - order_code + - domain + - currency + - amount + - email + - status + - refunded + - paid_at + - shipping_address + - metadata + - shipping_fees + - shipping_method + - is_viewed + - expiration_date + - pay_for_me + - id + - integration + - page + - customer + - shipping + - createdAt + - updatedAt + - transaction + - is_gift + - payer + - fully_refunded + - refunded_amount + - items + - discount_amount + required: + - status + - message + - data + OrderFetchProductResponseArray: + type: object + properties: + order_id: + type: integer + transaction: + type: integer + order_code: + type: string + customer: + type: integer + first_name: + type: string + last_name: + type: string + customer_name: + type: string + phone: + type: string + email: + type: string + product_code: + type: string + product_id: + type: integer + product_name: + type: string + price: + type: integer + quantity_sold: + type: integer + currency: + type: string + quantity: + type: integer + variant_id: + nullable: true + variant_price: + nullable: true + variant_code: + nullable: true + amount: + type: integer + shipping_method: + nullable: true + status: + type: string + shipping_address: + nullable: true + refunded: + type: boolean + shipping: + nullable: true + paid_at: + type: string + created_at: + type: string + is_shipped: + type: boolean + is_viewed: + type: integer + delivery_note: + nullable: true + shipping_fee: + nullable: true + amount_paid: + type: integer + storefront_slug: + type: string + required: + - order_id + - transaction + - order_code + - customer + - first_name + - last_name + - customer_name + - phone + - email + - product_code + - product_id + - product_name + - price + - quantity_sold + - currency + - quantity + - variant_id + - variant_price + - variant_code + - amount + - shipping_method + - status + - shipping_address + - refunded + - shipping + - paid_at + - created_at + - is_shipped + - is_viewed + - delivery_note + - shipping_fee + - amount_paid + - storefront_slug + OrderFetchProductResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/OrderFetchProductResponseArray' + meta: + type: object + properties: + quantity_sold: + type: integer + revenue: + type: integer + total: + type: integer + skipped: + type: integer + perPage: + type: integer + pageCount: + type: integer + required: + - quantity_sold + - revenue + - total + - skipped + - perPage + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + OrderValidateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + order_code: + type: string + domain: + type: string + currency: + type: string + amount: + type: integer + email: + type: string + status: + type: string + refunded: + type: boolean + paid_at: + nullable: true + shipping_address: + nullable: true + metadata: + nullable: true + shipping_fees: + type: integer + shipping_method: + nullable: true + is_viewed: + type: boolean + expiration_date: + type: string + pay_for_me: + type: boolean + id: + type: integer + integration: + type: object + properties: + key: + type: string + name: + type: string + logo: + type: string + allowed_currencies: + type: array + items: {} + required: + - key + - name + - logo + - allowed_currencies + transaction: + nullable: true + page: + nullable: true + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + shipping: + nullable: true + createdAt: + type: string + updatedAt: + type: string + payer: + nullable: true + required: + - order_code + - domain + - currency + - amount + - email + - status + - refunded + - paid_at + - shipping_address + - metadata + - shipping_fees + - shipping_method + - is_viewed + - expiration_date + - pay_for_me + - id + - integration + - transaction + - page + - customer + - shipping + - createdAt + - updatedAt + - payer + required: + - status + - message + - data + PageListResponseArray: + type: object + properties: + integration: + type: integer + plan: + nullable: true + domain: + type: string + name: + type: string + description: + type: string + nullable: true + amount: + type: integer + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + type: array + nullable: true + items: {} + type: + type: string + redirect_url: + type: string + nullable: true + success_message: + type: string + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + type: object + nullable: true + split_code: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - plan + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - createdAt + - updatedAt + PageListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/PageListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + PageCreate: + type: object + required: + - name + properties: + name: + description: Name of page + type: string + description: + description: The description of the page + type: string + amount: + description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: integer + currency: + description: The transaction currency. Defaults to your integration currency. + type: string + enum: + - NGN + - GHS + - ZAR + - KES + - USD + slug: + description: URL slug you would like to be associated with this page. Page will be accessible at `https://paystack.com/pay/[slug]` + type: string + type: + description: | + The type of payment page to create. Defaults to `payment` if no type is specified. + type: string + enum: + - payment + - subscription + - product + - plan + plan: + description: The ID of the plan to subscribe customers on this payment page to when `type` is set to `subscription`. + type: string + fixed_amount: + description: Specifies whether to collect a fixed amount on the payment page. If true, `amount` must be passed. + type: boolean + split_code: + description: The split code of the transaction split. e.g. `SPL_98WF13Eb3w` + type: string + metadata: + description: Stringified JSON object of custom data + type: string + redirect_url: + description: | + If you would like Paystack to redirect to a URL upon successful payment, specify the URL here. + type: string + success_message: + description: | + A success message to display to the customer after a successful transaction + type: string + notification_email: + description: | + An email address that will receive transaction notifications for this payment page + type: string + collect_phone: + description: | + Specify whether to collect phone numbers on the payment page + type: boolean + custom_fields: + description: If you would like to accept custom fields, specify them here. + type: array + items: + type: object + PageCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + name: + type: string + integration: + type: integer + domain: + type: string + slug: + type: string + currency: + type: string + type: + type: string + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - name + - integration + - domain + - slug + - currency + - type + - collect_phone + - active + - published + - migrate + - id + - createdAt + - updatedAt + required: + - status + - message + - data + PageFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + domain: + type: string + name: + type: string + description: + nullable: true + amount: + type: integer + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + nullable: true + type: + type: string + redirect_url: + nullable: true + success_message: + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - createdAt + - updatedAt + required: + - status + - message + - data + PageUpdate: + type: object + properties: + name: + description: Name of page + type: string + description: + description: The description of the page + type: string + amount: + description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: integer + active: + description: Set to false to deactivate page url + type: boolean + PageUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + domain: + type: string + name: + type: string + description: + nullable: true + amount: + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + nullable: true + type: + type: string + redirect_url: + nullable: true + success_message: + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true + id: + type: integer + integration: + type: integer + plan: + nullable: true + createdAt: + type: string + updatedAt: + type: string + required: + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - integration + - plan + - createdAt + - updatedAt + required: + - status + - message + - data + PageCheckSlugAvailabilityResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + PageProduct: + type: object + required: + - product + properties: + product: + description: IDs of all products to add to a page + type: array + items: + type: string + PageProductsArray: + type: object + properties: + product_id: + type: integer + name: + type: string + description: + type: string + product_code: + type: string + page: + type: integer + price: + type: integer + currency: + type: string + quantity: + type: integer + type: + type: string + features: + nullable: true + is_shippable: + type: integer + domain: + type: string + integration: + type: integer + active: + type: integer + in_stock: + type: integer + required: + - product_id + - name + - description + - product_code + - page + - price + - currency + - quantity + - type + - features + - is_shippable + - domain + - integration + - active + - in_stock + PageAddProductsResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + plan: + nullable: true + domain: + type: string + name: + type: string + description: + nullable: true + amount: + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + nullable: true + type: + type: string + redirect_url: + nullable: true + success_message: + nullable: true + collect_phone: + type: boolean + active: + type: boolean + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: + type: array + items: + $ref: '#/components/schemas/PageProductsArray' + required: + - integration + - plan + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - createdAt + - updatedAt + - products + required: + - status + - message + - data + PaymentRequestLineItemsArray: + type: object + properties: + name: + type: string + amount: + type: integer + quantity: + type: integer + required: + - name + - amount + - quantity + PaymentRequestTaxArray: + type: object + properties: + name: + type: string + amount: + type: integer + required: + - name + - amount + PaymentRequestListResponseArray: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + type: string + nullable: true + pdf_url: + type: string + nullable: true + line_items: + type: array + items: + $ref: '#/components/schemas/PaymentRequestLineItemsArray' + tax: + type: array + items: + $ref: '#/components/schemas/PaymentRequestTaxArray' + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + nullable: true + split_code: + type: string + nullable: true + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code + PaymentRequestListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/PaymentRequestListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + anyOf: + - type: integer + - type: string + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + PaymentRequestCreate: + type: object + required: + - customer + properties: + customer: + description: Customer id or code + type: string + amount: + description: |- + Payment request amount. Only useful if line items and tax values are ignored. + The endpoint will throw a friendly warning if neither is available. + type: integer + currency: + description: Specify the currency of the invoice. Allowed values are NGN, GHS, ZAR and USD. Defaults to NGN + type: string + due_date: + description: ISO 8601 representation of request due date + type: string + format: date-time + description: + description: A short description of the payment request + type: string + line_items: + description: Array of line items + type: array + items: + type: object + tax: + description: Array of taxes + type: array + items: + type: object + send_notification: + description: Indicates whether Paystack sends an email notification to customer. Defaults to true + type: boolean + items: + type: object + draft: + description: Indicate if request should be saved as draft. Defaults to false and overrides send_notification + type: boolean + items: + type: object + has_invoice: + description: |- + Set to true to create a draft invoice (adds an auto incrementing invoice number if none is provided) + even if there are no line_items or tax passed + type: boolean + items: + type: object + invoice_number: + description: |- + Numeric value of invoice. Invoice will start from 1 and auto increment from there. This field is to help + override whatever value Paystack decides. Auto increment for subsequent invoices continue from this point. + type: integer + split_code: + description: The split code of the transaction split. + type: string + PaymentRequestCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + nullable: true + description: + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: + type: boolean + metadata: + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: integer + created_at: + type: string + discount: + nullable: true + split_code: + nullable: true + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - line_items + - tax + - request_code + - status + - paid + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code + required: + - status + - message + - data + PaymentRequestUpdate: + type: object + properties: + customer: + description: Customer id or code + type: string + amount: + description: |- + Payment request amount. Only useful if line items and tax values are ignored. + The endpoint will throw a friendly warning if neither is available. + type: integer + currency: + description: Specify the currency of the invoice. Allowed values are NGN, GHS, ZAR and USD. Defaults to NGN + type: string + due_date: + description: ISO 8601 representation of request due date + type: string + format: date-time + description: + description: A short description of the payment request + type: string + line_items: + description: Array of line items + type: array + items: + type: object + tax: + description: Array of taxes + type: array + items: + type: object + send_notification: + description: Indicates whether Paystack sends an email notification to customer. Defaults to true + type: boolean + items: + type: object + draft: + description: Indicate if request should be saved as draft. Defaults to false and overrides send_notification + type: boolean + items: + type: object + has_invoice: + description: |- + Set to true to create a draft invoice (adds an auto incrementing invoice number if none is provided) + even if there are no line_items or tax passed + type: boolean + items: + type: object + invoice_number: + description: |- + Numeric value of invoice. Invoice will start from 1 and auto increment from there. This field is to help + override whatever value Paystack decides. Auto increment for subsequent invoices continue from this point. + type: integer + split_code: + description: The split code of the transaction split. + type: string + PaymentRequestNotificationsArray: + type: object + properties: + sent_at: + type: string + channel: + type: string + required: + - sent_at + - channel + PaymentRequestUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + nullable: true + pdf_url: + type: string + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: + $ref: '#/components/schemas/PaymentRequestNotificationsArray' + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + nullable: true + split_code: + nullable: true + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code + required: + - status + - message + - data + PaymentRequestVerifyResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: object + properties: + key: + type: string + name: + type: string + logo: + type: string + allowed_currencies: + type: array + items: + type: string + required: + - key + - name + - logo + - allowed_currencies + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + nullable: true + pdf_url: + type: string + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: + $ref: '#/components/schemas/PaymentRequestNotificationsArray' + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + nullable: true + split_code: + nullable: true + pending_amount: + type: integer + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code + - pending_amount + required: + - status + - message + - data + PaymentRequestSendNotificationResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + PaymentRequestPendingArray: + type: object + properties: + currency: + type: string + amount: + type: integer + required: + - currency + - amount + PaymentRequestSuccessfulArray: + type: object + properties: + currency: + type: string + amount: + type: integer + required: + - currency + - amount + PaymentRequestTotalArray: + type: object + properties: + currency: + type: string + amount: + type: integer + required: + - currency + - amount + PaymentRequestTotalResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + pending: + type: array + items: + $ref: '#/components/schemas/PaymentRequestPendingArray' + successful: + type: array + items: + $ref: '#/components/schemas/PaymentRequestSuccessfulArray' + total: + type: array + items: + $ref: '#/components/schemas/PaymentRequestTotalArray' + required: + - pending + - successful + - total + required: + - status + - message + - data + PaymentRequestFinalizeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: + type: string + amount: + type: integer + currency: + type: string + due_date: + type: string + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: + type: string + nullable: true + pdf_url: + nullable: true + line_items: + type: array + items: + $ref: '#/components/schemas/PaymentRequestLineItemsArray' + tax: + type: array + items: + $ref: '#/components/schemas/PaymentRequestTaxArray' + request_code: + type: string + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + type: object + properties: + type: + type: string + amount: + type: integer + required: + - type + - amount + nullable: true + split_code: + nullable: true + pending_amount: + type: integer + required: + - id + - integration + - domain + - amount + - currency + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code + - pending_amount + required: + - status + - message + - data + PaymentRequestArchiveResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TransferRecipientListResponseArray: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + nullable: true + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + TransferRecipientListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/TransferRecipientListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + TransferRecipientCreate: + type: object + required: + - type + - name + - account_number + - bank_code + properties: + type: + description: Recipient Type (Only nuban at this time) + type: string + name: + description: Recipient's name + type: string + account_number: + description: Recipient's bank account number + type: string + bank_code: + description: Recipient's bank code. You can get the list of Bank Codes by calling the List Banks endpoint + type: string + description: + description: A description for this recipient + type: string + currency: + description: Currency for the account receiving the transfer + type: string + authorization_code: + description: An authorization code from a previous transaction + type: string + metadata: + description: Stringified JSON object of custom data + type: string + TransferRecipientCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + required: + - status + - message + - data + TransferRecipientBulk: + type: object + required: + - batch + properties: + batch: + description: |- + A list of transfer recipient object. Each object should contain type, name, and bank_code. + Any Create Transfer Recipient param can also be passed. + type: array + items: + $ref: '#/components/schemas/TransferRecipientCreate' + ErrorRecordsArray: + type: object + properties: + type: + type: string + name: + type: string + description: + type: string + account_number: + type: string + bank_code: + type: string + currency: + type: string + email: + type: string + required: + - type + - name + - description + - account_number + - bank_code + - currency + - email + TransferRecipientErrorsArray: + type: object + properties: + message: + type: string + records: + type: array + items: + $ref: '#/components/schemas/ErrorRecordsArray' + required: + - message + - records + TransferRecipientBulkCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + success: + type: array + items: {} + errors: + type: array + items: + $ref: '#/components/schemas/TransferRecipientErrorsArray' + required: + - success + - errors + required: + - status + - message + - data + TransferRecipientFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + domain: + type: string + type: + type: string + currency: + type: string + name: + type: string + details: + type: object + properties: + account_number: + type: string + account_name: + type: string + bank_code: + type: string + bank_name: + type: string + required: + - account_number + - account_name + - bank_code + - bank_name + description: + type: string + metadata: + nullable: true + recipient_code: + type: string + active: + type: boolean + recipient_account: + type: string + institution_code: + type: string + email: + type: string + id: + type: integer + isDeleted: + type: boolean + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - domain + - type + - currency + - name + - details + - description + - metadata + - recipient_code + - active + - recipient_account + - institution_code + - email + - id + - isDeleted + - createdAt + - updatedAt + required: + - status + - message + - data + TransferRecipientUpdate: + type: object + properties: + name: + description: Recipient's name + type: string + email: + description: Recipient's email address + type: string + TransferRecipientUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TransferRecipientDeleteResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TransferListResponseArray: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + transferred_at: + nullable: true + updatedAt: + type: string + recipient: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + fee_charged: + type: integer + required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - transferred_at + - updatedAt + - recipient + - session + - fee_charged + TransferListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/TransferListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + TransferInitiate: + type: object + required: + - source + - amount + - recipient + properties: + source: + description: Where should we transfer from? Only balance is allowed for now + type: string + amount: + description: Amount to transfer in kobo if currency is NGN and pesewas if currency is GHS. + type: string + recipient: + description: The transfer recipient's code + type: string + reason: + description: The reason or narration for the transfer. + type: string + currency: + description: Specify the currency of the transfer. Defaults to NGN. + type: string + reference: + description: |- + If specified, the field should be a unique identifier (in lowercase) for the object. + Only -,_ and alphanumeric characters are allowed. + type: string + TransferCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transfersessionid: + type: array + items: {} + domain: + type: string + amount: + type: integer + currency: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + reason: + type: string + status: + type: string + failures: + nullable: true + transfer_code: + type: string + titan_code: + nullable: true + transferred_at: + nullable: true + id: + type: integer + integration: + type: integer + request: + type: integer + recipient: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - transfersessionid + - domain + - amount + - currency + - reference + - source + - source_details + - reason + - status + - failures + - transfer_code + - titan_code + - transferred_at + - id + - integration + - request + - recipient + - createdAt + - updatedAt + required: + - status + - message + - data + TransferFinalize: + type: object + required: + - transfer_code + - otp + properties: + transfer_code: + description: The transfer code you want to finalize + type: string + otp: + description: OTP sent to business phone to verify transfer + type: string + TransferBulk: + type: object + required: + - source + - transfers + properties: + source: + description: Where should we transfer from? Only balance is allowed for now + type: string + transfers: + description: A list of transfer object. Each object should contain amount, recipient, and reference + type: array + items: + $ref: '#/components/schemas/TransferInitiate' + TransferBulkResponseArray: + type: object + properties: + reference: + type: string + recipient: + type: string + amount: + type: integer + transfer_code: + type: string + currency: + type: string + status: + type: string + required: + - reference + - recipient + - amount + - transfer_code + - currency + - status + TransferBulkResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/TransferBulkResponseArray' + required: + - status + - message + - data + TransferFeesBreakdownArray: + type: object + properties: + amount: + type: string + formula: + nullable: true + type: + type: string + required: + - amount + - formula + - type + TransferFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + request: + type: integer + transferred_at: + nullable: true + updatedAt: + type: string + recipient: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + fee_charged: + type: integer + fees_breakdown: + type: array + items: + $ref: '#/components/schemas/TransferFeesBreakdownArray' + nullable: true + gateway_response: + type: string + nullable: true + required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - request + - transferred_at + - updatedAt + - recipient + - session + - fee_charged + - fees_breakdown + - gateway_response + required: + - status + - message + - data + TransferVerifyResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + transferred_at: + nullable: true + updatedAt: + type: string + recipient: + type: object + properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - metadata + - name + - recipient_code + - type + - updatedAt + - is_deleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + gateway_response: + type: string + nullable: true + required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - transferred_at + - updatedAt + - recipient + - session + - gateway_response + required: + - status + - message + - data + TransferResendOTP: + type: object + required: + - transfer_code + - reason + properties: + transfer_code: + description: The transfer code that requires an OTP validation + type: string + reason: + description: Either resend_otp or transfer + type: string + TransferResendsOtpResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TransferDisablesOtpResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TransferFinalizeDisableOTP: + type: object + required: + - otp + properties: + otp: + description: OTP sent to business phone to verify disabling OTP requirement + type: string + TransferFinalizeDisablesOtpResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TransferEnablesOtpResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + BalanceCheckResponseArray: + type: object + properties: + currency: + type: string + balance: + type: integer + required: + - currency + - balance + BalanceCheckResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/BalanceCheckResponseArray' + required: + - status + - message + - data + BalanceFetchLedgerResponseArray: + type: object + properties: + integration: + type: integer + domain: + type: string + balance: + type: integer + currency: + type: string + difference: + type: integer + reason: + type: string + model_responsible: + type: string + model_row: + type: integer + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - domain + - balance + - currency + - difference + - reason + - model_responsible + - model_row + - id + - createdAt + - updatedAt + BalanceFetchLedgerResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/BalanceFetchLedgerResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + ChargeCreate: + type: object + required: + - email + - amount + properties: + email: + description: Customer's email address + type: string + amount: + description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: string + authorization_code: + description: An authorization code to charge. + type: string + pin: + description: 4-digit PIN (send with a non-reusable authorization code) + type: string + reference: + description: Unique transaction reference. Only -, .`, = and alphanumeric characters allowed. + type: string + birthday: + description: The customer's birthday in the format YYYY-MM-DD e.g 2017-05-16 + type: string + format: date-time + device_id: + description: |- + This is the unique identifier of the device a user uses in making payment. + Only -, .`, = and alphanumeric characters are allowed. + type: string + metadata: + description: Stringified JSON object of custom data + type: string + Bank: + type: object + properties: + code: + description: Customer's bank code + type: string + account_number: + description: Customer's account number + type: string + MobileMoney: + type: object + properties: + phone: + description: Customer's phone number + type: string + provider: + description: The telco provider of customer's phone number. This can be fetched from the List Bank endpoint + type: string + USSD: + type: object + properties: + type: + description: The three-digit USSD code. + type: string + enum: + - 737 + - 919 + - 822 + - 966 + EFT: + type: object + properties: + provider: + description: The EFT provider + type: string + ChargeCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount + required: + - status + - message + - data + ChargeSubmitPin: + type: object + required: + - pin + - reference + properties: + pin: + description: Customer's PIN + type: string + reference: + description: Transaction reference that requires the PIN + type: string + ChargeSubmitPinResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount + required: + - status + - message + - data + ChargeSubmitOTP: + type: object + required: + - otp + - reference + properties: + otp: + description: Customer's OTP + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeSubmitOtpResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount + required: + - status + - message + - data + ChargeSubmitPhone: + type: object + required: + - phone + - reference + properties: + phone: + description: Customer's mobile number + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeSubmitPhoneResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + display_text: + type: string + required: + - reference + - status + - display_text + required: + - status + - message + - data + ChargeSubmitBirthday: + type: object + required: + - birthday + - reference + properties: + birthday: + description: Customer's birthday in the format YYYY-MM-DD e.g 2016-09-21 + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeSubmitBirthdayResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + display_text: + type: string + required: + - status + - display_text + required: + - status + - message + - data + ChargeSubmitAddress: + type: object + required: + - address + - reference + - city + - state + - zipcode + properties: + address: + description: Customer's address + type: string + city: + description: Customer's city + type: string + state: + description: Customer's state + type: string + zipcode: + description: Customer's zipcode + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeCheckPendingResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + nullable: true + fees_split: + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount + required: + - status + - message + - data + BulkChargeListResponseArray: + type: object + properties: + integration: + type: integer + domain: + type: string + batch_code: + type: string + status: + type: string + easy_cron_id: + nullable: true + reference: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - domain + - batch_code + - status + - easy_cron_id + - reference + - id + - createdAt + - updatedAt + BulkChargeListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/BulkChargeListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + anyOf: + - type: integer + - type: string + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + BulkChargeInitiate: + type: object + required: + - authorization + - amount + properties: + authorization: + description: Customer's card authorization code + type: string + amount: + description: Amount to charge on the authorization + type: string + BulkChargeInitiateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + batch_code: + type: string + reference: + type: string + id: + type: integer + integration: + type: integer + domain: + type: string + status: + type: string + total_charges: + type: integer + pending_charges: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - batch_code + - reference + - id + - integration + - domain + - status + - total_charges + - pending_charges + - createdAt + - updatedAt + required: + - status + - message + - data + BulkChargeFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + batch_code: + type: string + reference: + type: string + id: + type: integer + integration: + type: integer + domain: + type: string + status: + type: string + total_charges: + type: integer + pending_charges: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - batch_code + - reference + - id + - integration + - domain + - status + - total_charges + - pending_charges + - createdAt + - updatedAt + required: + - status + - message + - data + BulkChargeFetchBulkBatchChargesResponseArray: + type: object + properties: + integration: + type: integer + bulkcharge: + type: integer + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + domain: + type: string + amount: + type: integer + at_least: + type: integer + currency: + type: string + reference: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + status: + type: string + message: + type: string + attempt_partial_debit: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - bulkcharge + - customer + - authorization + - domain + - amount + - at_least + - currency + - reference + - metadata + - status + - message + - attempt_partial_debit + - id + - createdAt + - updatedAt + BulkChargeFetchBulkBatchChargesResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/BulkChargeFetchBulkBatchChargesResponseArray' + meta: + type: object + properties: + perPage: + type: string + total: + type: integer + skipped: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - perPage + - total + - skipped + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + BulkChargePauseResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + BulkChargeResumeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + ControlPanelFetchPaymentSessionTimeoutResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + payment_session_timeout: + type: integer + required: + - payment_session_timeout + required: + - status + - message + - data + PaymentSession: + type: object + required: + - timeout + properties: + timeout: + description: Time in seconds before a transaction becomes invalid + type: string + example: '30' + ControlPanelUpdatePaymentSessionTimeoutResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + payment_session_timeout: + type: integer + required: + - payment_session_timeout + required: + - status + - message + - data + RefundListResponseArray: + type: object + properties: + integration: + type: integer + transaction: + type: integer + dispute: + nullable: true + settlement: + nullable: true + id: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + status: + type: string + refunded_at: + nullable: true + refunded_by: + type: string + customer_note: + type: string + merchant_note: + type: string + deducted_amount: + type: integer + fully_deducted: + type: integer + createdAt: + type: string + bank_reference: + nullable: true + transaction_reference: + type: string + reason: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + refund_type: + type: string + transaction_amount: + type: integer + initiated_by: + type: string + refund_channel: + type: string + session_id: + nullable: true + collect_account_number: + type: boolean + required: + - integration + - transaction + - dispute + - settlement + - id + - domain + - currency + - amount + - status + - refunded_at + - refunded_by + - customer_note + - merchant_note + - deducted_amount + - fully_deducted + - createdAt + - bank_reference + - transaction_reference + - reason + - customer + - refund_type + - transaction_amount + - initiated_by + - refund_channel + - session_id + - collect_account_number + RefundListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/RefundListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: string + page: + type: integer + pageCount: + type: integer + failedRefundCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + - failedRefundCount + additionalProperties: false + required: + - status + - message + - data + - meta + RefundCreate: + type: object + required: + - transaction + properties: + transaction: + description: Transaction reference or id + type: string + amount: + description: |- + Amount ( in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR ) to be refunded to the customer. + Amount cannot be more than the original transaction amount + type: integer + currency: + description: Three-letter ISO currency. Allowed values are NGN, GHS, ZAR or USD + type: string + customer_note: + description: Customer reason + type: string + merchant_note: + description: Merchant reason + type: string + RefundCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + reference: + type: string + amount: + type: integer + paid_at: + type: string + channel: + type: string + currency: + type: string + authorization: + type: object + properties: + exp_month: + nullable: true + exp_year: + nullable: true + account_name: + nullable: true + required: + - exp_month + - exp_year + - account_name + customer: + type: object + properties: + international_format_phone: + type: string + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + properties: + currency: + nullable: true + required: + - currency + split: + type: object + order_id: + nullable: true + paidAt: + type: string + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + required: + - id + - domain + - reference + - amount + - paid_at + - channel + - currency + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - pos_transaction_data + - source + - fees_breakdown + integration: + type: integer + deducted_amount: + type: integer + channel: + nullable: true + merchant_note: + type: string + customer_note: + type: string + status: + type: string + refunded_by: + type: string + expected_at: + type: string + currency: + type: string + domain: + type: string + amount: + type: integer + fully_deducted: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - transaction + - integration + - deducted_amount + - channel + - merchant_note + - customer_note + - status + - refunded_by + - expected_at + - currency + - domain + - amount + - fully_deducted + - id + - createdAt + - updatedAt + required: + - status + - message + - data + RefundFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + transaction: + type: integer + dispute: + nullable: true + settlement: + nullable: true + id: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + status: + type: string + refunded_at: + nullable: true + refunded_by: + type: string + customer_note: + type: string + merchant_note: + type: string + deducted_amount: + type: integer + fully_deducted: + type: integer + createdAt: + type: string + bank_reference: + nullable: true + transaction_reference: + type: string + reason: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + refund_type: + type: string + transaction_amount: + type: integer + initiated_by: + type: string + refund_channel: + type: string + session_id: + nullable: true + collect_account_number: + type: boolean + required: + - integration + - transaction + - dispute + - settlement + - id + - domain + - currency + - amount + - status + - refunded_at + - refunded_by + - customer_note + - merchant_note + - deducted_amount + - fully_deducted + - createdAt + - bank_reference + - transaction_reference + - reason + - customer + - refund_type + - transaction_amount + - initiated_by + - refund_channel + - session_id + - collect_account_number + required: + - status + - message + - data + DisputeHistoryArray: + type: object + properties: + status: + type: string + by: + type: string + createdAt: + type: string + required: + - status + - by + - createdAt + DisputeMessagesArray: + type: object + properties: + sender: + type: string + body: + type: string + createdAt: + type: string + required: + - sender + - body + - createdAt + DisputeListResponseArray: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + customer: + nullable: true + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: '#/components/schemas/DisputeHistoryArray' + messages: + type: array + items: + $ref: '#/components/schemas/DisputeMessagesArray' + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt + DisputeListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/DisputeListResponseArray' + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + DisputeFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: '#/components/schemas/DisputeHistoryArray' + messages: + type: array + items: + $ref: '#/components/schemas/DisputeMessagesArray' + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt + required: + - status + - message + - data + DisputeUpdate: + type: object + required: + - refund_amount + properties: + refund_amount: + description: The amount to refund, in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: string + uploaded_filename: + description: Filename of attachment returned via response from the Dispute upload URL + type: string + DisputeUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: '#/components/schemas/DisputeHistoryArray' + messages: + type: array + items: + $ref: '#/components/schemas/DisputeMessagesArray' + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt + required: + - status + - message + - data + DisputeUploadURLResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + signedUrl: + type: string + fileName: + type: string + required: + - signedUrl + - fileName + required: + - status + - message + - data + DisputeExportResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + path: + type: string + expiresAt: + type: string + required: + - path + - expiresAt + required: + - status + - message + - data + DisputeListTransactionResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + history: + type: array + items: + $ref: '#/components/schemas/DisputeHistoryArray' + messages: + type: array + items: + $ref: '#/components/schemas/DisputeMessagesArray' + currency: + type: string + last4: + type: string + bin: + type: string + transaction_reference: + nullable: true + merchant_transaction_reference: + type: string + refund_amount: + type: integer + status: + type: string + domain: + type: string + resolution: + nullable: true + category: + type: string + note: + nullable: true + attachments: + nullable: true + id: + type: integer + integration: + type: integer + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: '#/components/schemas/MetadataCustomFieldsArray' + required: + - custom_fields + log: + nullable: true + fees: + type: integer + fees_split: + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + type: object + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + created_by: + type: integer + evidence: + nullable: true + resolvedAt: + nullable: true + createdAt: + type: string + updatedAt: + type: string + dueAt: + nullable: true + required: + - history + - messages + - currency + - last4 + - bin + - transaction_reference + - merchant_transaction_reference + - refund_amount + - status + - domain + - resolution + - category + - note + - attachments + - id + - integration + - transaction + - created_by + - evidence + - resolvedAt + - createdAt + - updatedAt + - dueAt + required: + - status + - message + - data + DisputeResolve: + type: object + required: + - resolution + - message + - refund_amount + - uploaded_filename + properties: + resolution: + description: Dispute resolution. Accepted values, merchant-accepted, declined + type: string + message: + description: Reason for resolving + type: string + refund_amount: + description: The amount to refund, in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + type: string + uploaded_filename: + description: Filename of attachment returned via response from the Dispute upload URL + type: string + evidence: + description: Evidence Id for fraud claims + type: integer + DisputeResolveResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + currency: + type: string + last4: + type: string + bin: + type: string + transaction_reference: + nullable: true + merchant_transaction_reference: + type: string + refund_amount: + type: integer + status: + type: string + domain: + type: string + resolution: + type: string + category: + type: string + note: + nullable: true + attachments: + type: string + id: + type: integer + integration: + type: integer + transaction: + type: integer + created_by: + type: integer + evidence: + type: integer + resolvedAt: + type: string + createdAt: + type: string + updatedAt: + type: string + dueAt: + nullable: true + message: + type: object + properties: + dispute: + type: integer + sender: + type: string + body: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - dispute + - sender + - body + - id + - createdAt + - updatedAt + required: + - currency + - last4 + - bin + - transaction_reference + - merchant_transaction_reference + - refund_amount + - status + - domain + - resolution + - category + - note + - attachments + - id + - integration + - transaction + - created_by + - evidence + - resolvedAt + - createdAt + - updatedAt + - dueAt + - message + required: + - status + - message + - data + DisputeEvidence: + type: object + required: + - customer_email + - customer_name + - customer_phone + - service_details + properties: + customer_email: + description: Customer email + type: string + customer_name: + description: Customer name + type: string + customer_phone: + description: Customer mobile number + type: string + service_details: + description: Details of service offered + type: string + delivery_address: + description: Delivery address + type: string + delivery_date: + description: ISO 8601 representation of delivery date (YYYY-MM-DD) + type: string + format: date-time + DisputeAddEvidenceResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + customer_email: + type: string + customer_name: + type: string + customer_phone: + type: string + service_details: + type: string + delivery_address: + type: string + delivery_date: + type: string + dispute: + type: integer + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - customer_email + - customer_name + - customer_phone + - service_details + - delivery_address + - delivery_date + - dispute + - id + - createdAt + - updatedAt + required: + - status + - message + - data + MiscellaneousListBanksResponseArray: + type: object + properties: + name: + type: string + slug: + type: string + code: + type: string + longcode: + type: string + gateway: + type: string + nullable: true + pay_with_bank: + type: boolean + supports_transfer: + type: boolean + active: + type: boolean + is_deleted: + type: boolean + nullable: true + country: + type: string + currency: + type: string + type: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - name + - slug + - code + - longcode + - gateway + - pay_with_bank + - supports_transfer + - active + - is_deleted + - country + - currency + - type + - id + - createdAt + - updatedAt + MiscellaneousListBanksResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/MiscellaneousListBanksResponseArray' + required: + - status + - message + - data + VerificationResolveAccountNumberResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + account_number: + type: string + account_name: + type: string + bank_id: + type: integer + required: + - account_number + - account_name + - bank_id + required: + - status + - message + - data + BankValidateRequest: + type: object + required: + - account_name + - account_number + - account_type + - bank_code + - country_code + - document_type + properties: + account_name: + description: Customer's first and last name registered with their bank + type: string + account_number: + description: Customer's account number + type: string + account_type: + description: The type of the customer's account number + type: string + enum: + - personal + - business + bank_code: + description: The bank code of the customer’s bank. You can fetch the bank codes by using our List Banks endpoint + type: string + country_code: + description: The two digit ISO code of the customer’s bank + type: string + document_type: + description: Customer’s mode of identity + type: string + enum: + - identityNumber + - passportNumber + - businessRegistrationNumber + document_number: + description: Customer’s mode of identity number + type: string + VerificationValidateAccountResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + verified: + type: boolean + verificationMessage: + type: string + required: + - verified + - verificationMessage + required: + - status + - message + - data + VerificationResolveCardBINResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + bin: + type: string + brand: + type: string + sub_brand: + type: string + country_code: + type: string + country_name: + type: string + card_type: + type: string + bank: + type: string + currency: + type: string + linked_bank_id: + type: integer + required: + - bin + - brand + - sub_brand + - country_code + - country_name + - card_type + - bank + - currency + - linked_bank_id + required: + - status + - message + - data + MiscellaneousListCountriesResponseArray: + type: object + properties: + id: + type: integer + active_for_dashboard_onboarding: + type: boolean + name: + type: string + iso_code: + type: string + default_currency_code: + type: string + integration_defaults: + type: object + calling_code: + type: string + pilot_mode: + type: boolean + relationships: + type: object + properties: + currency: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + supported_currencies: + type: object + properties: + NGN: + type: object + properties: + bank: + type: object + properties: + bank_type: + type: string + branch_code: + type: boolean + branch_code_type: + type: string + account_name: + type: boolean + account_verification_required: + type: boolean + account_number_label: + type: string + account_number_pattern: + type: object + properties: + exact_match: + type: boolean + pattern: + type: string + required: + - exact_match + - pattern + documents: + type: array + items: {} + show_account_number_tooltip: + type: boolean + required: + - bank_type + - branch_code + - branch_code_type + - account_name + - account_verification_required + - account_number_label + - account_number_pattern + - documents + - show_account_number_tooltip + required: + - bank + USD: + type: object + properties: + bank: + type: object + properties: + bank_type: + type: string + required_fields: + type: array + items: + type: string + branch_code: + type: boolean + branch_code_type: + type: string + account_name: + type: boolean + account_verification_required: + type: boolean + account_number_label: + type: string + account_number_pattern: + type: object + properties: + exact_match: + type: boolean + pattern: + type: string + required: + - exact_match + - pattern + documents: + type: array + items: {} + notices: + type: array + items: + type: string + required: + - bank_type + - required_fields + - branch_code + - branch_code_type + - account_name + - account_verification_required + - account_number_label + - account_number_pattern + - documents + - notices + required: + - bank + required: + - NGN + - USD + required: + - type + - data + - supported_currencies + integration_feature: + type: object + properties: + type: + type: string + data: + type: array + items: {} + required: + - type + - data + integration_type: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + required: + - type + - data + payment_method: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + required: + - type + - data + required: + - currency + - integration_feature + - integration_type + - payment_method + required: + - id + - active_for_dashboard_onboarding + - name + - iso_code + - default_currency_code + - integration_defaults + - calling_code + - pilot_mode + - relationships + MiscellaneousListCountriesResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/MiscellaneousListCountriesResponseArray' + required: + - status + - message + - data + MiscellaneousListStatesResponseArray: + type: object + properties: + name: + type: string + slug: + type: string + abbreviation: + type: string + required: + - name + - slug + - abbreviation + MiscellaneousListStatesResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: '#/components/schemas/MiscellaneousListStatesResponseArray' + required: + - status + - message + - data + responses: + TransactionInitializeBadRequestResponse: + description: Responses from the Transaction Initialize endpoint + content: + application/json: + schema: + $ref: '#/components/schemas/TransactionInitializeBadRequestModel' + Unauthorized: + description: Unauthorized operation + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + example: + status: false + message: Invalid key + NotFound: + description: Entity not found + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + example: + status: false + message: Entity not found + Ok: + description: Request successful + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + TerminalGetStatusSuccess: + description: Terminal Get Status response + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalGetStatusResponse' + TerminalListsSuccess: + description: Terminal Lists response + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalListsResponse' + TerminalGetSuccess: + description: Terminal Get response + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalGetResponse' + TerminalUpdateSuccess: + description: Terminal Update response + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalUpdateResponse' + TerminalCommissionDeviceSuccess: + description: Terminal Commission Device response + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalCommissionDeviceResponse' + TerminalDecommissionDeviceSuccess: + description: Terminal Decommission Device response + content: + application/json: + schema: + $ref: '#/components/schemas/TerminalDecommissionDeviceResponse' + ApplePayOkResponse: + description: Responses from the Transaction Initialize endpoint + content: + application/json: + schema: + $ref: '#/components/schemas/ApplePayCreateOkModel' + PlanListSuccess: + description: Plan List response + content: + application/json: + schema: + $ref: '#/components/schemas/PlanListResponse' + PlanCreateSuccess: + description: Plan Create response + content: + application/json: + schema: + $ref: '#/components/schemas/PlanCreateResponse' + PlanFetchSuccess: + description: Plan Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/PlanFetchResponse' + PlanUpdateSuccess: + description: Plan Update response + content: + application/json: + schema: + $ref: '#/components/schemas/PlanUpdateResponse' + SubscriptionListSuccess: + description: Subscription List response + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionListResponse' + SubscriptionCreateSuccess: + description: Subscription Create response + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionCreateResponse' + SubscriptionFetchSuccess: + description: Subscription Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionFetchResponse' + SubscriptionDisableSuccess: + description: Subscription Disable response + content: + application/json: + schema: + $ref: '#/components/schemas/SubscriptionDisableResponse' + ProductListsSuccess: + description: Product Lists response + content: + application/json: + schema: + $ref: '#/components/schemas/ProductListsResponse' + ProductCreateSuccess: + description: Product Create response + content: + application/json: + schema: + $ref: '#/components/schemas/ProductCreateResponse' + ProductFetchSuccess: + description: Product Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/ProductFetchResponse' + ProductUpdateSuccess: + description: Product Update response + content: + application/json: + schema: + $ref: '#/components/schemas/ProductUpdateResponse' + ProductDeleteSuccess: + description: Product Delete response + content: + application/json: + schema: + $ref: '#/components/schemas/ProductDeleteResponse' + StorefrontListSuccess: + description: Storefront List response + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontListResponse' + StorefrontCreateSuccess: + description: Storefront Create response + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontCreateResponse' + StorefrontFetchSuccess: + description: Storefront Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontFetchResponse' + StorefrontUpdateSuccess: + description: Storefront Update response + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontUpdateResponse' + StorefrontDeleteSuccess: + description: Storefront Delete response + content: + application/json: + schema: + $ref: '#/components/schemas/StorefrontDeleteResponse' + OrderListSuccess: + description: Order List response + content: + application/json: + schema: + $ref: '#/components/schemas/OrderListResponse' + OrderCreateSuccess: + description: Order Create response + content: + application/json: + schema: + $ref: '#/components/schemas/OrderCreateResponse' + OrderFetchSuccess: + description: Order Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/OrderFetchResponse' + OrderFetchProductSuccess: + description: Order Fetch Product response + content: + application/json: + schema: + $ref: '#/components/schemas/OrderFetchProductResponse' + OrderValidateSuccess: + description: Order Validate response + content: + application/json: + schema: + $ref: '#/components/schemas/OrderValidateResponse' + PageListSuccess: + description: Page List response + content: + application/json: + schema: + $ref: '#/components/schemas/PageListResponse' + PageCreateSuccess: + description: Page Create response + content: + application/json: + schema: + $ref: '#/components/schemas/PageCreateResponse' + PageFetchSuccess: + description: Page Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/PageFetchResponse' + PageUpdateSuccess: + description: Page Update response + content: + application/json: + schema: + $ref: '#/components/schemas/PageUpdateResponse' + PageCheckSlugAvailabilitySuccess: + description: Page Check Slug Availability response + content: + application/json: + schema: + $ref: '#/components/schemas/PageCheckSlugAvailabilityResponse' + PageAddProductsSuccess: + description: Page Add Products response + content: + application/json: + schema: + $ref: '#/components/schemas/PageAddProductsResponse' + PaymentRequestListSuccess: + description: Payment Request List response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestListResponse' + PaymentRequestCreateSuccess: + description: Payment Request Create response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestCreateResponse' + PaymentRequestUpdateSuccess: + description: Payment Request Update response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestUpdateResponse' + PaymentRequestVerifySuccess: + description: Payment Request Verify response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestVerifyResponse' + PaymentRequestSendNotificationSuccess: + description: Payment Request Send Notification response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestSendNotificationResponse' + PaymentRequestTotalSuccess: + description: Payment Request Total response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestTotalResponse' + PaymentRequestFinalizeSuccess: + description: Payment Request Finalize response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestFinalizeResponse' + PaymentRequestArchiveSuccess: + description: Payment Request Archive response + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentRequestArchiveResponse' + RefundListSuccess: + description: Refund List response + content: + application/json: + schema: + $ref: '#/components/schemas/RefundListResponse' + RefundCreateSuccess: + description: Refund Create response + content: + application/json: + schema: + $ref: '#/components/schemas/RefundCreateResponse' + RefundFetchSuccess: + description: Refund Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/RefundFetchResponse' + DisputeListSuccess: + description: Dispute List response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeListResponse' + DisputeFetchSuccess: + description: Dispute Fetch response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeFetchResponse' + DisputeUpdateSuccess: + description: Dispute Update response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeUpdateResponse' + DisputeUploadURLSuccess: + description: Dispute Upload U R L response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeUploadURLResponse' + DisputeExportSuccess: + description: Dispute Export response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeExportResponse' + DisputeListTransactionSuccess: + description: Dispute List Transaction response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeListTransactionResponse' + DisputeResolveSuccess: + description: Dispute Resolve response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeResolveResponse' + DisputeAddEvidenceSuccess: + description: Dispute Add Evidence response + content: + application/json: + schema: + $ref: '#/components/schemas/DisputeAddEvidenceResponse' + MiscellaneousListBanksSuccess: + description: Miscellaneous List Banks response + content: + application/json: + schema: + $ref: '#/components/schemas/MiscellaneousListBanksResponse' + VerificationResolveAccountNumberSuccess: + description: Verification Resolve Account Number response + content: + application/json: + schema: + $ref: '#/components/schemas/VerificationResolveAccountNumberResponse' + VerificationValidateAccountSuccess: + description: Verification Validate Account response + content: + application/json: + schema: + $ref: '#/components/schemas/VerificationValidateAccountResponse' + VerificationResolveCardBINSuccess: + description: Verification Resolve Card B I N response + content: + application/json: + schema: + $ref: '#/components/schemas/VerificationResolveCardBINResponse' + MiscellaneousListCountriesSuccess: + description: Miscellaneous List Countries response + content: + application/json: + schema: + $ref: '#/components/schemas/MiscellaneousListCountriesResponse' + MiscellaneousListStatesSuccess: + description: Miscellaneous List States response + content: + application/json: + schema: + $ref: '#/components/schemas/MiscellaneousListStatesResponse' From cc23b534f6a2ab0cb735298d15717200d24950db Mon Sep 17 00:00:00 2001 From: Damilola Odujoko Date: Fri, 15 Aug 2025 14:44:46 +0100 Subject: [PATCH 02/16] Add DD endpoints --- src/assets/base/paystack.yaml | 25786 ++++++++++------ .../CustomerWhitelistBlacklistSuccess.yaml | 2 +- .../responses/TransactionChargeSuccess.yaml | 5 - .../responses/TransactionExportSuccess.yaml | 5 - .../responses/TransactionFetchSuccess.yaml | 5 - .../TransactionInitializeSuccess.yaml | 5 - .../responses/TransactionListSuccess.yaml | 5 - .../TransactionPartialDebitSuccess.yaml | 5 - .../responses/TransactionTimelineSuccess.yaml | 5 - .../responses/TransactionTotalsSuccess.yaml | 5 - .../responses/TransactionVerifySuccess.yaml | 5 - .../schemas/BulkChargeInitiate.yaml | 14 + .../schemas/ChargeCheckPendingResponse.yaml | 119 +- .../components/schemas/ChargeCreate.yaml | 4 +- .../schemas/ChargeCreateResponse.yaml | 42 + .../schemas/ChargeSubmitAddress.yaml | 4 +- .../components/schemas/ChargeSubmitOTP.yaml | 2 +- .../schemas/ChargeSubmitOtpResponse.yaml | 118 +- .../schemas/ChargeSubmitPhoneResponse.yaml | 105 +- .../components/schemas/ChargeSubmitPin.yaml | 2 +- .../schemas/ChargeSubmitPinResponse.yaml | 118 +- ...ustomerAuthorizationInitializeRequest.yaml | 2 +- .../schemas/CustomerRiskAction.yaml | 11 +- .../components/schemas/CustomerValidate.yaml | 3 +- .../schemas/DisputeFetchResponse.yaml | 42 + .../schemas/DisputeListResponseArray.yaml | 42 + .../DisputeListTransactionResponse.yaml | 42 + .../schemas/DisputeUpdateResponse.yaml | 42 + .../MiscellaneousListBanksResponseArray.yaml | 3 + .../components/schemas/PageCreate.yaml | 4 +- .../schemas/PaymentRequestCreateResponse.yaml | 4 + .../components/schemas/ProductUpdate.yaml | 4 +- .../schemas/SplitCreateResponse.yaml | 1 - .../schemas/SplitListResponseArray.yaml | 1 + .../schemas/SubaccountListResponseArray.yaml | 3 + .../schemas/SubscriptionCreateResponse.yaml | 12 + .../schemas/SubscriptionFetchResponse.yaml | 4 + .../SubscriptionListResponseArray.yaml | 4 + .../schemas/TerminalListsResponse.yaml | 6 +- .../TransactionChargeAuthorization.yaml | 2 + .../schemas/TransactionChargeResponse.yaml | 131 - .../schemas/TransactionFetchResponse.yaml | 42 + .../schemas/TransactionInitialize.yaml | 4 +- .../schemas/TransactionListResponseArray.yaml | 53 + .../TransactionPartialDebitResponse.yaml | 41 + .../schemas/TransactionVerifyResponse.yaml | 181 - .../components/schemas/TransferBulk.yaml | 15 +- .../schemas/TransferCreateResponse.yaml | 4 + .../schemas/TransferFetchResponse.yaml | 2 +- .../components/schemas/TransferInitiate.yaml | 53 +- .../schemas/TransferListResponseArray.yaml | 10 +- .../schemas/TransferRecipientBulk.yaml | 6 +- .../schemas/TransferRecipientCreate.yaml | 7 +- .../TransferRecipientCreateResponse.yaml | 4 +- .../TransferRecipientFetchResponse.yaml | 4 +- .../TransferRecipientListResponseArray.yaml | 4 +- .../components/schemas/TransferResendOTP.yaml | 6 +- .../schemas/TransferVerifyResponse.yaml | 2 +- .../openapi/components/schemas/USSD.yaml | 8 +- .../VerificationValidateAccountResponse.yaml | 15 + src/assets/openapi/openapi.yaml | 20 +- src/assets/openapi/paths/bulkcharge.yaml | 6 +- src/views/index.html | 4 - temp/paystack.yaml | 1610 +- 64 files changed, 18146 insertions(+), 10679 deletions(-) delete mode 100644 src/assets/openapi/components/responses/TransactionChargeSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionExportSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionFetchSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionListSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml delete mode 100644 src/assets/openapi/components/responses/TransactionVerifySuccess.yaml delete mode 100644 src/assets/openapi/components/schemas/TransactionChargeResponse.yaml delete mode 100644 src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml diff --git a/src/assets/base/paystack.yaml b/src/assets/base/paystack.yaml index b8ba3b7..1346ae0 100644 --- a/src/assets/base/paystack.yaml +++ b/src/assets/base/paystack.yaml @@ -1,9 +1,8 @@ -# yaml-language-server: $schema=https://json-schema.org/draft/2020-12/schema - openapi: 3.0.1 info: title: Paystack - description: The OpenAPI specification of the Paystack API that merchants and developers can harness to build financial solutions in Africa. + description: The OpenAPI specification of the Paystack API that merchants and + developers can harness to build financial solutions in Africa. version: 1.0.0 contact: email: techsupport@paystack.com @@ -17,29 +16,34 @@ tags: description: | A collection of endpoints for managing payments x-product-name: Transactions - - name: Transaction Split - description: | - A collection of endpoints for spliting a transaction and managing the splits + - name: Split + description: > + A collection of endpoints for spliting a transaction and managing the + splits x-product-name: Transaction Splits - name: Terminal - description: | - A collection of endpoints for building delightful in-person payment experiences + description: > + A collection of endpoints for building delightful in-person payment + experiences x-product-name: Terminal - name: Customer - description: | - A collection of endpoints for creating and managing customers on an integration + description: > + A collection of endpoints for creating and managing customers on an + integration x-product-name: Customers - name: Direct Debit description: | A collection of endpoints for managing Direct Debit x-product-name: Direct Debit - name: Dedicated Virtual Account - description: | - A collection of endpoints for creating and managing payment accounts for customers + description: > + A collection of endpoints for creating and managing payment accounts for + customers x-product-name: Dedicated Virtual Accounts - name: Apple Pay - description: | - A collection of endpoints for managing application's top-level domain or subdomain accepting payment via Apple Pay + description: > + A collection of endpoints for managing application's top-level domain or + subdomain accepting payment via Apple Pay x-product-name: Apple Pay - name: Subaccount description: | @@ -82,36 +86,42 @@ tags: A collection of endpoints for gaining insights into payouts x-product-name: Settlements - name: Transfer Recipient - description: | - A collection of endpoints for creating and managing beneficiaries that you send money to + description: > + A collection of endpoints for creating and managing beneficiaries that you + send money to x-product-name: Transfer Recipients - name: Transfer description: | A collection of endpoints for automating sending money to beneficiaries x-product-name: Transfers - name: Balance - description: | - A collection of endpoints gaining insights into the amount on an integration + description: > + A collection of endpoints gaining insights into the amount on an + integration x-product-name: Balance - name: Charge - description: | - A collection of endpoints for configuring and managing the payment channels when initiating a payment + description: > + A collection of endpoints for configuring and managing the payment + channels when initiating a payment x-product-name: Charges - name: Bulk Charge - description: | - A collection of endpoints for creating and managing multiple recurring payments + description: > + A collection of endpoints for creating and managing multiple recurring + payments x-product-name: Bulk Charges - name: Integration description: | A collection of endpoints for managing some settings on an integration x-product-name: Integration - name: Refund - description: | - A collection of endpoints for creating and managing transaction reimbursement + description: > + A collection of endpoints for creating and managing transaction + reimbursement x-product-name: Refunds - name: Dispute - description: | - A collection of endpoints for managing transactions complaint made by customers + description: > + A collection of endpoints for managing transactions complaint made by + customers x-product-name: Disputes - name: Bank description: | @@ -133,17 +143,21 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransactionInitialize' + $ref: "#/components/schemas/TransactionInitialize" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransactionInitialize' + $ref: "#/components/schemas/TransactionInitialize" responses: - '200': - $ref: '#/components/responses/TransactionInitializeSuccess' - '400': - $ref: '#/components/responses/TransactionInitializeBadRequestResponse' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransactionInitializeResponse" + "400": + $ref: "#/components/responses/TransactionInitializeBadRequestResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transaction/verify/{reference}: @@ -161,12 +175,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/TransactionVerifySuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/VerifyResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transaction: @@ -184,14 +202,16 @@ paths: type: boolean - in: query name: next - description: | - An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the next set of data schema: type: string - in: query name: previous - description: | - An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the previous set of data schema: type: string - in: query @@ -203,7 +223,7 @@ paths: name: page schema: type: integer - description: Used to indicate the offeset to retrieve data from + description: The offset to retrieve data from - in: query name: from description: The start date @@ -217,53 +237,64 @@ paths: type: string format: date-time - in: query - name: channel - description: The payment method the customer used to complete the transaction + name: status + description: Filter transaction by status schema: type: string enum: - - card + - success + - failed + - abandoned + - reversed + - in: query + name: source + description: The origin of the payment + schema: + type: string + enum: + - merchantApi + - checkout - pos - - bank - - dedicated_nuban - - ussd - - bank_transfer + - virtualTerminal - in: query name: terminal_id - description: The terminal ID to filter all transactions from a terminal + description: Filter transactions by a terminal ID + schema: + type: string + - in: query + name: virtual_account_number + description: Filter transactions by a virtual account number schema: type: string - in: query name: customer_code - description: The customer code to filter all transactions from a customer + description: Filter transactions by a customer code schema: type: string - in: query name: amount - description: Filter transactions by a certain amount + description: Filter transactions by a specific amount schema: type: integer format: int64 - in: query - name: status - description: Filter transaction by status + name: settlement + description: The settlement ID to filter for settled transactions schema: - type: string - enum: - - success - - failed - - abandoned - - reversed + type: integer + format: int64 - in: query - name: source - description: The origin of the payment + name: channel + description: The payment method the customer used to complete the transaction schema: type: string enum: - - merchantApi - - checkout + - card - pos - - virtualTerminal + - bank + - dedicated_nuban + - ussd + - bank_transfer - in: query name: subaccount_code description: Filter transaction by subaccount code @@ -274,19 +305,17 @@ paths: description: Filter transaction by split code schema: type: string - - in: query - name: settlement - description: The settlement ID to filter for settled transactions - schema: - type: integer - format: int64 responses: - '200': - $ref: '#/components/responses/TransactionListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransactionListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transaction/{id}: @@ -304,12 +333,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/TransactionFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransactionFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transaction/timeline/{id}: @@ -318,7 +351,8 @@ paths: - Transaction summary: Fetch Transaction Timeline operationId: transaction_timeline - description: Get the details about the lifecycle of a transaction from initiation to completion + description: Get the details about the lifecycle of a transaction from + initiation to completion parameters: - name: id in: path @@ -328,12 +362,16 @@ paths: format: int64 example: 3936799950 responses: - '200': - $ref: '#/components/responses/TransactionTimelineSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransactionTimelineResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transaction/totals: @@ -350,21 +388,25 @@ paths: schema: type: string format: date-time - example: '2024-06-01T00:00:01Z' + example: 2024-06-01T00:00:01Z - in: query name: to description: The end date schema: type: string format: date-time - example: '2024-06-30T13:36:54Z' + example: 2024-06-30T13:36:54Z responses: - '200': - $ref: '#/components/responses/TransactionTotalsSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransactionTotalsResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transaction/export: @@ -372,7 +414,8 @@ paths: tags: - Transaction summary: Export Transactions - operationId: transaction_download + operationId: transaction_export + x-operationId: transaction_exportTransaction parameters: - in: query name: from @@ -380,14 +423,14 @@ paths: schema: type: string format: date-time - example: '2024-06-01T00:00:01Z' + example: 2024-06-01T00:00:01Z - in: query name: to description: The end date schema: type: string format: date-time - example: '2024-06-30T13:36:54Z' + example: 2024-06-30T13:36:54Z - in: query name: status description: Filter by the status of the transaction @@ -402,10 +445,10 @@ paths: example: success - in: query name: customer - description: Filter by customer code + description: Filter by customer ID schema: - type: string - example: CUS_eqt26928wowif7z + type: number + example: 123172416 - in: query name: subaccount_code description: Filter by subaccount code @@ -420,12 +463,16 @@ paths: format: int64 example: 5687910 responses: - '200': - $ref: '#/components/responses/TransactionExportSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransactionExportResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transaction/charge_authorization: @@ -438,15 +485,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransactionChargeAuthorization' + $ref: "#/components/schemas/TransactionChargeAuthorization" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransactionChargeAuthorization' + $ref: "#/components/schemas/TransactionChargeAuthorization" responses: - '200': - $ref: '#/components/responses/TransactionChargeSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ChargeAuthorizationResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transaction/partial_debit: @@ -459,15 +510,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransactionPartialDebit' + $ref: "#/components/schemas/TransactionPartialDebit" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransactionPartialDebit' + $ref: "#/components/schemas/TransactionPartialDebit" responses: - '200': - $ref: '#/components/responses/TransactionPartialDebitSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransactionPartialDebitResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transaction/{id}/event: @@ -485,12 +540,12 @@ paths: format: int64 example: 3936799950 responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transaction/{id}/session: @@ -508,12 +563,12 @@ paths: format: int64 example: 3936799950 responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /split: @@ -526,58 +581,76 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SplitCreate' + $ref: "#/components/schemas/SplitCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SplitCreate' + $ref: "#/components/schemas/SplitCreate" responses: - '200': - $ref: '#/components/responses/SplitCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SplitCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: tags: - Split - summary: List/Search Splits + summary: List Splits operationId: split_list parameters: - name: name + description: The name of the split in: query schema: type: string - name: active + description: The status of the split in: query schema: - type: string - - name: sort_by - in: query + type: boolean + - in: query + name: per_page schema: - type: string - - name: from - in: query + type: integer + description: The number of records to fetch per request + - in: query + name: page schema: - type: string - - name: to - in: query + type: integer + description: The offset to retrieve data from + - in: query + name: from + description: The start date schema: type: string - - name: perPage - in: query + format: date-time + - in: query + name: to + description: The end date schema: type: string - - name: page - in: query + format: date-time + - in: query + name: subaccount_code + description: Filter by subaccount code schema: type: string + example: ACCT_dskvlw3y3dMukmt responses: - '200': - $ref: '#/components/responses/SplitListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SplitListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /split/{id}: @@ -593,12 +666,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/SplitFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SplitFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -610,10 +687,10 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SplitUpdate' + $ref: "#/components/schemas/SplitUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SplitUpdate' + $ref: "#/components/schemas/SplitUpdate" parameters: - name: id in: path @@ -621,12 +698,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/SplitUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SplitUpdateResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /split/{id}/subaccount/add: @@ -639,10 +720,10 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SplitSubaccounts' + $ref: "#/components/schemas/SplitSubaccounts" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SplitSubaccounts' + $ref: "#/components/schemas/SplitSubaccounts" parameters: - name: id in: path @@ -651,10 +732,14 @@ paths: type: string example: application/json responses: - '200': - $ref: '#/components/responses/SplitAddUpdateSubaccountSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SplitAddUpdateSubaccountResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /split/{id}/subaccount/remove: @@ -667,10 +752,10 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SplitSubaccounts' + $ref: "#/components/schemas/SplitSubaccounts" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SplitSubaccounts' + $ref: "#/components/schemas/SplitSubaccounts" parameters: - name: id in: path @@ -678,10 +763,14 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/SplitRemoveSubaccountSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SplitRemoveSubaccountResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /terminal/{id}/event: @@ -702,15 +791,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TerminalSendEvent' + $ref: "#/components/schemas/TerminalSendEvent" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TerminalSendEvent' + $ref: "#/components/schemas/TerminalSendEvent" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /terminal/{terminal_id}/event/{event_id}: @@ -734,12 +823,12 @@ paths: type: string example: 616d721e8c5cd40a0cdd54a6 responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /terminal/{terminal_id}/presence: @@ -757,12 +846,12 @@ paths: type: string example: Z0R4orOU responses: - '200': - $ref: '#/components/responses/TerminalGetStatusSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/TerminalGetStatusSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /terminal: @@ -786,12 +875,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/TerminalListsSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/TerminalListsSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /terminal/{terminal_id}: @@ -808,12 +897,12 @@ paths: description: Get the details of a Terminal operationId: terminal_fetch responses: - '200': - $ref: '#/components/responses/TerminalGetSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/TerminalGetSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -825,17 +914,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TerminalUpate' + $ref: "#/components/schemas/TerminalUpate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TerminalUpate' + $ref: "#/components/schemas/TerminalUpate" responses: - '200': - $ref: '#/components/responses/TerminalUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/TerminalUpdateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /terminal/commission_device: @@ -849,15 +938,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TerminalActivationToggle' + $ref: "#/components/schemas/TerminalActivationToggle" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TerminalActivationToggle' + $ref: "#/components/schemas/TerminalActivationToggle" responses: - '200': - $ref: '#/components/responses/TerminalCommissionDeviceSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/TerminalCommissionDeviceSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /terminal/decommission_device: @@ -871,15 +960,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TerminalActivationToggle' + $ref: "#/components/schemas/TerminalActivationToggle" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TerminalActivationToggle' + $ref: "#/components/schemas/TerminalActivationToggle" responses: - '200': - $ref: '#/components/responses/TerminalDecommissionDeviceSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/TerminalDecommissionDeviceSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /customer: @@ -892,15 +981,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/CustomerCreate' + $ref: "#/components/schemas/CustomerCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/CustomerCreate' + $ref: "#/components/schemas/CustomerCreate" responses: - '200': - $ref: '#/components/responses/CustomerCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/CustomerCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -911,40 +1004,57 @@ paths: description: List customers on your integration parameters: - name: use_cursor + description: A flag to indicate if cursor based pagination should be used in: query schema: type: boolean - name: next + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the next set of data in: query schema: type: string - name: previous + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the previous set of data in: query schema: type: string - name: from + description: The start date in: query schema: type: string + format: date-time - name: to + description: The end date in: query schema: type: string + format: date-time - name: perPage + description: The number of records to fetch per request in: query schema: type: string - name: page in: query + description: The offset to retrieve data from schema: type: string responses: - '200': - $ref: '#/components/responses/CustomerListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/CustomerListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /customer/{code}: @@ -960,12 +1070,16 @@ paths: summary: Fetch Customer operationId: customer_fetch responses: - '200': - $ref: '#/components/responses/CustomerFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/CustomerFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -977,39 +1091,47 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/CustomerUpdate' + $ref: "#/components/schemas/CustomerUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/CustomerUpdate' + $ref: "#/components/schemas/CustomerUpdate" responses: - '200': - $ref: '#/components/responses/CustomerUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/CustomerUpdateResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /customer/set_risk_action: post: tags: - Customer - summary: White/blacklist Customer + summary: Set Risk Action description: Set customer's risk action by whitelisting or blacklisting the customer operationId: customer_riskAction requestBody: content: application/json: schema: - $ref: '#/components/schemas/CustomerRiskAction' + $ref: "#/components/schemas/CustomerRiskAction" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/CustomerRiskAction' + $ref: "#/components/schemas/CustomerRiskAction" responses: - '200': - $ref: '#/components/responses/CustomerWhitelistBlacklistSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/CustomerWhitelistBlacklistResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /customer/deactivate_authorization: @@ -1023,15 +1145,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/CustomerDeactivateAuthorization' + $ref: "#/components/schemas/CustomerDeactivateAuthorization" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/CustomerDeactivateAuthorization' + $ref: "#/components/schemas/CustomerDeactivateAuthorization" responses: - '200': - $ref: '#/components/responses/CustomerDeactivateAuthorizationSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/CustomerDeactivateAuthorizationResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /customer/{code}/identification: @@ -1051,41 +1177,228 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/CustomerValidate' + $ref: "#/components/schemas/CustomerValidate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/CustomerValidate' + $ref: "#/components/schemas/CustomerValidate" responses: - '202': - $ref: '#/components/responses/CustomerValidateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "202": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/CustomerValidateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error - /dedicated_account: + /customer/authorization/initialize: post: tags: - - Dedicated Virtual Account - summary: Create Dedicated Account - operationId: dedicatedAccount_create + - Customer + summary: Initialize Authorization + description: Initiate a request to create a reusable authorization code for recurring transactions + operationId: customer_initializeAuthorization requestBody: + required: true content: application/json: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountCreate' + $ref: '#/components/schemas/CustomerAuthorizationInitializeRequest' application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountCreate' + $ref: '#/components/schemas/CustomerAuthorizationInitializeRequest' responses: '200': - $ref: '#/components/responses/DedicatedNubanCreateSuccess' + $ref: '#/components/responses/CustomerAuthorizationInitializeSuccess' '401': $ref: '#/components/responses/Unauthorized' default: description: Server error + /customer/authorization/verify/{reference}: get: tags: - - Dedicated Virtual Account + - Customer + summary: Verify Authorization + description: Check the status of an authorization request + operationId: customer_verifyAuthorization + parameters: + - name: reference + in: path + description: The reference returned in the initialization response + required: true + schema: + type: string + responses: + '200': + $ref: '#/components/responses/CustomerAuthorizationVerifySuccess' + '401': + $ref: '#/components/responses/Unauthorized' + '404': + $ref: '#/components/responses/NotFound' + default: + description: Server error + /customer/{id}/initialize-direct-debit: + parameters: + - name: id + in: path + required: true + schema: + type: string + description: The ID of the customer to initialize the direct debit for + post: + tags: + - Customer + summary: Initialize Direct Debit + operationId: customer_initializeDirectDebit + description: Initialize the process of linking an account to a customer for Direct Debit transactions + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerInitializeDirectDebitRequest' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/CustomerInitializeDirectDebitRequest' + responses: + '200': + $ref: '#/components/responses/CustomerInitializeDirectDebitSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /customer/{id}/directdebit-activation-charge: + put: + tags: + - Customer + summary: Direct Debit Activation Charge + operationId: customer_directDebitActivationCharge + description: Trigger an activation charge on an inactive mandate on behalf of your customer + parameters: + - name: id + in: path + required: true + schema: + type: integer + description: The customer ID attached to the authorization + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CustomerDirectDebitActivationChargeRequest' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/CustomerDirectDebitActivationChargeRequest' + responses: + '200': + $ref: '#/components/responses/CustomerDirectDebitActivationChargeSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /customer/{id}/directdebit-mandate-authorizations: + get: + tags: + - Customer + summary: Fetch Mandate Authorizations + operationId: customer_fetchMandateAuthorizations + description: Get the list of direct debit mandates associated with a customer + parameters: + - name: id + in: path + required: true + schema: + type: string + description: The customer ID for the authorizations to fetch + responses: + '200': + $ref: '#/components/responses/CustomerFetchMandateAuthorizationsSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /directdebit/activation-charge: + put: + tags: + - Direct Debit + summary: Trigger Activation Charge + description: Trigger activation charge for specified customers + operationId: directdebit_triggerActivationCharge + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DirectDebitActivationChargeRequest' + responses: + '200': + $ref: '#/components/responses/DirectDebitActivationChargeSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /directdebit/mandate-authorizations: + get: + tags: + - Direct Debit + summary: List Mandate Authorizations + description: Get a list of all the direct debit mandates on your integration + operationId: directdebit_listMandateAuthorizations + parameters: + - name: cursor + in: query + description: The cursor value of the next set of authorizations to fetch. You can get this from the meta object of the response + schema: + type: string + - name: status + in: query + description: Filter by the authorization status + schema: + type: string + enum: + - pending + - active + - revoked + - name: per_page + in: query + description: The number of authorizations to fetch per request + schema: + type: integer + responses: + '200': + $ref: '#/components/responses/CustomerFetchMandateAuthorizationsSuccess' + '401': + $ref: '#/components/responses/Unauthorized' + default: + description: Server error + /dedicated_account: + post: + tags: + - Dedicated Virtual Account + summary: Create Dedicated Account + operationId: dedicatedAccount_create + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/DedicatedVirtualAccountCreate" + application/x-www-form-urlencoded: + schema: + $ref: "#/components/schemas/DedicatedVirtualAccountCreate" + responses: + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/DedicatedNubanCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" + default: + description: Server error + get: + tags: + - Dedicated Virtual Account summary: List Dedicated Accounts operationId: dedicatedAccount_list parameters: @@ -1122,12 +1435,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/DedicatedNubanFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/DedicatedNubanListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dedicated_account/assign: @@ -1140,15 +1457,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountAssign' + $ref: "#/components/schemas/DedicatedVirtualAccountAssign" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountAssign' + $ref: "#/components/schemas/DedicatedVirtualAccountAssign" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /dedicated_account/{account_id}: @@ -1164,12 +1481,16 @@ paths: summary: Fetch Dedicated Account operationId: dedicatedAccount_fetch responses: - '200': - $ref: '#/components/responses/DedicatedNubanFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/DedicatedNubanFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error delete: @@ -1178,12 +1499,16 @@ paths: summary: Deactivate Dedicated Account operationId: dedicatedAccount_deactivate responses: - '200': - $ref: '#/components/responses/DedicatedNubanDeactivateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/DedicatedNubanDeactivateResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dedicated_account/requery: @@ -1209,12 +1534,12 @@ paths: summary: Requery Dedicated Account operationId: dedicatedAccount_requery responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dedicated_account/split: @@ -1227,15 +1552,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + $ref: "#/components/schemas/DedicatedVirtualAccountSplit" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + $ref: "#/components/schemas/DedicatedVirtualAccountSplit" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error delete: @@ -1247,17 +1572,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + $ref: "#/components/schemas/DedicatedVirtualAccountSplit" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/DedicatedVirtualAccountSplit' + $ref: "#/components/schemas/DedicatedVirtualAccountSplit" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dedicated_account/available_providers: @@ -1267,12 +1592,12 @@ paths: summary: Fetch Bank Providers operationId: dedicatedAccount_availableProviders responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /apple-pay/domain: @@ -1286,15 +1611,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ApplePayParam' + $ref: "#/components/schemas/ApplePayParam" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ApplePayParam' + $ref: "#/components/schemas/ApplePayParam" responses: - '200': - $ref: '#/components/responses/ApplePayOkResponse' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/ApplePayOkResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -1317,35 +1642,37 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error delete: tags: - Apple Pay summary: Unregister Domain - description: Unregister a top-level domain or subdomain previously used for your Apple Pay integration. + description: + Unregister a top-level domain or subdomain previously used for your + Apple Pay integration. operationId: applePay_unregisterDomain requestBody: content: application/json: schema: - $ref: '#/components/schemas/ApplePayParam' + $ref: "#/components/schemas/ApplePayParam" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ApplePayParam' + $ref: "#/components/schemas/ApplePayParam" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /subaccount: @@ -1358,15 +1685,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SubaccountCreate' + $ref: "#/components/schemas/SubaccountCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SubaccountCreate' + $ref: "#/components/schemas/SubaccountCreate" responses: - '200': - $ref: '#/components/responses/SubaccountCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "201": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SubaccountCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -1379,31 +1710,28 @@ paths: name: perPage schema: type: integer - description: Number of records to fetch per page + description: Number of records to fetch per request - in: query name: page schema: type: integer - description: The section to retrieve - - in: query - name: from - schema: - type: string - format: date-time - description: The start date + description: The offset to retrieve data from - in: query - name: to + name: active schema: - type: string - format: date-time - description: The end date + type: boolean + description: Filter by active or inactive subaccounts responses: - '200': - $ref: '#/components/responses/SubaccountListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SubaccountListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /subaccount/{code}: @@ -1419,12 +1747,16 @@ paths: summary: Fetch Subaccount operationId: subaccount_fetch responses: - '200': - $ref: '#/components/responses/SubaccountFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SubaccountFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -1436,17 +1768,21 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SubaccountUpdate' + $ref: "#/components/schemas/SubaccountUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SubaccountUpdate' + $ref: "#/components/schemas/SubaccountUpdate" responses: - '200': - $ref: '#/components/responses/SubaccountUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/SubaccountUpdateResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /plan: @@ -1459,15 +1795,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PlanCreate' + $ref: "#/components/schemas/PlanCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/PlanCreate' + $ref: "#/components/schemas/PlanCreate" responses: - '200': - $ref: '#/components/responses/PlanCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/PlanCreateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -1509,12 +1845,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/PlanListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PlanListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /plan/{code}: @@ -1530,12 +1866,12 @@ paths: summary: Fetch Plan operationId: plan_fetch responses: - '200': - $ref: '#/components/responses/PlanFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PlanFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -1547,17 +1883,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PlanUpdate' + $ref: "#/components/schemas/PlanUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/PlanUpdate' + $ref: "#/components/schemas/PlanUpdate" responses: - '200': - $ref: '#/components/responses/PlanUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PlanUpdateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /subscription: @@ -1570,15 +1906,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SubscriptionCreate' + $ref: "#/components/schemas/SubscriptionCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SubscriptionCreate' + $ref: "#/components/schemas/SubscriptionCreate" responses: - '200': - $ref: '#/components/responses/SubscriptionCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/SubscriptionCreateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -1620,12 +1956,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/SubscriptionListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/SubscriptionListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /subscription/{code}: @@ -1641,12 +1977,12 @@ paths: summary: Fetch Subscription operationId: subscription_fetch responses: - '200': - $ref: '#/components/responses/SubscriptionFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/SubscriptionFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /subscription/disable: @@ -1659,15 +1995,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SubscriptionToggle' + $ref: "#/components/schemas/SubscriptionToggle" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SubscriptionToggle' + $ref: "#/components/schemas/SubscriptionToggle" responses: - '200': - $ref: '#/components/responses/SubscriptionDisableSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/SubscriptionDisableSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /subscription/enable: @@ -1680,15 +2016,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SubscriptionToggle' + $ref: "#/components/schemas/SubscriptionToggle" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/SubscriptionToggle' + $ref: "#/components/schemas/SubscriptionToggle" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /subscription/{code}/manage/link: @@ -1704,10 +2040,10 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /subscription/{code}/manage/email: @@ -1723,10 +2059,10 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /product: @@ -1739,15 +2075,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ProductCreate' + $ref: "#/components/schemas/ProductCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ProductCreate' + $ref: "#/components/schemas/ProductCreate" responses: - '201': - $ref: '#/components/responses/ProductCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "201": + $ref: "#/components/responses/ProductCreateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -1781,12 +2117,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/ProductListsSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/ProductListsSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /product/{id}: @@ -1802,12 +2138,12 @@ paths: summary: Fetch Product operationId: product_fetch responses: - '200': - $ref: '#/components/responses/ProductFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/ProductFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -1819,17 +2155,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ProductUpdate' + $ref: "#/components/schemas/ProductUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ProductUpdate' + $ref: "#/components/schemas/ProductUpdate" responses: - '200': - $ref: '#/components/responses/ProductUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/ProductUpdateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error delete: @@ -1838,12 +2174,12 @@ paths: summary: Delete Product operationId: product_delete responses: - '200': - $ref: '#/components/responses/ProductDeleteSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/ProductDeleteSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /storefront: @@ -1856,15 +2192,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/StorefrontCreate' + $ref: "#/components/schemas/StorefrontCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/StorefrontCreate' + $ref: "#/components/schemas/StorefrontCreate" responses: - '200': - $ref: '#/components/responses/StorefrontCreateSuccess' - '400': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/StorefrontCreateSuccess" + "400": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -1889,12 +2225,12 @@ paths: - active - inactive responses: - '200': - $ref: '#/components/responses/StorefrontListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/StorefrontListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /storefront/{id}: @@ -1910,12 +2246,12 @@ paths: summary: Fetch Storefront operationId: storefront_fetch responses: - '200': - $ref: '#/components/responses/StorefrontFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/StorefrontFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -1927,17 +2263,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/StorefrontUpdate' + $ref: "#/components/schemas/StorefrontUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/StorefrontUpdate' + $ref: "#/components/schemas/StorefrontUpdate" responses: - '200': - $ref: '#/components/responses/StorefrontUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/StorefrontUpdateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error delete: @@ -1946,12 +2282,12 @@ paths: summary: Delete Storefront operationId: storefront_delete responses: - '200': - $ref: '#/components/responses/StorefrontDeleteSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/StorefrontDeleteSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /storefront/verify/{slug}: @@ -1967,12 +2303,12 @@ paths: summary: Verify Storefront Slug operationId: storefront_verifySlug responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /storefront/{id}/order: @@ -1990,10 +2326,10 @@ paths: type: string example: Z0R4orOU responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /storefront/{id}/product: @@ -2012,17 +2348,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/StorefrontAddProducts' + $ref: "#/components/schemas/StorefrontAddProducts" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/StorefrontAddProducts' + $ref: "#/components/schemas/StorefrontAddProducts" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error get: @@ -2031,12 +2367,12 @@ paths: summary: List Products in Storefront operationId: storefront_listProducts responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /storefront/{id}/publish: @@ -2052,12 +2388,12 @@ paths: summary: Publish Storefront operationId: storefront_publish responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /storefront/{id}/duplicate: @@ -2073,12 +2409,12 @@ paths: summary: Duplicate Storefront operationId: storefront_duplicate responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /order: @@ -2091,15 +2427,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/OrderCreate' + $ref: "#/components/schemas/OrderCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/OrderCreate' + $ref: "#/components/schemas/OrderCreate" responses: - '200': - $ref: '#/components/responses/OrderCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/OrderCreateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -2131,12 +2467,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/OrderListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/OrderListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /order/{id}: @@ -2152,12 +2488,12 @@ paths: summary: Fetch Order operationId: order_fetch responses: - '200': - $ref: '#/components/responses/OrderFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/OrderFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /order/product/{id}: @@ -2173,12 +2509,12 @@ paths: summary: Fetch Products Order operationId: order_fetchProducts responses: - '200': - $ref: '#/components/responses/OrderFetchProductSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/OrderFetchProductSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /order/{code}/validate: @@ -2194,12 +2530,12 @@ paths: summary: Validate pay for me order operationId: order_validatePayForMe responses: - '200': - $ref: '#/components/responses/OrderValidateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/OrderValidateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /page: @@ -2212,15 +2548,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PageCreate' + $ref: "#/components/schemas/PageCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/PageCreate' + $ref: "#/components/schemas/PageCreate" responses: - '200': - $ref: '#/components/responses/PageCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/PageCreateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -2252,12 +2588,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/PageListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PageListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /page/{id}: @@ -2273,12 +2609,12 @@ paths: summary: Fetch Page operationId: page_fetch responses: - '200': - $ref: '#/components/responses/PageFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PageFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -2290,17 +2626,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PageUpdate' + $ref: "#/components/schemas/PageUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/PageUpdate' + $ref: "#/components/schemas/PageUpdate" responses: - '200': - $ref: '#/components/responses/PageUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PageUpdateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /page/check_slug_availability/{slug}: @@ -2316,12 +2652,12 @@ paths: summary: Check Slug Availability operationId: page_checkSlugAvailability responses: - '200': - $ref: '#/components/responses/PageCheckSlugAvailabilitySuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PageCheckSlugAvailabilitySuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /page/{id}/product: @@ -2340,15 +2676,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PageProduct' + $ref: "#/components/schemas/PageProduct" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/PageProduct' + $ref: "#/components/schemas/PageProduct" responses: - '200': - $ref: '#/components/responses/PageAddProductsSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/PageAddProductsSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /paymentrequest: @@ -2361,15 +2697,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestCreate' + $ref: "#/components/schemas/PaymentRequestCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/PaymentRequestCreate' + $ref: "#/components/schemas/PaymentRequestCreate" responses: - '200': - $ref: '#/components/responses/PaymentRequestCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/PaymentRequestCreateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -2402,7 +2738,9 @@ paths: name: currency schema: type: string - description: If your integration supports more than one currency, choose the one to filter + description: + If your integration supports more than one currency, choose the one + to filter - in: query name: from schema: @@ -2416,12 +2754,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/PaymentRequestListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PaymentRequestListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /paymentrequest/{id}: @@ -2437,12 +2775,12 @@ paths: summary: Fetch Payment Request operationId: paymentRequest_fetch responses: - '200': - $ref: '#/components/responses/PaymentRequestListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PaymentRequestListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -2454,17 +2792,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestUpdate' + $ref: "#/components/schemas/PaymentRequestUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/PaymentRequestUpdate' + $ref: "#/components/schemas/PaymentRequestUpdate" responses: - '200': - $ref: '#/components/responses/PaymentRequestUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PaymentRequestUpdateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /paymentrequest/verify/{id}: @@ -2480,12 +2818,12 @@ paths: summary: Verify Payment Request operationId: paymentRequest_verify responses: - '200': - $ref: '#/components/responses/PaymentRequestVerifySuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PaymentRequestVerifySuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /paymentrequest/notify/{id}: @@ -2501,10 +2839,10 @@ paths: summary: Send Notification operationId: paymentRequest_notify responses: - '200': - $ref: '#/components/responses/PaymentRequestSendNotificationSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/PaymentRequestSendNotificationSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /paymentrequest/totals: @@ -2514,12 +2852,12 @@ paths: summary: Payment Request Total operationId: paymentRequest_totals responses: - '200': - $ref: '#/components/responses/PaymentRequestTotalSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/PaymentRequestTotalSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /paymentrequest/finalize/{id}: @@ -2535,10 +2873,10 @@ paths: summary: Finalize Payment Request operationId: paymentRequest_finalize responses: - '200': - $ref: '#/components/responses/PaymentRequestFinalizeSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/PaymentRequestFinalizeSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /paymentrequest/archive/{id}: @@ -2554,10 +2892,10 @@ paths: summary: Archive Payment Request operationId: paymentRequest_archive responses: - '200': - $ref: '#/components/responses/PaymentRequestArchiveSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/PaymentRequestArchiveSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /settlement: @@ -2578,12 +2916,12 @@ paths: type: integer example: 2 responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /settlement/{id}/transaction: @@ -2599,12 +2937,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transferrecipient: @@ -2617,15 +2955,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientCreate' + $ref: "#/components/schemas/TransferRecipientCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferRecipientCreate' + $ref: "#/components/schemas/TransferRecipientCreate" responses: - '201': - $ref: '#/components/responses/TransferRecipientCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "201": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferRecipientCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -2635,34 +2977,45 @@ paths: operationId: transferrecipient_list parameters: - in: query - name: perPage + name: use_cursor + description: A flag to indicate if cursor based pagination should be used schema: - type: integer - description: Number of records to fetch per page + type: boolean - in: query - name: page + name: next + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the next set of data schema: - type: integer - description: The section to retrieve + type: string - in: query - name: from + name: previous + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the previous set of data schema: type: string - format: date-time - description: The start date - in: query - name: to + name: per_page schema: - type: string - format: date-time - description: The end date + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from responses: - '200': - $ref: '#/components/responses/TransferRecipientListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferRecipientListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transferrecipient/bulk: @@ -2675,15 +3028,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientBulk' + $ref: "#/components/schemas/TransferRecipientBulk" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferRecipientBulk' + $ref: "#/components/schemas/TransferRecipientBulk" responses: - '200': - $ref: '#/components/responses/TransferRecipientBulkCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferRecipientBulkCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transferrecipient/{code}: @@ -2700,12 +3057,16 @@ paths: summary: Fetch Transfer recipient operationId: transferrecipient_fetch responses: - '200': - $ref: '#/components/responses/TransferRecipientFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferRecipientFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -2717,17 +3078,21 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientUpdate' + $ref: "#/components/schemas/TransferRecipientUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferRecipientUpdate' + $ref: "#/components/schemas/TransferRecipientUpdate" responses: - '200': - $ref: '#/components/responses/TransferRecipientUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferRecipientUpdateResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error delete: @@ -2736,12 +3101,16 @@ paths: summary: Delete Transfer Recipient operationId: transferrecipient_delete responses: - '200': - $ref: '#/components/responses/TransferRecipientDeleteSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferRecipientDeleteResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transfer: @@ -2754,15 +3123,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransferInitiate' + $ref: "#/components/schemas/TransferInitiate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferInitiate' + $ref: "#/components/schemas/TransferInitiate" responses: - '200': - $ref: '#/components/responses/TransferCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -2772,38 +3145,78 @@ paths: operationId: transfer_list parameters: - in: query - name: perPage + name: use_cursor + description: A flag to indicate if cursor based pagination should be used schema: - type: integer - description: Number of records to fetch per page + type: boolean - in: query - name: page + name: next + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the next set of data schema: - type: integer - description: The section to retrieve + type: string - in: query - name: status + name: previous + description: > + An alphanumeric value returned for every cursor based retrieval, + used to retrieve the previous set of data schema: type: string + - in: query + name: per_page + schema: + type: integer + description: The number of records to fetch per request + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from - in: query name: from + description: The start date schema: type: string format: date-time - description: The start date - in: query name: to + description: The end date schema: type: string format: date-time - description: The end date + - in: query + name: recipient + description: Filter transfer by the recipient code + schema: + type: string + - in: query + name: status + description: Filter transfer by status + schema: + type: string + default: pending + enum: + - pending + - success + - failed + - otp + - abandoned + - reversed + - blocked + - rejected + - received responses: - '200': - $ref: '#/components/responses/TransferListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transfer/finalize_transfer: @@ -2816,15 +3229,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransferFinalize' + $ref: "#/components/schemas/TransferFinalize" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferFinalize' + $ref: "#/components/schemas/TransferFinalize" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transfer/bulk: @@ -2837,15 +3250,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransferBulk' + $ref: "#/components/schemas/TransferBulk" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferBulk' + $ref: "#/components/schemas/TransferBulk" responses: - '200': - $ref: '#/components/responses/TransferBulkSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferBulkResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transfer/{code}: @@ -2862,12 +3279,16 @@ paths: summary: Fetch Transfer operationId: transfer_fetch responses: - '200': - $ref: '#/components/responses/TransferFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transfer/verify/{reference}: @@ -2883,12 +3304,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/TransferVerifySuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferVerifyResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transfer/export: @@ -2896,22 +3321,29 @@ paths: tags: - Transfer summary: Export Transfers - operationId: transfer_download + operationId: transfer_exportTransfer parameters: - in: query - name: perPage - schema: - type: integer - description: Number of records to fetch per page - - in: query - name: page + name: recipient + description: Export transfer by the recipient code schema: - type: integer - description: The section to retrieve + type: string - in: query name: status + description: Export transfer by status schema: type: string + default: pending + enum: + - pending + - success + - failed + - otp + - abandoned + - reversed + - blocked + - rejected + - received - in: query name: from schema: @@ -2925,12 +3357,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /transfer/resend_otp: @@ -2943,49 +3375,61 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/TransferResendOTP' + $ref: "#/components/schemas/TransferResendOTP" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferResendOTP' + $ref: "#/components/schemas/TransferResendOTP" responses: - '200': - $ref: '#/components/responses/TransferResendsOtpSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferResendsOtpResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transfer/disable_otp: post: tags: - Transfer - summary: Disable OTP requirement for Transfers + summary: Disable OTP for Transfers operationId: transfer_disableOtp responses: - '200': - $ref: '#/components/responses/TransferDisablesOtpSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferDisablesOtpResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transfer/disable_otp_finalize: post: tags: - Transfer - summary: Finalize Disabling of OTP requirement for Transfers + summary: Finalize Disabling OTP for Transfers operationId: transfer_disableOtpFinalize requestBody: content: application/json: schema: - $ref: '#/components/schemas/TransferFinalizeDisableOTP' + $ref: "#/components/schemas/TransferFinalizeDisableOTP" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/TransferFinalizeDisableOTP' + $ref: "#/components/schemas/TransferFinalizeDisableOTP" responses: - '200': - $ref: '#/components/responses/TransferFinalizeDisablesOtpSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferFinalizeDisablesOtpResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /transfer/enable_otp: @@ -2995,10 +3439,14 @@ paths: summary: Enable OTP requirement for Transfers operationId: transfer_enableOtp responses: - '200': - $ref: '#/components/responses/TransferEnablesOtpSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/TransferEnablesOtpResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /balance: @@ -3009,12 +3457,16 @@ paths: operationId: balance_fetch description: You can only transfer from what you have responses: - '200': - $ref: '#/components/responses/BalanceCheckSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BalanceCheckResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /balance/ledger: @@ -3047,12 +3499,16 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/BalanceFetchLedgerSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BalanceFetchLedgerResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /charge: @@ -3066,48 +3522,52 @@ paths: application/json: schema: allOf: - - $ref: '#/components/schemas/ChargeCreate' + - $ref: "#/components/schemas/ChargeCreate" - type: object properties: bank: - $ref: '#/components/schemas/Bank' + $ref: "#/components/schemas/Bank" - type: object properties: mobile_money: - $ref: '#/components/schemas/MobileMoney' + $ref: "#/components/schemas/MobileMoney" - type: object properties: ussd: - $ref: '#/components/schemas/USSD' + $ref: "#/components/schemas/USSD" - type: object properties: eft: - $ref: '#/components/schemas/EFT' + $ref: "#/components/schemas/EFT" application/x-www-form-urlencoded: schema: allOf: - - $ref: '#/components/schemas/ChargeCreate' + - $ref: "#/components/schemas/ChargeCreate" - type: object properties: bank: - $ref: '#/components/schemas/Bank' + $ref: "#/components/schemas/Bank" - type: object properties: mobile_money: - $ref: '#/components/schemas/MobileMoney' + $ref: "#/components/schemas/MobileMoney" - type: object properties: ussd: - $ref: '#/components/schemas/USSD' + $ref: "#/components/schemas/USSD" - type: object properties: eft: - $ref: '#/components/schemas/EFT' + $ref: "#/components/schemas/EFT" responses: - '200': - $ref: '#/components/responses/ChargeCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ChargeCreateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /charge/submit_pin: @@ -3120,15 +3580,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitPin' + $ref: "#/components/schemas/ChargeSubmitPin" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ChargeSubmitPin' + $ref: "#/components/schemas/ChargeSubmitPin" responses: - '200': - $ref: '#/components/responses/ChargeSubmitPinSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ChargeSubmitPinResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /charge/submit_otp: @@ -3141,15 +3605,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitOTP' + $ref: "#/components/schemas/ChargeSubmitOTP" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ChargeSubmitOTP' + $ref: "#/components/schemas/ChargeSubmitOTP" responses: - '200': - $ref: '#/components/responses/ChargeSubmitOtpSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ChargeSubmitOtpResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /charge/submit_phone: @@ -3162,15 +3630,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitPhone' + $ref: "#/components/schemas/ChargeSubmitPhone" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ChargeSubmitPhone' + $ref: "#/components/schemas/ChargeSubmitPhone" responses: - '200': - $ref: '#/components/responses/ChargeSubmitPhoneSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ChargeSubmitPhoneResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /charge/submit_birthday: @@ -3183,15 +3655,19 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitBirthday' + $ref: "#/components/schemas/ChargeSubmitBirthday" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ChargeSubmitBirthday' + $ref: "#/components/schemas/ChargeSubmitBirthday" responses: - '200': - $ref: '#/components/responses/ChargeSubmitBirthdaySuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ChargeSubmitBirthdayResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /charge/submit_address: @@ -3204,15 +3680,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitAddress' + $ref: "#/components/schemas/ChargeSubmitAddress" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/ChargeSubmitAddress' + $ref: "#/components/schemas/ChargeSubmitAddress" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/Ok" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /charge/{reference}: @@ -3228,12 +3704,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/ChargeCheckPendingSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ChargeCheckPendingResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /bulkcharge: @@ -3248,26 +3728,21 @@ paths: schema: type: array items: - properties: - charges: - title: charges - type: object - items: - $ref: '#/components/schemas/BulkChargeInitiate' + $ref: "#/components/schemas/BulkChargeInitiate" application/x-www-form-urlencoded: schema: type: array items: - properties: - charges: - type: object - items: - $ref: '#/components/schemas/BulkChargeInitiate' + $ref: "#/components/schemas/BulkChargeInitiate" responses: - '200': - $ref: '#/components/responses/BulkChargeInitiateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BulkChargeInitiateResponse" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -3285,26 +3760,27 @@ paths: name: page schema: type: integer - description: The section to retrieve - - in: query - name: from - schema: - type: string - format: date-time - description: The start date + description: The offset to retrieve data from - in: query - name: to + name: status schema: type: string - format: date-time - description: The end date + enum: + - active + - paused + - complete + description: Filter by the status of the charges responses: - '200': - $ref: '#/components/responses/BulkChargeListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BulkChargeListResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /bulkcharge/{code}: @@ -3321,19 +3797,23 @@ paths: summary: Fetch Bulk Charge Batch operationId: bulkCharge_fetch responses: - '200': - $ref: '#/components/responses/BulkChargeFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BulkChargeFetchResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /bulkcharge/{code}/charges: get: tags: - Bulk Charge - summary: Fetch Charges in a Batch + summary: List Charges in a Batch operationId: bulkCharge_charges parameters: - name: code @@ -3342,13 +3822,38 @@ paths: required: true schema: type: string + - in: query + name: perPage + schema: + type: integer + description: Number of records to fetch per page + - in: query + name: page + schema: + type: integer + description: The offset to retrieve data from + - in: query + name: status + schema: + type: string + enum: + - success + - failed + - pending + - error + - inactive_authorization + description: Filter by the status of the charges responses: - '200': - $ref: '#/components/responses/BulkChargeFetchBulkBatchChargesSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BulkChargeFetchBulkBatchChargesResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /bulkcharge/pause/{code}: @@ -3365,12 +3870,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/BulkChargePauseSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BulkChargePauseResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /bulkcharge/resume/{code}: @@ -3387,12 +3896,16 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/BulkChargeResumeSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/BulkChargeResumeResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /integration/payment_session_timeout: @@ -3402,12 +3915,16 @@ paths: summary: Fetch Payment Session Timeout operationId: integration_fetchPaymentSessionTimeout responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ControlPanelFetchPaymentSessionTimeoutResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -3419,14 +3936,18 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/PaymentSession' + $ref: "#/components/schemas/PaymentSession" responses: - '200': - $ref: '#/components/responses/Ok' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + description: "" + content: + application/json: + schema: + $ref: "#/components/schemas/ControlPanelUpdatePaymentSessionTimeoutResponse" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /refund: @@ -3439,15 +3960,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/RefundCreate' + $ref: "#/components/schemas/RefundCreate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/RefundCreate' + $ref: "#/components/schemas/RefundCreate" responses: - '200': - $ref: '#/components/responses/RefundCreateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/RefundCreateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error get: @@ -3479,12 +4000,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/RefundListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/RefundListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /refund/{id}: @@ -3500,12 +4021,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/RefundFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/RefundFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dispute: @@ -3527,7 +4048,9 @@ paths: type: integer - in: query name: status - description: Dispute Status. Acceptable values are awaiting-merchant-feedback, awaiting-bank-feedback, pending, resolved + description: + Dispute Status. Acceptable values are awaiting-merchant-feedback, + awaiting-bank-feedback, pending, resolved schema: type: string - in: query @@ -3548,12 +4071,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/DisputeListSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/DisputeListSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dispute/{id}: @@ -3570,12 +4093,12 @@ paths: summary: Fetch Dispute operationId: dispute_fetch responses: - '200': - $ref: '#/components/responses/DisputeFetchSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/DisputeFetchSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error put: @@ -3587,17 +4110,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DisputeUpdate' + $ref: "#/components/schemas/DisputeUpdate" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/DisputeUpdate' + $ref: "#/components/schemas/DisputeUpdate" responses: - '200': - $ref: '#/components/responses/DisputeUpdateSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/DisputeUpdateSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dispute/{id}/upload_url: @@ -3614,12 +4137,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/DisputeUploadURLSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/DisputeUploadURLSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dispute/export: @@ -3656,12 +4179,12 @@ paths: format: date-time description: The end date responses: - '200': - $ref: '#/components/responses/DisputeExportSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/DisputeExportSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dispute/transaction/{id}: @@ -3678,12 +4201,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/DisputeListTransactionSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/DisputeListTransactionSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dispute/{id}/resolve: @@ -3703,17 +4226,17 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DisputeResolve' + $ref: "#/components/schemas/DisputeResolve" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/DisputeResolve' + $ref: "#/components/schemas/DisputeResolve" responses: - '200': - $ref: '#/components/responses/DisputeResolveSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/DisputeResolveSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /dispute/{id}/evidence: @@ -3726,10 +4249,10 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DisputeEvidence' + $ref: "#/components/schemas/DisputeEvidence" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/DisputeEvidence' + $ref: "#/components/schemas/DisputeEvidence" parameters: - name: id description: Dispute ID @@ -3738,10 +4261,10 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/DisputeAddEvidenceSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/DisputeAddEvidenceSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /bank: @@ -3780,12 +4303,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/MiscellaneousListBanksSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/MiscellaneousListBanksSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /bank/resolve: @@ -3806,12 +4329,12 @@ paths: type: integer example: 63 responses: - '200': - $ref: '#/components/responses/VerificationResolveAccountNumberSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/VerificationResolveAccountNumberSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /bank/validate: @@ -3824,15 +4347,15 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/BankValidateRequest' + $ref: "#/components/schemas/BankValidateRequest" application/x-www-form-urlencoded: schema: - $ref: '#/components/schemas/BankValidateRequest' + $ref: "#/components/schemas/BankValidateRequest" responses: - '200': - $ref: '#/components/responses/VerificationValidateAccountSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/VerificationValidateAccountSuccess" + "401": + $ref: "#/components/responses/Unauthorized" default: description: Server error /decision/bin/{bin}: @@ -3848,12 +4371,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/VerificationResolveCardBINSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/VerificationResolveCardBINSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /country: @@ -3863,12 +4386,12 @@ paths: summary: List Countries operationId: miscellaneous_listCountries responses: - '200': - $ref: '#/components/responses/MiscellaneousListCountriesSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' + "200": + $ref: "#/components/responses/MiscellaneousListCountriesSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error /address_verification/states: @@ -3891,191 +4414,12 @@ paths: schema: type: string responses: - '200': - $ref: '#/components/responses/MiscellaneousListStatesSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' - default: - description: Server error - /directdebit/activation-charge: - put: - tags: - - Direct Debit - summary: Trigger Activation Charge - description: Trigger activation charge for specified customers - operationId: directdebit_triggerActivationCharge - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/DirectDebitActivationChargeRequest' - responses: - '200': - $ref: '#/components/responses/DirectDebitActivationChargeSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - default: - description: Server error - /directdebit/mandate-authorizations: - get: - tags: - - Direct Debit - summary: List Mandate Authorizations - description: Get a list of all the direct debit mandates on your integration - operationId: directdebit_listMandateAuthorizations - parameters: - - name: cursor - in: query - description: The cursor value of the next set of authorizations to fetch. You can get this from the meta object of the response - schema: - type: string - - name: status - in: query - description: Filter by the authorization status - schema: - type: string - enum: - - pending - - active - - revoked - - name: per_page - in: query - description: The number of authorizations to fetch per request - schema: - type: integer - responses: - '200': - $ref: '#/components/responses/CustomerFetchMandateAuthorizationsSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - default: - description: Server error - /customer/authorization/initialize: - post: - tags: - - Customer - summary: Initialize Authorization - description: Initiate a request to create a reusable authorization code for recurring transactions - operationId: customer_initializeAuthorization - requestBody: - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/CustomerAuthorizationInitializeRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/CustomerAuthorizationInitializeRequest' - responses: - '200': - $ref: '#/components/responses/CustomerAuthorizationInitializeSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - default: - description: Server error - /customer/authorization/verify/{reference}: - get: - tags: - - Customer - summary: Verify Authorization - description: Check the status of an authorization request - operationId: customer_verifyAuthorization - parameters: - - name: reference - in: path - description: The reference returned in the initialization response - required: true - schema: - type: string - responses: - '200': - $ref: '#/components/responses/CustomerAuthorizationVerifySuccess' - '401': - $ref: '#/components/responses/Unauthorized' - '404': - $ref: '#/components/responses/NotFound' - default: - description: Server error - /customer/{id}/initialize-direct-debit: - parameters: - - name: id - in: path - required: true - schema: - type: string - description: The ID of the customer to initialize the direct debit for - post: - tags: - - Customer - summary: Initialize Direct Debit - operationId: customer_initializeDirectDebit - description: Initialize the process of linking an account to a customer for Direct Debit transactions - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomerInitializeDirectDebitRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/CustomerInitializeDirectDebitRequest' - responses: - '200': - $ref: '#/components/responses/CustomerInitializeDirectDebitSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - default: - description: Server error - /customer/{id}/directdebit-activation-charge: - put: - tags: - - Customer - summary: Direct Debit Activation Charge - operationId: customer_directDebitActivationCharge - description: Trigger an activation charge on an inactive mandate on behalf of your customer - parameters: - - name: id - in: path - required: true - schema: - type: integer - description: The customer ID attached to the authorization - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomerDirectDebitActivationChargeRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/CustomerDirectDebitActivationChargeRequest' - responses: - '200': - $ref: '#/components/responses/CustomerDirectDebitActivationChargeSuccess' - '401': - $ref: '#/components/responses/Unauthorized' - default: - description: Server error - /customer/{id}/directdebit-mandate-authorizations: - get: - tags: - - Customer - summary: Fetch Mandate Authorizations - operationId: customer_fetchMandateAuthorizations - description: Get the list of direct debit mandates associated with a customer - parameters: - - name: id - in: path - required: true - schema: - type: string - description: The customer ID for the authorizations to fetch - responses: - '200': - $ref: '#/components/responses/CustomerFetchMandateAuthorizationsSuccess' - '401': - $ref: '#/components/responses/Unauthorized' + "200": + $ref: "#/components/responses/MiscellaneousListStatesSuccess" + "401": + $ref: "#/components/responses/Unauthorized" + "404": + $ref: "#/components/responses/NotFound" default: description: Server error components: @@ -4122,7 +4466,7 @@ components: description: A list of object containing subaccount code and number of shares type: array items: - $ref: '#/components/schemas/SplitSubaccounts' + $ref: "#/components/schemas/SplitSubaccounts" currency: description: The transaction currency type: string @@ -4132,7 +4476,9 @@ components: - ZAR - USD bearer_type: - description: This allows you specify how the transaction charge should be processed + description: + This allows you specify how the transaction charge should be + processed type: string enum: - subaccount @@ -4140,7 +4486,10 @@ components: - all-proportional - all bearer_subaccount: - description: This is the subaccount code of the customer or partner that would bear the transaction charge if you specified subaccount as the bearer type + description: + This is the subaccount code of the customer or partner that would + bear the transaction charge if you specified subaccount as the + bearer type type: string required: - name @@ -4158,16 +4507,22 @@ components: description: Customer's email address type: string amount: - description: | - Amount should be in smallest denomination of the currency. For example if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + description: > + Amount should be in smallest denomination of the currency. For + example if currency is NGN, pesewas, if currency is GHS, and cents, + if currency is ZAR type: integer currency: - $ref: '#/components/schemas/Currency' + $ref: "#/components/schemas/Currency" reference: - description: Unique transaction reference. Only -, ., = and alphanumeric characters allowed. + description: + Unique transaction reference. Only -, ., = and alphanumeric + characters allowed. type: string channels: - description: An array of payment channels to control what channels you want to make available to the user to make a payment with + description: + An array of payment channels to control what channels you want to + make available to the user to make a payment with type: array items: type: string @@ -4180,12 +4535,16 @@ components: - mobile_money - bank_transfer callback_url: - description: | - Fully qualified url, e.g. https://example.com/ to redirect your customers to after a successful payment. Use this to override the callback url provided on the dashboard for this transaction + description: > + Fully qualified url, e.g. https://example.com/ to redirect your + customers to after a successful payment. Use this to override the + callback url provided on the dashboard for this transaction type: string plan: - description: | - If transaction is to create a subscription to a predefined plan, provide plan code here. + description: > + If transaction is to create a subscription to a predefined plan, + provide plan code here. + This would invalidate the value provided in amount type: string invoice_limit: @@ -4195,14 +4554,16 @@ components: description: The split code of the transaction split type: string split: - $ref: '#/components/schemas/SplitCreate' + $ref: "#/components/schemas/SplitCreate" subaccount: description: The code for the subaccount that owns the payment type: string transaction_charge: - description: | + description: > A flat fee to charge the subaccount for a transaction. - This overrides the split percentage set when the subaccount was created + + This overrides the split percentage set when the subaccount was + created type: string bearer: description: The bearer of the transaction charge @@ -4214,35 +4575,11 @@ components: description: Used to replace the email address shown on the Checkout type: string metadata: - description: Stringified JSON object of custom data - type: string + description: JSON object of custom data + type: object example: email: test@demo.com amount: 10000 - TransactionInitializeResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - authorization_url: - type: string - access_code: - type: string - reference: - type: string - required: - - authorization_url - - access_code - - reference - required: - - status - - message - - data ErrorMeta: type: object description: Extra details to help with a resolution of the error @@ -4252,8 +4589,9 @@ components: description: A summarised solution for the error TransactionInitializeBadRequestModel: type: object - description: | - Error response returned when a transaction is initialized with incorrect parameters + description: > + Error response returned when a transaction is initialized with incorrect + parameters properties: status: type: boolean @@ -4262,7 +4600,7 @@ components: type: string description: A short description of the error meta: - $ref: '#/components/schemas/ErrorMeta' + $ref: "#/components/schemas/ErrorMeta" type: type: string description: A tag to indicate the type of the error @@ -4294,7 +4632,7 @@ components: type: string description: A short description of the error meta: - $ref: '#/components/schemas/ErrorMeta' + $ref: "#/components/schemas/ErrorMeta" type: type: string description: A tag to indicate the type of the error @@ -4308,369 +4646,203 @@ components: errorCodeMappingNotFound: type: boolean description: An indicator for error mapping for the request - TransactionVerifyResponse: + TransactionChargeAuthorization: type: object + required: + - email + - amount + - authorization_code properties: - status: - type: boolean - message: + email: + description: Customer's email address type: string - data: - type: object - properties: - id: - type: integer - domain: - type: string - status: - type: string - reference: - type: string - receipt_number: - type: string - nullable: true - amount: + amount: + description: Amount in the lower denomination of your currency + type: integer + authorization_code: + description: Valid authorization code to charge + type: string + reference: + description: + Unique transaction reference. Only -, ., = and alphanumeric + characters allowed. + type: string + currency: + $ref: "#/components/schemas/Currency" + split_code: + description: The split code of the transaction split + type: string + split: + $ref: "#/components/schemas/SplitCreate" + subaccount: + description: The code for the subaccount that owns the payment + type: string + transaction_charge: + description: >- + A flat fee to charge the subaccount for a transaction. + + This overrides the split percentage set when the subaccount was + created + type: string + bearer: + description: The bearer of the transaction charge + type: string + enum: + - account + - subaccount + metadata: + description: Stringified JSON object of custom data + type: string + queue: + description: + If you are making a scheduled charge call, it is a good idea to + queue them so the processing system does not get overloaded causing + transaction processing errors. + type: boolean + example: + email: jb@email.com + amount: 30000 + authorization_code: AUTH_df1l5ehnym + TransactionPartialDebit: + type: object + required: + - email + - amount + - authorization_code + - currency + properties: + email: + description: Customer's email address + type: string + amount: + description: Specified in the lowest denomination of your currency + type: integer + format: int64 + authorization_code: + description: Valid authorization code to charge + type: string + currency: + $ref: "#/components/schemas/Currency" + at_least: + description: Minimum amount to charge + type: string + reference: + description: + Unique transaction reference. Only -, ., = and alphanumeric + characters allowed. + type: string + example: + email: tap@email.com + amount: 40510 + authorization_code: AUTH_df1l5ehnym + currency: ZAR + Response: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + SplitSubaccountsArray: + type: object + properties: + subaccount: + type: object + properties: + id: type: integer - message: - type: string - nullable: true - gateway_response: + subaccount_code: type: string - paid_at: + business_name: type: string - nullable: true - created_at: + description: type: string - channel: + primary_contact_name: type: string - currency: + primary_contact_email: type: string - ip_address: + primary_contact_phone: type: string metadata: - anyOf: - - type: string - - type: object - log: - nullable: true - fees: - type: integer - nullable: true - fees_split: - nullable: true - authorization: - type: object - properties: - authorization_code: - type: string - bin: - nullable: true - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: boolean - signature: - type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - nullable: true - last_name: - type: string - nullable: true - email: - type: string - customer_code: - type: string - phone: - type: string - nullable: true - metadata: - nullable: true - risk_action: - type: string - international_format_phone: - type: string - nullable: true - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - plan: - nullable: true - split: - type: object - order_id: - nullable: true - paidAt: type: string - nullable: true - createdAt: + settlement_bank: type: string - requested_amount: - type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true - transaction_date: + currency: + type: string + account_number: type: string - plan_object: - type: object - subaccount: - type: object required: - id - - domain - - status - - reference - - receipt_number - - amount - - message - - gateway_response - - paid_at - - created_at - - channel - - currency - - ip_address + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount + - settlement_bank + - currency + - account_number + share: + type: integer required: - - status - - message - - data - TransactionListResponseArray: + - subaccount + - share + SplitListResponseArray: type: object properties: id: type: integer - domain: + name: type: string - status: + type: type: string - reference: + currency: type: string - amount: + integration: type: integer - message: - nullable: true - gateway_response: - type: string - paid_at: - type: string - nullable: true - created_at: - type: string - channel: + domain: type: string - currency: + split_code: type: string - ip_address: + active: + type: boolean + bearer_type: type: string - nullable: true - metadata: - type: object - nullable: true - log: - nullable: true - fees: - type: integer - nullable: true - fees_split: + bearer_subaccount: type: integer nullable: true - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - nullable: true - last_name: - type: string - nullable: true - email: - type: string - phone: - type: string - nullable: true - metadata: - type: object - nullable: true - customer_code: - type: string - risk_action: - type: string - required: - - id - - first_name - - last_name - - email - - phone - - metadata - - customer_code - - risk_action - authorization: - type: object - properties: - authorization_code: - type: string - bin: - type: string - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: boolean - signature: - type: string - account_name: - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - - account_name - plan: - type: object - split: - type: object - subaccount: - type: object - order_id: - nullable: true - paidAt: - type: string createdAt: type: string - requested_amount: + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: "#/components/schemas/SplitSubaccountsArray" + total_subaccounts: type: integer - source: - type: object - properties: - source: - type: string - type: - type: string - identifier: - nullable: true - entry_point: - type: string - required: - - source - - type - - identifier - - entry_point - nullable: true - connect: - type: object - nullable: true - pos_transaction_data: - nullable: true required: - id - - domain - - status - - reference - - amount - - message - - gateway_response - - paid_at - - created_at - - channel + - name + - type - currency - - ip_address - - metadata - - log - - fees - - fees_split - - customer - - authorization - - plan - - split - - subaccount - - order_id - - paidAt + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount - createdAt - - requested_amount - - source - - connect - - pos_transaction_data - TransactionListResponse: + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts + SplitListResponse: type: object properties: status: @@ -4680,27 +4852,22 @@ components: data: type: array items: - $ref: '#/components/schemas/TransactionListResponseArray' + $ref: "#/components/schemas/SplitListResponseArray" meta: type: object properties: total: type: integer - total_volume: - type: number skipped: type: integer perPage: - anyOf: - - type: string - - type: integer + type: integer page: type: integer pageCount: type: integer required: - total - - total_volume - skipped - perPage - page @@ -4711,20 +4878,7 @@ components: - message - data - meta - MetadataCustomFieldsArray: - type: object - properties: - value: - type: string - display_name: - type: string - variable_name: - type: string - required: - - value - - display_name - - variable_name - TransactionFetchResponse: + SplitCreateResponse: type: object properties: status: @@ -4736,197 +4890,56 @@ components: properties: id: type: integer - domain: + name: type: string - status: + type: type: string - reference: + currency: type: string - receipt_number: - nullable: true - amount: + integration: type: integer - message: - nullable: true - gateway_response: - type: string - helpdesk_link: - nullable: true - paid_at: + domain: type: string - created_at: + split_code: type: string - channel: + active: + type: boolean + bearer_type: type: string - currency: + bearer_subaccount: + type: integer + createdAt: type: string - ip_address: + updatedAt: type: string - metadata: - type: object - properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' - required: - - custom_fields - log: - nullable: true - fees: - type: integer - fees_split: - nullable: true - authorization: - type: object - properties: - authorization_code: - type: string - bin: - type: string - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: boolean - signature: - type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - - account_name - - receiver_bank_account_number - - receiver_bank - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - plan: - type: object - subaccount: - type: object - split: - type: object - order_id: - nullable: true - paidAt: - type: string - createdAt: - type: string - requested_amount: + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: "#/components/schemas/SplitSubaccountsArray" + total_subaccounts: type: integer - pos_transaction_data: - nullable: true - source: - type: object - properties: - type: - type: string - source: - type: string - identifier: - nullable: true - required: - - type - - source - - identifier - fees_breakdown: - nullable: true - connect: - nullable: true required: - id - - domain - - status - - reference - - receipt_number - - amount - - message - - gateway_response - - helpdesk_link - - paid_at - - created_at - - channel + - name + - type - currency - - ip_address - - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - subaccount - - split - - order_id - - paidAt + - integration + - domain + - split_code + - active + - bearer_type - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts required: - status - message - data - TransactionTimelineResponse: + SplitFetchResponse: type: object properties: status: @@ -4935,31 +4948,87 @@ components: type: string data: type: object + properties: + id: + type: integer + name: + type: string + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: "#/components/schemas/SplitSubaccountsArray" + total_subaccounts: + type: integer + required: + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts required: - status - message - data - TransactionTotalVolumeByCurrencyArray: + SplitUpdate: type: object properties: - currency: + name: + description: Name of the transaction split type: string - amount: - type: integer - required: - - currency - - amount - TransactionPendingTransfersByCurrencyArray: - type: object - properties: - currency: + active: + description: + Toggle status of split. When true, the split is active, else it's + inactive + type: boolean + bearer_type: + description: + This allows you specify how the transaction charge should be + processed type: string - amount: - type: integer - required: - - currency - - amount - TransactionTotalsResponse: + enum: + - subaccount + - account + - all-proportional + - all + bearer_subaccount: + description: + This is the subaccount code of the customer or partner that would + bear the transaction charge if you specified subaccount as the + bearer type + type: string + SplitUpdateResponse: type: object properties: status: @@ -4969,31 +5038,59 @@ components: data: type: object properties: - total_transactions: - type: integer - total_volume: + id: type: integer - total_volume_by_currency: - type: array - items: - $ref: '#/components/schemas/TransactionTotalVolumeByCurrencyArray' - pending_transfers: + name: + type: string + type: + type: string + currency: + type: string + integration: type: integer - pending_transfers_by_currency: - type: array + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: + type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array items: - $ref: '#/components/schemas/TransactionPendingTransfersByCurrencyArray' + $ref: "#/components/schemas/SplitSubaccountsArray" + total_subaccounts: + type: integer required: - - total_transactions - - total_volume - - total_volume_by_currency - - pending_transfers - - pending_transfers_by_currency + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts required: - status - message - data - TransactionExportResponse: + SplitAddUpdateSubaccountResponse: type: object properties: status: @@ -5003,66 +5100,161 @@ components: data: type: object properties: - path: + id: + type: integer + name: type: string - expiresAt: + type: + type: string + currency: + type: string + integration: + type: integer + domain: + type: string + split_code: + type: string + active: + type: boolean + bearer_type: + type: string + bearer_subaccount: + type: integer + createdAt: type: string + updatedAt: + type: string + is_dynamic: + type: boolean + subaccounts: + type: array + items: + $ref: "#/components/schemas/SplitSubaccountsArray" + total_subaccounts: + type: integer required: - - path - - expiresAt + - id + - name + - type + - currency + - integration + - domain + - split_code + - active + - bearer_type + - bearer_subaccount + - createdAt + - updatedAt + - is_dynamic + - subaccounts + - total_subaccounts required: - status - message - data - TransactionChargeAuthorization: + SplitRemoveSubaccountResponse: type: object + properties: + status: + type: boolean + message: + type: string required: - - email - - amount - - authorization_code + - status + - message + TerminalSendEventData: + type: object + description: The parameters needed to perform the specified action properties: - email: - description: Customer's email address + id: + description: The invoice or transaction ID you want to push to the Terminal + type: integer + format: int64 + reference: + description: The offline_reference from the Payment Request response type: string - amount: - description: Amount in the lower denomination of your currency + example: + id: 7895939 + reference: "4634337895939" + TerminalSendEvent: + type: object + properties: + type: + description: The type of event to push + type: string + enum: + - invoice + - transaction + action: + description: > + The action the Terminal needs to perform. For the invoice type, the + action can either be process or view. + + For the transaction type, the action can either be process or print. + type: string + enum: + - process + - view + - print + data: + $ref: "#/components/schemas/TerminalSendEventData" + TerminalGetStatusResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + online: + type: boolean + available: + type: boolean + required: + - online + - available + required: + - status + - message + - data + TerminalListsResponseArray: + type: object + properties: + id: type: integer - authorization_code: - description: Valid authorization code to charge + serial_number: type: string - reference: - description: Unique transaction reference. Only -, ., = and alphanumeric characters allowed. + nullable: true + device_make: type: string - currency: - $ref: '#/components/schemas/Currency' - split_code: - description: The split code of the transaction split + nullable: true + terminal_id: type: string - subaccount: - description: The code for the subaccount that owns the payment + integration: + type: integer + domain: type: string - transaction_charge: - description: |- - A flat fee to charge the subaccount for a transaction. - This overrides the split percentage set when the subaccount was created + name: type: string - bearer: - description: The bearer of the transaction charge + nullable: true + address: type: string - enum: - - account - - subaccount - metadata: - description: Stringified JSON object of custom data + nullable: true + status: type: string - queue: - description: If you are making a scheduled charge call, it is a good idea to queue them so the processing system does not get overloaded causing transaction processing errors. - type: boolean - example: - email: jb@email.com - amount: 30000 - authorization_code: AUTH_df1l5ehnym - TransactionChargeResponse: + required: + - id + - serial_number + - device_make + - terminal_id + - integration + - domain + - name + - address + - status + TerminalListsResponse: type: object properties: status: @@ -5070,162 +5262,178 @@ components: message: type: string data: + type: array + items: + $ref: "#/components/schemas/TerminalListsResponseArray" + meta: type: object properties: - status: + next: type: string - amount: + nullable: true + previous: + type: string + nullable: true + perPage: type: integer - currency: + required: + - next + - previous + - perPage + additionalProperties: false + required: + - status + - message + - data + - meta + TerminalGetResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + serial_number: type: string - transaction_date: + device_make: type: string - reference: + nullable: true + terminal_id: type: string + integration: + type: integer domain: type: string - redirect_url: + name: type: string nullable: true - metadata: - type: object - gateway_response: - type: string - message: + address: type: string nullable: true - channel: + status: type: string - fees: - type: integer - nullable: true - authorization: - type: object - properties: - authorization_code: - type: string - nullable: true - bin: - type: string - nullable: true - last4: - type: string - nullable: true - exp_month: - type: string - exp_year: - type: string - channel: - type: string - nullable: true - card_type: - type: string - nullable: true - bank: - type: string - nullable: true - country_code: - type: string - nullable: true - brand: - type: string - nullable: true - reusable: - type: boolean - signature: - type: string - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - customer: - type: object - properties: - first_name: - type: string - nullable: true - last_name: - type: string - nullable: true - email: - type: string - customer_code: - type: string - phone: - type: string - nullable: true - risk_action: - type: string - required: - - first_name - - last_name - - email - - customer_code - - phone - - risk_action - url: + split_code: type: string + nullable: true required: - - status - - amount - - currency - - transaction_date - - reference + - id + - serial_number + - device_make + - terminal_id + - integration - domain - - redirect_url - - metadata - - gateway_response - - message - - channel - - fees - - authorization - - customer + - name + - address + - status + - split_code required: - status - message - data - TransactionPartialDebit: + TerminalUpate: + type: object + description: Model for updating a Terminal details + properties: + name: + description: The new name for the Terminal + type: string + address: + description: The new address for the Terminal + type: string + example: + name: Oreos + address: Somewhere on earth + TerminalUpdateResponse: type: object + properties: + status: + type: boolean + message: + type: string required: - - email - - amount - - authorization_code - - currency + - status + - message + TerminalActivationToggle: + type: object + description: Model for activating and deactivating a debug Terminal + required: + - serial_number properties: - email: - description: Customer's email address + serial_number: + description: Device Serial Number type: string - amount: - description: Specified in the lowest denomination of your currency + example: + serial_number: "1111150412230003899" + TerminalCommissionDeviceResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TerminalDecommissionDeviceResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + CustomerListResponseArray: + type: object + properties: + integration: type: integer - format: int64 - authorization_code: - description: Valid authorization code to charge + first_name: type: string - currency: - $ref: '#/components/schemas/Currency' - at_least: - description: Minimum amount to charge + nullable: true + last_name: type: string - reference: - description: Unique transaction reference. Only -, ., = and alphanumeric characters allowed. + nullable: true + email: type: string - example: - email: tap@email.com - amount: 40510 - authorization_code: AUTH_df1l5ehnym - currency: ZAR - TransactionPartialDebitResponse: + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - createdAt + - updatedAt + CustomerListResponse: type: object properties: status: @@ -5233,143 +5441,57 @@ components: message: type: string data: + type: array + items: + $ref: "#/components/schemas/CustomerListResponseArray" + meta: type: object properties: - amount: + total: type: integer - currency: - type: string - transaction_date: - type: string - status: - type: string - reference: - type: string - domain: - type: string - metadata: - type: string - gateway_response: - type: string - message: - nullable: true - channel: - type: string - ip_address: - nullable: true - log: - nullable: true - fees: + skipped: type: integer - authorization: - type: object - properties: - authorization_code: - type: string - bin: - type: string - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: boolean - signature: - type: string - account_name: - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - - account_name - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - nullable: true - last_name: - type: string - nullable: true - email: - type: string - customer_code: - type: string - phone: - type: string - nullable: true - metadata: - type: object - nullable: true - risk_action: - type: string - international_format_phone: - type: string - nullable: true - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - plan: - type: integer - requested_amount: + perPage: + anyOf: + - type: string + - type: integer + page: type: integer - id: + pageCount: type: integer required: - - amount - - currency - - transaction_date - - status - - reference - - domain - - gateway_response - - message - - channel - - ip_address - - log - - fees - - authorization - - customer - - metadata - - plan - - requested_amount - - id + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false required: - status - message - data - Response: + - meta + CustomerCreate: + type: object + required: + - email + properties: + email: + description: Customer's email address + type: string + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone number + type: string + metadata: + description: Stringified JSON object of custom data + type: string + CustomerCreateResponse: type: object properties: status: @@ -5378,201 +5500,178 @@ components: type: string data: type: object - SplitSubaccountsArray: - type: object - properties: - subaccount: - type: object properties: - id: - type: integer - subaccount_code: - type: string - business_name: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + email: type: string - description: + first_name: type: string - primary_contact_name: + last_name: type: string - primary_contact_email: + phone: type: string - primary_contact_phone: + integration: + type: integer + domain: type: string metadata: + type: object + properties: + calling_code: + type: string + customer_code: type: string - settlement_bank: + risk_action: type: string - currency: + id: + type: integer + createdAt: type: string - account_number: + updatedAt: type: string + identified: + type: boolean + identifications: + nullable: true required: - - id - - subaccount_code - - business_name - - description - - primary_contact_name - - primary_contact_email - - primary_contact_phone + - transactions + - subscriptions + - authorizations + - email + - first_name + - last_name + - phone + - integration + - domain - metadata - - settlement_bank - - currency - - account_number - share: - type: integer + - customer_code + - risk_action + - id + - createdAt + - updatedAt + - identified + - identifications required: - - subaccount - - share - SplitListResponseArray: + - status + - message + - data + CustomerFetchResponse: type: object properties: - id: - type: integer - name: - type: string - type: - type: string - currency: - type: string - integration: - type: integer - domain: - type: string - split_code: - type: string - active: + status: type: boolean - bearer_type: - type: string - bearer_subaccount: - type: integer - createdAt: - type: string - updatedAt: - type: string - is_dynamic: - type: boolean - subaccounts: - type: array - items: - $ref: '#/components/schemas/SplitSubaccountsArray' - total_subaccounts: - type: integer - required: - - id - - name - - type - - currency - - integration - - domain - - split_code - - active - - bearer_type - - bearer_subaccount - - createdAt - - updatedAt - - is_dynamic - - subaccounts - - total_subaccounts - SplitListResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: array - items: - $ref: '#/components/schemas/SplitListResponseArray' - meta: - type: object - properties: - total: - type: integer - skipped: - type: integer - perPage: - type: integer - page: - type: integer - pageCount: - type: integer - required: - - total - - skipped - - perPage - - page - - pageCount - additionalProperties: false - required: - - status - - message - - data - - meta - SplitCreateResponse: - type: object - properties: - status: - type: boolean - message: + message: type: string data: type: object properties: - id: - type: integer - name: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: type: string - type: + last_name: type: string - currency: + email: type: string - integration: - type: integer + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string domain: type: string - split_code: + customer_code: type: string - active: - type: boolean - bearer_type: + risk_action: type: string - bearer_subaccount: + id: + type: integer + integration: type: integer createdAt: type: string updatedAt: type: string - is_dynamic: - type: boolean - subaccounts: - type: array - items: - $ref: '#/components/schemas/SplitSubaccountsArray' - total_subaccounts: + created_at: + type: string + updated_at: + type: string + total_transactions: type: integer + total_transaction_value: + type: array + items: {} + dedicated_account: + nullable: true + dedicated_accounts: + type: array + items: {} + nullable: true + identified: + type: boolean + identifications: + nullable: true required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action - id - - name - - type - - currency - integration - - domain - - split_code - - active - - bearer_type - - bearer_subaccount - createdAt - updatedAt - - is_dynamic - - subaccounts - - total_subaccounts + - created_at + - updated_at + - total_transactions + - total_transaction_value + - dedicated_account + - dedicated_accounts + - identified + - identifications required: - status - message - data - SplitFetchResponse: + CustomerUpdate: + type: object + properties: + first_name: + description: Customer's first name + type: string + last_name: + description: Customer's last name + type: string + phone: + description: Customer's phone number + type: string + metadata: + description: Stringified JSON object of custom data + type: string + CustomerUpdateResponse: type: object properties: status: @@ -5582,79 +5681,72 @@ components: data: type: object properties: - id: - type: integer - name: + first_name: type: string - type: + last_name: type: string - currency: + email: type: string - integration: - type: integer + phone: + type: string + metadata: + type: object domain: type: string - split_code: + customer_code: type: string - active: - type: boolean - bearer_type: + risk_action: type: string - bearer_subaccount: + id: + type: integer + integration: type: integer createdAt: type: string updatedAt: type: string - is_dynamic: + identified: type: boolean - subaccounts: - type: array - items: - $ref: '#/components/schemas/SplitSubaccountsArray' - total_subaccounts: - type: integer + identifications: + nullable: true required: + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action - id - - name - - type - - currency - integration - - domain - - split_code - - active - - bearer_type - - bearer_subaccount - createdAt - updatedAt - - is_dynamic - - subaccounts - - total_subaccounts + - identified + - identifications required: - status - message - data - SplitUpdate: + CustomerRiskAction: type: object + required: + - customer properties: - name: - description: Name of the transaction split + customer: + description: Customer's code, or email address type: string - active: - description: Toggle status of split. When true, the split is active, else it's inactive - type: boolean - bearer_type: - description: This allows you specify how the transaction charge should be processed + risk_action: + description: + This determines the fraud rules that should be applied to the + customer type: string + default: default enum: - - subaccount - - account - - all-proportional - - all - bearer_subaccount: - description: This is the subaccount code of the customer or partner that would bear the transaction charge if you specified subaccount as the bearer type - type: string - SplitUpdateResponse: + - allow + - deny + - default + CustomerRiskActionResponse: type: object properties: status: @@ -5664,59 +5756,135 @@ components: data: type: object properties: - id: - type: integer - name: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: type: string - type: + last_name: type: string - currency: + email: type: string - integration: - type: integer + phone: + type: string + metadata: + type: object domain: type: string - split_code: + customer_code: type: string - active: - type: boolean - bearer_type: + risk_action: type: string - bearer_subaccount: + id: + type: integer + integration: type: integer createdAt: type: string updatedAt: type: string - is_dynamic: + identified: type: boolean - subaccounts: - type: array - items: - $ref: '#/components/schemas/SplitSubaccountsArray' - total_subaccounts: - type: integer + identifications: + nullable: true required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action - id - - name - - type - - currency - integration - - domain - - split_code - - active - - bearer_type - - bearer_subaccount - createdAt - updatedAt - - is_dynamic - - subaccounts - - total_subaccounts + - identified + - identifications required: - status - message - data - SplitAddUpdateSubaccountResponse: + CustomerDeactivateAuthorization: + type: object + required: + - authorization_code + properties: + authorization_code: + description: Authorization code to be deactivated + type: string + CustomerDeactivateAuthorizationResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + CustomerValidate: + type: object + required: + - first_name + - last_name + - type + - country + - bvn + - bank_code + - account_number + properties: + first_name: + description: Customer's first name + type: string + middle_name: + description: Customer's middle name + type: string + last_name: + description: Customer's last name + type: string + type: + description: Predefined types of identification. + type: string + default: bank_account + value: + description: Customer's identification number. + type: string + country: + description: Two-letter country code of identification issuer + type: string + bvn: + description: Customer's Bank Verification Number + type: string + bank_code: + description: + You can get the list of bank codes by calling the List Banks + endpoint (https://api.paystack.co/bank). + type: string + account_number: + description: Customer's bank account number. + type: string + CustomerValidateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + DedicatedNubanFetchResponse: type: object properties: status: @@ -5726,103 +5894,107 @@ components: data: type: object properties: + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug id: type: integer - name: + account_name: type: string - type: + account_number: type: string - currency: + created_at: type: string - integration: - type: integer - domain: + updated_at: type: string - split_code: + currency: type: string + split_config: + nullable: true active: type: boolean - bearer_type: - type: string - bearer_subaccount: - type: integer - createdAt: - type: string - updatedAt: - type: string - is_dynamic: + assigned: type: boolean - subaccounts: - type: array - items: - $ref: '#/components/schemas/SplitSubaccountsArray' - total_subaccounts: - type: integer required: + - customer + - bank - id - - name - - type + - account_name + - account_number + - created_at + - updated_at - currency - - integration - - domain - - split_code + - split_config - active - - bearer_type - - bearer_subaccount - - createdAt - - updatedAt - - is_dynamic - - subaccounts - - total_subaccounts + - assigned required: - status - message - data - SplitRemoveSubaccountResponse: + DedicatedVirtualAccountCreate: type: object - properties: - status: - type: boolean - message: - type: string required: - - status - - message - TerminalSendEventData: - type: object - description: The parameters needed to perform the specified action + - customer properties: - id: - description: The invoice or transaction ID you want to push to the Terminal - type: integer - format: int64 - reference: - description: The offline_reference from the Payment Request response + customer: + description: Customer ID or code type: string - example: - id: 7895939 - reference: '4634337895939' - TerminalSendEvent: - type: object - properties: - type: - description: The type of event to push + preferred_bank: + description: + The bank slug for preferred bank. To get a list of available banks, + use the List Providers endpoint type: string - enum: - - invoice - - transaction - action: - description: | - The action the Terminal needs to perform. For the invoice type, the action can either be process or view. - For the transaction type, the action can either be process or print. + subaccount: + description: Subaccount code of the account you want to split the transaction with type: string - enum: - - process - - view - - print - data: - $ref: '#/components/schemas/TerminalSendEventData' - TerminalGetStatusResponse: + split_code: + description: + Split code consisting of the lists of accounts you want to split + the transaction with + type: string + DedicatedNubanCreateResponse: type: object properties: status: @@ -5832,53 +6004,161 @@ components: data: type: object properties: - online: - type: boolean - available: - type: boolean - required: - - online - - available - required: - - status - - message - - data - TerminalListsResponseArray: - type: object - properties: - id: - type: integer - serial_number: - type: string - nullable: true - device_make: + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + account_name: + type: string + account_number: + type: string + assigned: + type: boolean + currency: + type: string + metadata: + nullable: true + active: + type: boolean + id: + type: integer + created_at: + type: string + updated_at: + type: string + assignment: + type: object + properties: + integration: + type: integer + assignee_id: + type: integer + assignee_type: + type: string + expired: + type: boolean + account_type: + type: string + assigned_at: + type: string + expired_at: + nullable: true + required: + - integration + - assignee_id + - assignee_type + - expired + - account_type + - assigned_at + - expired_at + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + required: + - bank + - account_name + - account_number + - assigned + - currency + - metadata + - active + - id + - created_at + - updated_at + - assignment + - customer + required: + - status + - message + - data + DedicatedVirtualAccountAssign: + type: object + required: + - email + - first_name + - last_name + - phone + - preferred_bank + - country + properties: + email: + description: Customer's email address type: string - nullable: true - terminal_id: + first_name: + description: Customer's first name type: string - integration: - type: integer - domain: + last_name: + description: Customer's last name type: string - name: + phone: + description: Customer's phone name type: string - nullable: true - address: + preferred_bank: + description: > + The bank slug for preferred bank. To get a list of available banks, + + use the List Banks endpoint, passing `pay_with_bank_transfer=true` + query parameter type: string - nullable: true - status: + country: + description: Currently accepts NG only type: string - required: - - id - - serial_number - - device_make - - terminal_id - - integration - - domain - - name - - address - - status - TerminalListsResponse: + account_number: + description: Customer's account number + type: string + bvn: + description: Customer's Bank Verification Number + type: string + bank_code: + description: Customer's bank code + type: string + subaccount: + description: Subaccount code of the account you want to split the transaction with + type: string + split_code: + description: + Split code consisting of the lists of accounts you want to split + the transaction with + type: string + DedicatedNubanDeactivateResponse: type: object properties: status: @@ -5886,180 +6166,162 @@ components: message: type: string data: - type: array - items: - $ref: '#/components/schemas/TerminalListsResponseArray' - meta: type: object properties: - next: - type: array - nullable: true - items: {} - previous: - type: array + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + account_name: + type: string + account_number: + type: string + assigned: + type: boolean + currency: + type: string + metadata: nullable: true - items: {} - perPage: + active: + type: boolean + id: type: integer + created_at: + type: string + updated_at: + type: string + assignment: + type: object + properties: + assignee_id: + type: integer + assignee_type: + type: string + assigned_at: + type: string + integration: + type: integer + account_type: + type: string + required: + - assignee_id + - assignee_type + - assigned_at + - integration + - account_type required: - - next - - previous - - perPage - additionalProperties: false + - bank + - account_name + - account_number + - assigned + - currency + - metadata + - active + - id + - created_at + - updated_at + - assignment required: - status - message - data - - meta - TerminalGetResponse: + DedicatedVirtualAccountSplit: type: object + required: + - account_number properties: - status: - type: boolean - message: + account_number: + description: Valid Dedicated virtual account type: string - data: - type: object - properties: - id: - type: integer - serial_number: - type: string - device_make: - type: string - nullable: true - terminal_id: - type: string - integration: - type: integer - domain: - type: string - name: - type: string - nullable: true - address: - type: string - nullable: true - status: - type: string - split_code: - type: string - nullable: true - required: - - id - - serial_number - - device_make - - terminal_id - - integration - - domain - - name - - address - - status - - split_code - required: - - status - - message - - data - TerminalUpate: - type: object - description: Model for updating a Terminal details - properties: - name: - description: The new name for the Terminal - type: string - address: - description: The new address for the Terminal + subaccount: + description: Subaccount code of the account you want to split the transaction with type: string - example: - name: Oreos - address: Somewhere on earth - TerminalUpdateResponse: - type: object - properties: - status: - type: boolean - message: + split_code: + description: + Split code consisting of the lists of accounts you want to split + the transaction with type: string - required: - - status - - message - TerminalActivationToggle: + ApplePayParam: type: object - description: Model for activating and deactivating a debug Terminal required: - - serial_number + - domainName properties: - serial_number: - description: Device Serial Number + domainName: + description: The domain or subdomain for your application type: string example: - serial_number: '1111150412230003899' - TerminalCommissionDeviceResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - TerminalDecommissionDeviceResponse: + domainName: example.com + ApplePayCreateOkModel: type: object properties: status: + description: An indicator type: boolean message: + description: A short description of the response type: string - required: - - status - - message - CustomerListResponseArray: + example: + status: true + message: Domain successfully registered on Apple Pay + SubaccountListResponseArray: type: object properties: - integration: + id: type: integer - first_name: + subaccount_code: type: string - nullable: true - last_name: + business_name: type: string - nullable: true - email: + description: type: string - phone: + primary_contact_name: type: string - nullable: true - metadata: - type: object - nullable: true - domain: + primary_contact_email: type: string - customer_code: + primary_contact_phone: type: string - risk_action: + metadata: type: string - id: + percentage_charge: + type: number + settlement_bank: + type: string + bank_id: type: integer - createdAt: + account_number: type: string - updatedAt: + currency: type: string + active: + type: integer + is_verified: + type: boolean required: - - integration - - first_name - - last_name - - email - - phone - - metadata - - domain - - customer_code - - risk_action - id - - createdAt - - updatedAt - CustomerListResponse: + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - settlement_bank + - bank_id + - account_number + - currency + - active + - is_verified + SubaccountListResponse: type: object properties: status: @@ -6069,7 +6331,7 @@ components: data: type: array items: - $ref: '#/components/schemas/CustomerListResponseArray' + $ref: "#/components/schemas/SubaccountListResponseArray" meta: type: object properties: @@ -6078,9 +6340,7 @@ components: skipped: type: integer perPage: - anyOf: - - type: string - - type: integer + type: integer page: type: integer pageCount: @@ -6097,27 +6357,45 @@ components: - message - data - meta - CustomerCreate: + SubaccountCreate: type: object required: - - email + - business_name + - settlement_bank + - account_number + - percentage_charge properties: - email: - description: Customer's email address + business_name: + description: Name of business for subaccount type: string - first_name: - description: Customer's first name + settlement_bank: + description: + Bank code for the bank. You can get the list of Bank Codes by + calling the List Banks endpoint. type: string - last_name: - description: Customer's last name + account_number: + description: Bank account number type: string - phone: + percentage_charge: description: Customer's phone number + type: number + format: float + description: + description: A description for this subaccount + type: string + primary_contact_email: + description: A contact email for the subaccount + type: string + primary_contact_name: + description: The name of the contact person for this subaccount + type: string + primary_contact_phone: + description: A phone number to call for this subaccount type: string metadata: description: Stringified JSON object of custom data type: string - CustomerCreateResponse: + SubaccountCreateResponse: type: object properties: status: @@ -6127,69 +6405,84 @@ components: data: type: object properties: - transactions: - type: array - items: {} - subscriptions: - type: array - items: {} - authorizations: - type: array - items: {} - email: + business_name: type: string - first_name: + account_name: type: string - last_name: + nullable: true + description: type: string - phone: + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + account_number: + type: string + percentage_charge: + type: number + settlement_bank: + type: string + currency: type: string + bank: + type: integer integration: type: integer domain: type: string - metadata: - type: object - properties: - calling_code: - type: string - customer_code: + product: type: string - risk_action: + managed_by_integration: + type: integer + subaccount_code: + type: string + is_verified: + type: boolean + settlement_schedule: type: string + active: + type: boolean + migrate: + type: boolean id: type: integer createdAt: type: string updatedAt: type: string - identified: - type: boolean - identifications: - nullable: true required: - - transactions - - subscriptions - - authorizations - - email - - first_name - - last_name - - phone + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - account_number + - percentage_charge + - settlement_bank + - currency + - bank - integration - domain - - metadata - - customer_code - - risk_action + - managed_by_integration + - product + - subaccount_code + - is_verified + - settlement_schedule + - active + - migrate - id - createdAt - updatedAt - - identified - - identifications required: - status - message - data - CustomerFetchResponse: + SubaccountFetchResponse: type: object properties: status: @@ -6199,105 +6492,120 @@ components: data: type: object properties: - transactions: - type: array - items: {} - subscriptions: - type: array - items: {} - authorizations: - type: array - items: {} - first_name: + integration: + type: integer + account_name: type: string - last_name: + nullable: true + bank: + type: integer + managed_by_integration: + type: integer + domain: type: string - email: + subaccount_code: type: string - phone: + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: type: string metadata: - type: object - properties: - calling_code: - type: string - domain: type: string - customer_code: + percentage_charge: + type: number + is_verified: + type: boolean + settlement_bank: type: string - risk_action: + account_number: + type: string + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + currency: + type: string + product: type: string id: type: integer - integration: - type: integer createdAt: type: string updatedAt: type: string - created_at: - type: string - updated_at: - type: string - total_transactions: - type: integer - total_transaction_value: - type: array - items: {} - dedicated_account: - nullable: true - dedicated_accounts: - type: array - items: {} - nullable: true - identified: - type: boolean - identifications: - nullable: true required: - - transactions - - subscriptions - - authorizations - - first_name - - last_name - - email - - phone - - metadata + - integration + - bank + - managed_by_integration - domain - - customer_code - - risk_action + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - is_verified + - settlement_bank + - account_number + - settlement_schedule + - active + - migrate + - currency + - product - id - - integration - createdAt - updatedAt - - created_at - - updated_at - - total_transactions - - total_transaction_value - - dedicated_account - - dedicated_accounts - - identified - - identifications required: - status - message - data - CustomerUpdate: + SubaccountUpdate: type: object properties: - first_name: - description: Customer's first name + business_name: + description: Name of business for subaccount type: string - last_name: - description: Customer's last name + settlement_bank: + description: + Bank code for the bank. You can get the list of Bank Codes by + calling the List Banks endpoint. type: string - phone: + account_number: + description: Bank account number + type: string + active: + description: Activate or deactivate a subaccount + type: boolean + percentage_charge: description: Customer's phone number + type: number + format: float + description: + description: A description for this subaccount + type: string + primary_contact_email: + description: A contact email for the subaccount + type: string + primary_contact_name: + description: The name of the contact person for this subaccount + type: string + primary_contact_phone: + description: A phone number to call for this subaccount type: string metadata: description: Stringified JSON object of custom data type: string - CustomerUpdateResponse: + SubaccountUpdateResponse: type: object properties: status: @@ -6307,67 +6615,165 @@ components: data: type: object properties: - first_name: + domain: type: string - last_name: + subaccount_code: type: string - email: + account_name: type: string - phone: + nullable: true + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: type: string metadata: - type: object - domain: type: string - customer_code: + percentage_charge: + type: number + is_verified: + type: boolean + settlement_bank: type: string - risk_action: + account_number: + type: string + settlement_schedule: + type: string + active: + type: boolean + migrate: + type: boolean + currency: + type: string + product: type: string id: type: integer integration: type: integer + bank: + type: integer + managed_by_integration: + type: integer createdAt: type: string updatedAt: type: string - identified: - type: boolean - identifications: - nullable: true required: - - first_name - - last_name - - email - - phone - - metadata - domain - - customer_code - - risk_action + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - is_verified + - settlement_bank + - account_number + - settlement_schedule + - active + - migrate + - currency + - product - id - integration + - bank + - managed_by_integration - createdAt - updatedAt - - identified - - identifications required: - status - message - data - CustomerRiskAction: + PlanListResponseArray: type: object - required: - - customer properties: - customer: - description: Customer's code, or email address + subscriptions: + type: array + items: {} + pages: + type: array + items: {} + domain: type: string - risk_action: - description: | - One of the possible risk actions [ default, allow, deny ]. allow to whitelist. - deny to blacklist. Customers start with a default risk action. + name: type: string - CustomerWhitelistBlacklistResponse: + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + hosted_page_url: + nullable: true + hosted_page_summary: + nullable: true + currency: + type: string + migrate: + type: boolean + is_deleted: + type: boolean + is_archived: + type: boolean + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + total_subscriptions: + type: integer + active_subscriptions: + type: integer + total_subscriptions_revenue: + type: integer + required: + - subscriptions + - pages + - domain + - name + - plan_code + - description + - amount + - interval + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - hosted_page_url + - hosted_page_summary + - currency + - migrate + - is_deleted + - is_archived + - id + - integration + - createdAt + - updatedAt + - total_subscriptions + - active_subscriptions + - total_subscriptions_revenue + PlanListResponse: type: object properties: status: @@ -6375,134 +6781,138 @@ components: message: type: string data: + type: array + items: + $ref: "#/components/schemas/PlanListResponseArray" + meta: type: object properties: - transactions: - type: array - items: {} - subscriptions: - type: array - items: {} - authorizations: - type: array - items: {} - first_name: - type: string - last_name: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + PlanCreate: + type: object + required: + - name + - amount + - interval + properties: + name: + description: Name of plan + type: string + amount: + description: + Amount should be in kobo if currency is NGN, pesewas, if currency + is GHS, and cents, if currency is ZAR + type: integer + interval: + description: Interval in words. Valid intervals are daily, weekly, + monthly,biannually, annually + type: string + description: + description: A description for this plan + type: string + send_invoices: + description: Set to false if you don't want invoices to be sent to your customers + type: boolean + send_sms: + description: + Set to false if you don't want text messages to be sent to your + customers + type: boolean + currency: + description: + Currency in which amount is set. Allowed values are NGN, GHS, ZAR + or USD + type: string + invoice_limit: + description: |- + Number of invoices to raise during subscription to this plan. + Can be overridden by specifying an invoice_limit while subscribing. + type: integer + PlanCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + currency: type: string - email: + name: type: string - phone: + amount: + type: integer + interval: type: string - metadata: - type: object + integration: + type: integer domain: type: string - customer_code: - type: string - risk_action: + plan_code: type: string - id: + invoice_limit: type: integer - integration: + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + migrate: + type: boolean + is_archived: + type: boolean + id: type: integer createdAt: type: string updatedAt: type: string - identified: - type: boolean - identifications: - nullable: true required: - - transactions - - subscriptions - - authorizations - - first_name - - last_name - - email - - phone - - metadata + - currency + - name + - amount + - interval + - integration - domain - - customer_code - - risk_action + - plan_code + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - migrate + - is_archived - id - - integration - createdAt - updatedAt - - identified - - identifications required: - status - message - data - CustomerDeactivateAuthorization: - type: object - required: - - authorization_code - properties: - authorization_code: - description: Authorization code to be deactivated - type: string - CustomerDeactivateAuthorizationResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - CustomerValidate: - type: object - required: - - first_name - - last_name - - type - - country - - bvn - - bank_code - - account_number - properties: - first_name: - description: Customer's first name - type: string - middle_name: - description: Customer's middle name - type: string - last_name: - description: Customer's last name - type: string - type: - description: Predefined types of identification. - type: string - value: - description: Customer's identification number. Required if type is bvn - type: string - country: - description: Two-letter country code of identification issuer - type: string - bvn: - description: Customer's Bank Verification Number - type: string - bank_code: - description: You can get the list of bank codes by calling the List Banks endpoint (https://api.paystack.co/bank). - type: string - account_number: - description: Customer's bank account number. - type: string - CustomerValidateResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - DedicatedNubanFetchResponse: + PlanFetchResponse: type: object properties: status: @@ -6512,421 +6922,331 @@ components: data: type: object properties: - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - risk_action: - type: string - international_format_phone: - type: string - nullable: true - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - bank: - type: object - properties: - name: - type: string - id: - type: integer - slug: - type: string - required: - - name - - id - - slug - id: - type: integer - account_name: + subscriptions: + type: array + items: {} + pages: + type: array + items: {} + domain: type: string - account_number: + name: type: string - created_at: + plan_code: type: string - updated_at: + description: + nullable: true + amount: + type: integer + interval: type: string + invoice_limit: + type: integer + send_invoices: + type: boolean + send_sms: + type: boolean + hosted_page: + type: boolean + hosted_page_url: + nullable: true + hosted_page_summary: + nullable: true currency: type: string - split_config: - nullable: true - active: + migrate: type: boolean - assigned: + is_deleted: type: boolean + is_archived: + type: boolean + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + pages_count: + type: integer + subscribers_count: + type: integer + subscriptions_count: + type: integer + active_subscriptions_count: + type: integer + nullable: true + total_revenue: + type: integer + subscribers: + type: array + items: {} required: - - customer - - bank - - id - - account_name - - account_number - - created_at - - updated_at + - subscriptions + - pages + - domain + - name + - plan_code + - description + - amount + - interval + - invoice_limit + - send_invoices + - send_sms + - hosted_page + - hosted_page_url + - hosted_page_summary - currency - - split_config - - active - - assigned + - migrate + - is_deleted + - is_archived + - id + - integration + - createdAt + - updatedAt + - pages_count + - subscribers_count + - subscriptions_count + - active_subscriptions_count + - total_revenue + - subscribers required: - status - message - data - DedicatedVirtualAccountCreate: + PlanUpdate: type: object - required: - - customer properties: - customer: - description: Customer ID or code - type: string - preferred_bank: - description: The bank slug for preferred bank. To get a list of available banks, use the List Providers endpoint + name: + description: Name of plan type: string - subaccount: - description: Subaccount code of the account you want to split the transaction with + amount: + description: + Amount should be in kobo if currency is NGN, pesewas, if currency + is GHS, and cents, if currency is ZAR + type: integer + interval: + description: Interval in words. Valid intervals are daily, weekly, + monthly,biannually, annually type: string - split_code: - description: Split code consisting of the lists of accounts you want to split the transaction with + description: + description: A description for this plan + type: boolean + send_invoices: + description: Set to false if you don't want invoices to be sent to your customers + type: boolean + send_sms: + description: + Set to false if you don't want text messages to be sent to your + customers + type: boolean + currency: + description: + Currency in which amount is set. Allowed values are NGN, GHS, ZAR + or USD type: string - DedicatedNubanCreateResponse: + invoice_limit: + description: |- + Number of invoices to raise during subscription to this plan. + Can be overridden by specifying an invoice_limit while subscribing. + type: integer + PlanUpdateResponse: type: object properties: status: type: boolean message: type: string - data: + required: + - status + - message + SubscriptionListResponseArray: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + start: + type: integer + quantity: + type: integer + subscription_code: + type: string + email_token: + type: string + amount: + type: integer + cron_expression: + type: string + nullable: true + next_payment_date: + type: string + nullable: true + open_invoice: + nullable: true + createdAt: + type: string + integration: + type: integer + plan: type: object properties: - bank: - type: object - properties: - name: - type: string - id: - type: integer - slug: - type: string - required: - - name - - id - - slug - account_name: + id: + type: integer + domain: type: string - account_number: + name: type: string - assigned: - type: boolean - currency: + plan_code: type: string - metadata: + description: nullable: true - active: - type: boolean - id: + amount: type: integer - created_at: + interval: type: string - updated_at: + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + integration: + type: integer + createdAt: + type: string + updatedAt: type: string - assignment: - type: object - properties: - integration: - type: integer - assignee_id: - type: integer - assignee_type: - type: string - expired: - type: boolean - account_type: - type: string - assigned_at: - type: string - expired_at: - nullable: true - required: - - integration - - assignee_id - - assignee_type - - expired - - account_type - - assigned_at - - expired_at - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - risk_action: - type: string - international_format_phone: - type: string - nullable: true - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone required: - - bank - - account_name - - account_number - - assigned - - currency - - metadata - - active - id - - created_at - - updated_at - - assignment - - customer - required: - - status - - message - - data - DedicatedVirtualAccountAssign: - type: object - required: - - email - - first_name - - last_name - - phone - - preferred_bank - - country - properties: - email: - description: Customer's email address - type: string - first_name: - description: Customer's first name - type: string - last_name: - description: Customer's last name - type: string - phone: - description: Customer's phone name - type: string - preferred_bank: - description: | - The bank slug for preferred bank. To get a list of available banks, - use the List Banks endpoint, passing `pay_with_bank_transfer=true` query parameter - type: string - country: - description: Currently accepts NG only - type: string - account_number: - description: Customer's account number - type: string - bvn: - description: Customer's Bank Verification Number - type: string - bank_code: - description: Customer's bank code - type: string - subaccount: - description: Subaccount code of the account you want to split the transaction with - type: string - split_code: - description: Split code consisting of the lists of accounts you want to split the transaction with - type: string - DedicatedNubanDeactivateResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: + - domain + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + - integration + - createdAt + - updatedAt + authorization: type: object properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + nullable: true bank: - type: object - properties: - name: - type: string - id: - type: integer - slug: - type: string - required: - - name - - id - - slug - account_name: type: string - account_number: + country_code: type: string - assigned: - type: boolean - currency: + brand: + type: string + reusable: + type: integer + signature: type: string - metadata: nullable: true - active: - type: boolean + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: id: type: integer - created_at: + first_name: type: string - updated_at: + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: type: string - assignment: - type: object - properties: - assignee_id: - type: integer - assignee_type: - type: string - assigned_at: - type: string - integration: - type: integer - account_type: - type: string - required: - - assignee_id - - assignee_type - - assigned_at - - integration - - account_type required: - - bank - - account_name - - account_number - - assigned - - currency - - metadata - - active - id - - created_at - - updated_at - - assignment - required: - - status - - message - - data - DedicatedVirtualAccountSplit: - type: object - required: - - account_number - properties: - account_number: - description: Valid Dedicated virtual account - type: string - subaccount: - description: Subaccount code of the account you want to split the transaction with - type: string + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + invoice_limit: + type: integer split_code: - description: Split code consisting of the lists of accounts you want to split the transaction with - type: string - ApplePayParam: - type: object - required: - - domainName - properties: - domainName: - description: The domain or subdomain for your application - type: string - example: - domainName: example.com - ApplePayCreateOkModel: - type: object - properties: - status: - description: An indicator - type: boolean - message: - description: A short description of the response - type: string - example: - status: true - message: Domain successfully registered on Apple Pay - SubaccountListResponseArray: - type: object - properties: - id: + nullable: true + payments_count: type: integer - subaccount_code: - type: string - business_name: - type: string - description: - type: string - primary_contact_name: - type: string - primary_contact_email: - type: string - primary_contact_phone: - type: string + most_recent_invoice: + nullable: true metadata: - type: string - percentage_charge: - type: number - settlement_bank: - type: string - bank_id: - type: integer - account_number: - type: string - currency: - type: string - active: - type: integer + type: object + nullable: true required: - id - - subaccount_code - - business_name - - description - - primary_contact_name - - primary_contact_email - - primary_contact_phone + - domain + - status + - start + - quantity + - subscription_code + - email_token + - amount + - cron_expression + - next_payment_date + - open_invoice + - createdAt + - integration + - plan + - authorization + - customer + - invoice_limit + - split_code + - payments_count + - most_recent_invoice - metadata - - percentage_charge - - settlement_bank - - bank_id - - account_number - - currency - - active - SubaccountListResponse: + SubscriptionListResponse: type: object properties: status: @@ -6936,7 +7256,7 @@ components: data: type: array items: - $ref: '#/components/schemas/SubaccountListResponseArray' + $ref: "#/components/schemas/SubscriptionListResponseArray" meta: type: object properties: @@ -6962,43 +7282,32 @@ components: - message - data - meta - SubaccountCreate: + SubscriptionCreate: type: object required: - - business_name - - settlement_bank - - account_number - - percentage_charge + - customer + - plan properties: - business_name: - description: Name of business for subaccount - type: string - settlement_bank: - description: Bank code for the bank. You can get the list of Bank Codes by calling the List Banks endpoint. - type: string - account_number: - description: Bank account number - type: string - percentage_charge: - description: Customer's phone number - type: number - format: float - description: - description: A description for this subaccount - type: string - primary_contact_email: - description: A contact email for the subaccount + customer: + description: Customer's email address or customer code type: string - primary_contact_name: - description: The name of the contact person for this subaccount + plan: + description: Plan code type: string - primary_contact_phone: - description: A phone number to call for this subaccount + authorization: + description: >- + If customer has multiple authorizations, you can set the desired + authorization you wish to use for this subscription here. + + If this is not supplied, the customer's most recent authorization + would be used type: string - metadata: - description: Stringified JSON object of custom data + start_date: + description: Set the date for the first debit. (ISO 8601 format) e.g. + 2017-05-16T00:30:13+01:00 type: string - SubaccountCreateResponse: + format: date-time + SubscriptionCreateResponse: type: object properties: status: @@ -7008,84 +7317,81 @@ components: data: type: object properties: - business_name: - type: string - account_name: - type: string - nullable: true - description: - type: string - primary_contact_name: - type: string - primary_contact_email: - type: string - primary_contact_phone: - type: string - metadata: - type: string - account_number: - type: string - percentage_charge: - type: number - settlement_bank: - type: string - currency: - type: string - bank: + customer: + type: integer + plan: type: integer integration: type: integer domain: type: string - product: + start: + type: integer + status: type: string - managed_by_integration: + quantity: type: integer - subaccount_code: + amount: + type: integer + authorization: + type: integer + invoice_limit: + type: integer + split_code: + nullable: true + subscription_code: type: string - is_verified: - type: boolean - settlement_schedule: + email_token: type: string - active: - type: boolean - migrate: - type: boolean id: type: integer + cancelledAt: + nullable: true createdAt: type: string updatedAt: type: string + cron_expression: + type: string + next_payment_date: + type: string + easy_cron_id: + type: string + nullable: true + open_invoice: + type: string + nullable: true + metadata: + type: object + nullable: true required: - - business_name - - description - - primary_contact_name - - primary_contact_email - - primary_contact_phone - - metadata - - account_number - - percentage_charge - - settlement_bank - - currency - - bank + - customer + - plan - integration - domain - - managed_by_integration - - product - - subaccount_code - - is_verified - - settlement_schedule - - active - - migrate + - start + - status + - quantity + - amount + - authorization + - invoice_limit + - split_code + - subscription_code + - email_token - id + - cancelledAt - createdAt - updatedAt - required: + - cron_expression + - next_payment_date + - easy_cron_id + - open_invoice + - metadata + required: - status - message - data - SubaccountFetchResponse: + SubscriptionFetchResponse: type: object properties: status: @@ -7095,286 +7401,316 @@ components: data: type: object properties: - integration: - type: integer - account_name: - type: string - nullable: true - bank: - type: integer - managed_by_integration: + id: type: integer domain: type: string - subaccount_code: - type: string - business_name: - type: string - description: - type: string - primary_contact_name: - type: string - primary_contact_email: - type: string - primary_contact_phone: - type: string - metadata: - type: string - percentage_charge: - type: number - is_verified: - type: boolean - settlement_bank: + status: type: string - account_number: + subscription_code: type: string - settlement_schedule: + email_token: type: string - active: - type: boolean - migrate: - type: boolean - currency: + amount: + type: integer + cron_expression: type: string - product: + next_payment_date: type: string - id: - type: integer + open_invoice: + nullable: true createdAt: type: string - updatedAt: - type: string + cancelledAt: + nullable: true + integration: + type: integer + plan: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + invoices: + type: array + items: {} + invoices_history: + type: array + items: {} + invoice_limit: + type: integer + split_code: + nullable: true + most_recent_invoice: + nullable: true + payments_count: + type: integer + metadata: + type: object + nullable: true required: - - integration - - bank - - managed_by_integration - - domain - - subaccount_code - - business_name - - description - - primary_contact_name - - primary_contact_email - - primary_contact_phone - - metadata - - percentage_charge - - is_verified - - settlement_bank - - account_number - - settlement_schedule - - active - - migrate - - currency - - product - id + - domain + - status + - subscription_code + - email_token + - amount + - cron_expression + - next_payment_date + - open_invoice - createdAt - - updatedAt + - cancelledAt + - integration + - plan + - authorization + - customer + - invoices + - invoices_history + - invoice_limit + - split_code + - most_recent_invoice + - payments_count + - metadata required: - status - message - data - SubaccountUpdate: + SubscriptionToggle: type: object + required: + - code + - token properties: - business_name: - description: Name of business for subaccount - type: string - settlement_bank: - description: Bank code for the bank. You can get the list of Bank Codes by calling the List Banks endpoint. + code: + description: Subscription code type: string - account_number: - description: Bank account number + token: + description: Email token type: string - active: - description: Activate or deactivate a subaccount + SubscriptionDisableResponse: + type: object + properties: + status: type: boolean - percentage_charge: - description: Customer's phone number - type: number - format: float - description: - description: A description for this subaccount - type: string - primary_contact_email: - description: A contact email for the subaccount + message: type: string - primary_contact_name: - description: The name of the contact person for this subaccount - type: string - primary_contact_phone: - description: A phone number to call for this subaccount - type: string - metadata: - description: Stringified JSON object of custom data - type: string - SubaccountUpdateResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - domain: - type: string - subaccount_code: - type: string - account_name: - type: string - nullable: true - business_name: - type: string - description: - type: string - primary_contact_name: - type: string - primary_contact_email: - type: string - primary_contact_phone: - type: string - metadata: - type: string - percentage_charge: - type: number - is_verified: - type: boolean - settlement_bank: - type: string - account_number: - type: string - settlement_schedule: - type: string - active: - type: boolean - migrate: - type: boolean - currency: - type: string - product: - type: string - id: - type: integer - integration: - type: integer - bank: - type: integer - managed_by_integration: - type: integer - createdAt: - type: string - updatedAt: - type: string - required: - - domain - - subaccount_code - - business_name - - description - - primary_contact_name - - primary_contact_email - - primary_contact_phone - - metadata - - percentage_charge - - is_verified - - settlement_bank - - account_number - - settlement_schedule - - active - - migrate - - currency - - product - - id - - integration - - bank - - managed_by_integration - - createdAt - - updatedAt required: - status - message - - data - PlanListResponseArray: + ProductListsResponseArray: type: object properties: - subscriptions: - type: array - items: {} - pages: - type: array - items: {} - domain: - type: string + id: + type: integer name: type: string - plan_code: - type: string description: - nullable: true - amount: - type: integer - interval: type: string - invoice_limit: + product_code: + type: string + slug: + type: string + currency: + type: string + price: type: integer - send_invoices: + quantity: + type: integer + quantity_sold: + type: integer + active: type: boolean - send_sms: + domain: + type: string + type: + type: string + in_stock: type: boolean - hosted_page: + unlimited: type: boolean - hosted_page_url: + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + files: + type: array + items: {} + success_message: nullable: true - hosted_page_summary: + redirect_url: nullable: true - currency: - type: string - migrate: - type: boolean - is_deleted: - type: boolean - is_archived: - type: boolean - id: - type: integer - integration: + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: type: integer + maximum_orderable: + nullable: true createdAt: type: string updatedAt: type: string - total_subscriptions: - type: integer - active_subscriptions: + digital_assets: + type: array + items: {} + variant_options: + type: array + items: {} + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + integration: type: integer - total_subscriptions_revenue: + low_stock_alert: type: integer required: - - subscriptions - - pages - - domain + - id - name - - plan_code - description - - amount - - interval - - invoice_limit - - send_invoices - - send_sms - - hosted_page - - hosted_page_url - - hosted_page_summary + - product_code + - slug - currency - - migrate - - is_deleted - - is_archived - - id - - integration + - price + - quantity + - quantity_sold + - active + - domain + - type + - in_stock + - unlimited + - metadata + - files + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable - createdAt - updatedAt - - total_subscriptions - - active_subscriptions - - total_subscriptions_revenue - PlanListResponse: + - digital_assets + - variant_options + - is_shippable + - shipping_fields + - integration + - low_stock_alert + ProductListsResponse: type: object properties: status: @@ -7384,7 +7720,7 @@ components: data: type: array items: - $ref: '#/components/schemas/PlanListResponseArray' + $ref: "#/components/schemas/ProductListsResponseArray" meta: type: object properties: @@ -7393,7 +7729,7 @@ components: skipped: type: integer perPage: - type: integer + type: string page: type: integer pageCount: @@ -7410,40 +7746,49 @@ components: - message - data - meta - PlanCreate: + ProductCreate: type: object required: - name - - amount - - interval + - description + - price + - currency properties: name: - description: Name of plan - type: string - amount: - description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR - type: integer - interval: - description: Interval in words. Valid intervals are daily, weekly, monthly,biannually, annually + description: Name of product type: string description: - description: A description for this plan + description: The description of the product type: string - send_invoices: - description: Set to false if you don't want invoices to be sent to your customers - type: boolean - send_sms: - description: Set to false if you don't want text messages to be sent to your customers - type: boolean + price: + description: > + Price should be in kobo if currency is NGN, pesewas, if currency is + GHS, + + and cents, if currency is ZAR + type: integer currency: - description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + description: > + Currency in which price is set. Allowed values are: NGN, GHS, ZAR or + USD type: string - invoice_limit: - description: |- - Number of invoices to raise during subscription to this plan. - Can be overridden by specifying an invoice_limit while subscribing. + unlimited: + description: > + Set to true if the product has unlimited stock. Leave as false if + the + + product has limited stock + type: boolean + quantity: + description: Number of products in stock. Use if limited is true type: integer - PlanCreateResponse: + split_code: + description: The split code if sharing the transaction with partners + type: string + metadata: + description: Stringified JSON object of custom data + type: string + ProductCreateResponse: type: object properties: status: @@ -7453,31 +7798,77 @@ components: data: type: object properties: - currency: - type: string + variants_options: + type: array + items: {} + variants: + type: array + items: {} name: type: string - amount: + description: + type: string + currency: + type: string + price: type: integer - interval: + quantity: + type: integer + type: type: string + is_shippable: + type: boolean + unlimited: + type: boolean + files: + type: array + items: {} + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees integration: type: integer domain: type: string - plan_code: + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: type: string - invoice_limit: + product_code: + type: string + quantity_sold: type: integer - send_invoices: - type: boolean - send_sms: - type: boolean - hosted_page: + active: type: boolean - migrate: + deleted_at: + nullable: true + in_stock: type: boolean - is_archived: + minimum_orderable: + type: integer + maximum_orderable: + type: integer + nullable: true + redirect_url: + type: string + nullable: true + low_stock_alert: type: boolean id: type: integer @@ -7486,19 +7877,30 @@ components: updatedAt: type: string required: - - currency + - variants_options + - variants - name - - amount - - interval + - description + - currency + - price + - quantity + - type + - is_shippable + - unlimited + - files + - shipping_fields - integration - domain - - plan_code - - invoice_limit - - send_invoices - - send_sms - - hosted_page - - migrate - - is_archived + - metadata + - slug + - product_code + - quantity_sold + - active + - deleted_at + - in_stock + - minimum_orderable + - maximum_orderable + - low_stock_alert - id - createdAt - updatedAt @@ -7506,7 +7908,7 @@ components: - status - message - data - PlanFetchResponse: + ProductFetchResponse: type: object properties: status: @@ -7516,192 +7918,252 @@ components: data: type: object properties: - subscriptions: - type: array - items: {} - pages: + digital_assets: type: array items: {} - domain: - type: string + integration: + type: integer name: type: string - plan_code: - type: string description: - nullable: true - amount: + type: string + product_code: + type: string + price: type: integer - interval: + currency: type: string - invoice_limit: + quantity: type: integer - send_invoices: - type: boolean - send_sms: - type: boolean - hosted_page: - type: boolean - hosted_page_url: + quantity_sold: nullable: true - hosted_page_summary: + type: + type: string + files: + type: array + items: {} + file_path: nullable: true - currency: + is_shippable: + type: boolean + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + unlimited: + type: boolean + domain: type: string - migrate: + active: type: boolean - is_deleted: + features: + nullable: true + in_stock: type: boolean - is_archived: + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + low_stock_alert: type: boolean + stock_threshold: + nullable: true + expires_in: + nullable: true id: type: integer - integration: - type: integer createdAt: type: string updatedAt: type: string - pages_count: - type: integer - subscribers_count: - type: integer - subscriptions_count: - type: integer - active_subscriptions_count: - type: integer - nullable: true - total_revenue: - type: integer - subscribers: - type: array - items: {} required: - - subscriptions - - pages - - domain + - digital_assets + - integration - name - - plan_code - description - - amount - - interval - - invoice_limit - - send_invoices - - send_sms - - hosted_page - - hosted_page_url - - hosted_page_summary + - product_code + - price - currency - - migrate - - is_deleted - - is_archived - - id - - integration + - quantity + - quantity_sold + - type + - files + - file_path + - is_shippable + - shipping_fields + - unlimited + - domain + - active + - features + - in_stock + - metadata + - slug + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - low_stock_alert + - stock_threshold + - expires_in + - id - createdAt - updatedAt - - pages_count - - subscribers_count - - subscriptions_count - - active_subscriptions_count - - total_revenue - - subscribers required: - status - message - data - PlanUpdate: + ProductUpdate: type: object properties: name: - description: Name of plan - type: string - amount: - description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR - type: integer - interval: - description: Interval in words. Valid intervals are daily, weekly, monthly,biannually, annually + description: Name of product type: string description: - description: A description for this plan - type: boolean - send_invoices: - description: Set to false if you don't want invoices to be sent to your customers - type: boolean - send_sms: - description: Set to false if you don't want text messages to be sent to your customers - type: boolean + description: The description of the product + type: string + price: + description: > + Price should be in kobo if currency is NGN, pesewas, if currency is + GHS, + + and cents, if currency is ZAR + type: integer currency: - description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + description: > + Currency in which price is set. Allowed values are: NGN, GHS, ZAR or + USD type: string - invoice_limit: - description: |- - Number of invoices to raise during subscription to this plan. - Can be overridden by specifying an invoice_limit while subscribing. + unlimited: + description: > + Set to true if the product has unlimited stock. Leave as false if + the + + product has limited stock + type: boolean + quantity: + description: Number of products in stock. Use if limited is true type: integer - PlanUpdateResponse: + split_code: + description: The split code if sharing the transaction with partners + type: string + metadata: + description: JSON object of custom data + type: object + ProductUpdateResponse: type: object properties: status: type: boolean message: type: string - required: - - status - - message - SubscriptionListResponseArray: - type: object - properties: - id: - type: integer - domain: - type: string - status: - type: string - start: - type: integer - quantity: - type: integer - subscription_code: - type: string - email_token: - type: string - amount: - type: integer - cron_expression: - type: string - nullable: true - next_payment_date: - type: string - nullable: true - open_invoice: - nullable: true - createdAt: - type: string - integration: - type: integer - plan: + data: type: object properties: - id: - type: integer - domain: - type: string name: type: string - plan_code: - type: string description: - nullable: true - amount: + type: string + product_code: + type: string + price: type: integer - interval: + currency: type: string - send_invoices: + quantity: + type: integer + quantity_sold: + type: integer + type: + type: string + files: + type: array + items: {} + file_path: + nullable: true + is_shippable: type: boolean - send_sms: + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + unlimited: type: boolean - currency: + domain: + type: string + active: + type: boolean + features: + nullable: true + in_stock: + type: boolean + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: type: string + success_message: + nullable: true + redirect_url: + nullable: true + split_code: + nullable: true + notification_emails: + nullable: true + minimum_orderable: + type: integer + maximum_orderable: + nullable: true + low_stock_alert: + type: boolean + stock_threshold: + nullable: true + expires_in: + nullable: true + id: + type: integer integration: type: integer createdAt: @@ -7709,127 +8171,94 @@ components: updatedAt: type: string required: - - id - - domain - name - - plan_code - description - - amount - - interval - - send_invoices - - send_sms + - product_code + - price - currency + - quantity + - quantity_sold + - type + - files + - file_path + - is_shippable + - shipping_fields + - unlimited + - domain + - active + - features + - in_stock + - metadata + - slug + - success_message + - redirect_url + - split_code + - notification_emails + - minimum_orderable + - maximum_orderable + - low_stock_alert + - stock_threshold + - expires_in + - id - integration - createdAt - updatedAt - authorization: - type: object - properties: - authorization_code: - type: string - bin: - type: string - nullable: true - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - nullable: true - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: integer - signature: - type: string - nullable: true - account_name: - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - - account_name - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - nullable: true - metadata: - type: string - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - invoice_limit: + required: + - status + - message + - data + ProductDeleteResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + StorefrontListResponseArray: + type: object + properties: + id: type: integer - split_code: - nullable: true - payments_count: + name: + type: string + slug: + type: string + orders_count: type: integer - most_recent_invoice: + status: + type: string + revenue: nullable: true + currency: + type: string + products: + type: array + items: {} + contacts: + type: array + items: {} + social_media: + type: array + items: {} + shipping_fees: + type: array + items: {} required: - id - - domain + - name + - slug + - orders_count - status - - start - - quantity - - subscription_code - - email_token - - amount - - cron_expression - - next_payment_date - - open_invoice - - createdAt - - integration - - plan - - authorization - - customer - - invoice_limit - - split_code - - payments_count - - most_recent_invoice - SubscriptionListResponse: + - revenue + - currency + - products + - contacts + - social_media + - shipping_fees + StorefrontListResponse: type: object properties: status: @@ -7839,7 +8268,7 @@ components: data: type: array items: - $ref: '#/components/schemas/SubscriptionListResponseArray' + $ref: "#/components/schemas/StorefrontListResponseArray" meta: type: object properties: @@ -7865,28 +8294,48 @@ components: - message - data - meta - SubscriptionCreate: + StorefrontCreate: type: object required: - - customer - - plan + - name + - slug + - currency properties: - customer: - description: Customer's email address or customer code + name: + description: Name of the storefront type: string - plan: - description: Plan code + slug: + description: > + A unique identifier to access your store. Once the storefront is + created, it can be accessed from + + https://paystack.shop/your-slug type: string - authorization: - description: |- - If customer has multiple authorizations, you can set the desired authorization you wish to use for this subscription here. - If this is not supplied, the customer's most recent authorization would be used + currency: + description: > + Currency for prices of products in your storefront. Allowed values + are: `NGN`, `GHS`, `KES`, `ZAR` or `USD` type: string - start_date: - description: Set the date for the first debit. (ISO 8601 format) e.g. 2017-05-16T00:30:13+01:00 + description: + description: The description of the storefront type: string - format: date-time - SubscriptionCreateResponse: + StorefrontContactsArray: + type: object + properties: + value: + type: string + id: + type: integer + type_name: + nullable: true + type: + type: integer + required: + - value + - id + - type_name + - type + StorefrontCreateResponse: type: object properties: status: @@ -7896,69 +8345,83 @@ components: data: type: object properties: - customer: - type: integer - plan: - type: integer - integration: - type: integer - domain: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: "#/components/schemas/StorefrontContactsArray" + name: type: string - start: - type: integer - status: + slug: type: string - quantity: - type: integer - amount: - type: integer - authorization: - type: integer - invoice_limit: - type: integer - split_code: + currency: + type: string + welcome_message: nullable: true - subscription_code: + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: type: string - email_token: + background_color: type: string - id: + status: + type: string + shippable: + type: boolean + integration: type: integer - cancelledAt: + domain: + type: string + digital_product_expiry: + nullable: true + metadata: + type: object nullable: true + id: + type: integer createdAt: type: string updatedAt: type: string - cron_expression: - type: string - next_payment_date: - type: string + products: + type: array + items: {} + shipping_fees: + type: array + items: {} required: - - customer - - plan + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color + - status + - shippable - integration - domain - - start - - status - - quantity - - amount - - authorization - - invoice_limit - - split_code - - subscription_code - - email_token + - digital_product_expiry - id - - cancelledAt - createdAt - updatedAt - - cron_expression - - next_payment_date + - products + - shipping_fees required: - status - message - data - SubscriptionFetchResponse: + StorefrontFetchResponse: type: object properties: status: @@ -7968,188 +8431,123 @@ components: data: type: object properties: - id: - type: integer - domain: - type: string - status: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: "#/components/schemas/StorefrontContactsArray" + name: type: string - subscription_code: + slug: type: string - email_token: + currency: type: string - amount: - type: integer - cron_expression: + welcome_message: + nullable: true + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: type: string - next_payment_date: + background_color: type: string - open_invoice: - nullable: true - createdAt: + status: type: string - cancelledAt: - nullable: true + shippable: + type: boolean integration: type: integer - plan: - type: object - properties: - id: - type: integer - name: - type: string - plan_code: - type: string - description: - nullable: true - amount: - type: integer - interval: - type: string - send_invoices: - type: boolean - send_sms: - type: boolean - currency: - type: string - required: - - id - - name - - plan_code - - description - - amount - - interval - - send_invoices - - send_sms - - currency - authorization: - type: object - properties: - authorization_code: - type: string - bin: - type: string - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: boolean - signature: - type: string - account_name: - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - - account_name - customer: + domain: + type: string + digital_product_expiry: + nullable: true + metadata: type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - invoices: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + products: type: array items: {} - invoices_history: + shipping_fees: type: array items: {} - invoice_limit: - type: integer - split_code: - nullable: true - most_recent_invoice: - nullable: true - payments_count: - type: integer required: - - id - - domain + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color - status - - subscription_code - - email_token - - amount - - cron_expression - - next_payment_date - - open_invoice - - createdAt - - cancelledAt + - shippable - integration - - plan - - authorization - - customer - - invoices - - invoices_history - - invoice_limit - - split_code - - most_recent_invoice - - payments_count + - domain + - digital_product_expiry + - id + - createdAt + - updatedAt + - products + - shipping_fees + meta: + type: object + properties: + product_count: + type: integer + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - product_count + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false required: - status - message - data - SubscriptionToggle: + - meta + StorefrontUpdate: type: object - required: - - code - - token properties: - code: - description: Subscription code + name: + description: Name of the storefront type: string - token: - description: Email token + slug: + description: > + A unique identifier to access your store. Once the storefront is + created, it can be accessed from + + https://paystack.shop/your-slug type: string - SubscriptionDisableResponse: + description: + description: The description of the storefront + type: string + StorefrontUpdateResponse: type: object properties: status: @@ -8159,121 +8557,178 @@ components: required: - status - message - ProductListsResponseArray: + StorefrontDeleteResponse: type: object properties: - id: - type: integer - name: - type: string - description: - type: string - product_code: + status: + type: boolean + message: type: string - slug: + required: + - status + - message + StorefrontAddProducts: + type: object + required: + - products + properties: + products: + description: An array of product IDs + type: array + items: + type: integer + OrderItemsArray: + type: object + properties: + order_item_id: + type: integer + orderId: + type: integer + type: type: string - currency: + item: + type: integer + current_total_items_price: + type: integer + files: type: string - price: + order: type: integer - quantity: + amount: type: integer - quantity_sold: + quantity: type: integer - active: - type: boolean - domain: + createdAt: type: string - type: + name: type: string - in_stock: - type: boolean - unlimited: - type: boolean - metadata: - type: object - properties: - background_color: - type: string - required: - - background_color - files: - type: array - items: {} - success_message: - nullable: true - redirect_url: + product_level_type: + type: string + product_id: + type: integer + product_success_message: nullable: true - split_code: + product_redirect_url: nullable: true - notification_emails: + IFNULL(p1.expires_in, p2.expires_in): nullable: true - minimum_orderable: + product_quantity_sold: type: integer - maximum_orderable: + product_notification_emails: nullable: true - createdAt: + IFNULL(p1.metadata, p2.metadata): type: string - updatedAt: + storefront_redirect_url: + nullable: true + storefront_success_message: + nullable: true + required: + - order_item_id + - orderId + - type + - item + - current_total_items_price + - files + - order + - amount + - quantity + - createdAt + - name + - product_level_type + - product_id + - product_success_message + - product_redirect_url + - IFNULL(p1.expires_in, p2.expires_in) + - product_quantity_sold + - product_notification_emails + - IFNULL(p1.metadata, p2.metadata) + - storefront_redirect_url + - storefront_success_message + OrderListResponseArray: + type: object + properties: + id: + type: integer + order_code: type: string - digital_assets: - type: array - items: {} - variant_options: - type: array - items: {} - is_shippable: - type: boolean - shipping_fields: - type: object - properties: - delivery_note: - type: string - shipping_address: - type: string - shipping_fees: - type: array - items: {} - required: - - delivery_note - - shipping_address - - shipping_fees integration: type: integer - low_stock_alert: + domain: + type: string + currency: + type: string + amount: + type: integer + transaction: + type: integer + page: + nullable: true + customer: + type: integer + customer_name: + type: string + status: + type: string + shipping_address: + nullable: true + metadata: + type: string + created_at: + type: string + updated_at: + type: string + email: + type: string + paid_at: + type: string + shipping: + nullable: true + shipping_fees: type: integer + refunded: + type: boolean + is_viewed: + type: boolean + refunded_amount: + nullable: true + discount_amount: + nullable: true + discounts: + nullable: true + items: + type: array + items: + $ref: "#/components/schemas/OrderItemsArray" + fully_refunded: + type: boolean required: - id - - name - - description - - product_code - - slug - - currency - - price - - quantity - - quantity_sold - - active + - order_code + - integration - domain - - type - - in_stock - - unlimited + - currency + - amount + - transaction + - page + - customer + - customer_name + - status + - shipping_address - metadata - - files - - success_message - - redirect_url - - split_code - - notification_emails - - minimum_orderable - - maximum_orderable - - createdAt - - updatedAt - - digital_assets - - variant_options - - is_shippable - - shipping_fields - - integration - - low_stock_alert - ProductListsResponse: + - created_at + - updated_at + - email + - paid_at + - shipping + - shipping_fees + - refunded + - is_viewed + - refunded_amount + - discount_amount + - discounts + - items + - fully_refunded + OrderListResponse: type: object properties: status: @@ -8283,22 +8738,25 @@ components: data: type: array items: - $ref: '#/components/schemas/ProductListsResponseArray' + $ref: "#/components/schemas/OrderListResponseArray" meta: type: object properties: total: type: integer + revenue: + type: object skipped: type: integer perPage: - type: string + type: integer page: type: integer pageCount: type: integer required: - total + - revenue - skipped - perPage - page @@ -8309,44 +8767,98 @@ components: - message - data - meta - ProductCreate: + OrderItems: type: object + description: The collection of items that make up the order required: - - name - - description - - price - - currency + - item + - type + - quantity + - amount properties: - name: - description: Name of product + item: + description: The product ID of the item type: string - description: - description: The description of the product + type: + description: The type of the item. `product` is currently the acceptable value type: string - price: - description: | - Price should be in kobo if currency is NGN, pesewas, if currency is GHS, - and cents, if currency is ZAR + quantity: + description: The number of items to get type: integer - currency: - description: | - Currency in which price is set. Allowed values are: NGN, GHS, ZAR or USD + amount: + description: The cost of the item + type: integer + OrderShipping: + type: object + description: The shipping details of the order + required: + - street_line + - city + - state + - country + - shipping_fee + properties: + street_line: + description: The address of for the delivery type: string - unlimited: - description: | - Set to true if the product has unlimited stock. Leave as false if the - product has limited stock - type: boolean - quantity: - description: Number of products in stock. Use if limited is true + city: + description: The city of the delivery address + type: string + state: + description: The state of the delivery address + type: string + country: + description: The country of the delivery address + type: string + shipping_fee: + description: The cost of delivery type: integer - split_code: - description: The split code if sharing the transaction with partners + delivery_note: + description: Extra details to be aware of for the delivery type: string - metadata: - description: Stringified JSON object of custom data + OrderCreate: + type: object + required: + - email + - first_name + - last_name + - phone + - currency + - items + - shipping + properties: + email: + description: The email of the customer placing the order type: string - ProductCreateResponse: + first_name: + description: The customer's first name + type: string + last_name: + description: The customer's last name + type: string + phone: + description: The customer's mobile number + type: string + currency: + description: + Currency in which amount is set. Allowed values are NGN, GHS, ZAR + or USD + type: string + items: + type: array + items: + $ref: "#/components/schemas/OrderItems" + shipping: + $ref: "#/components/schemas/OrderShipping" + is_gift: + description: | + A flag to indicate if the order is for someone else + type: boolean + pay_for_me: + description: | + A flag to indicate if the someone else should pay for the order + type: boolean + OrderCreateResponse: type: object properties: status: @@ -8356,117 +8868,141 @@ components: data: type: object properties: - variants_options: - type: array - items: {} - variants: + discounts: type: array items: {} - name: + currency: type: string - description: + shipping_address: + nullable: true + integration: + type: integer + domain: type: string - currency: + email: type: string - price: + customer: type: integer - quantity: + amount: type: integer - type: - type: string - is_shippable: - type: boolean - unlimited: + pay_for_me: type: boolean - files: - type: array - items: {} - shipping_fields: + shipping: type: object properties: + customer: + type: integer + integration: + type: integer + domain: + type: string + fees: + type: integer delivery_note: + nullable: true + street_line: type: string - shipping_address: + city: + type: string + state: + type: string + country: + type: string + is_shipped: + type: boolean + delivery_tracking_link: + nullable: true + id: + type: integer + createdAt: + type: string + updatedAt: type: string - shipping_fees: - type: array - items: {} required: + - customer + - integration + - domain + - fees - delivery_note - - shipping_address - - shipping_fees - integration: + - street_line + - city + - state + - country + - is_shipped + - delivery_tracking_link + - id + - createdAt + - updatedAt + nullable: true + shipping_fees: type: integer - domain: - type: string - metadata: + shipping_method: type: object properties: - background_color: + region: + type: string + fee: + type: integer + currency: type: string required: - - background_color - slug: + - region + - fee + - currency + metadata: + type: object + order_code: type: string - product_code: + status: type: string - quantity_sold: - type: integer - active: + refunded: type: boolean - deleted_at: - nullable: true - in_stock: + is_viewed: type: boolean - minimum_orderable: - type: integer - maximum_orderable: - type: integer - nullable: true - redirect_url: - type: string + expiration_date: nullable: true - low_stock_alert: - type: boolean id: type: integer createdAt: type: string updatedAt: type: string + items: + type: array + items: {} + pay_for_me_code: + type: string + discount_amount: + type: integer required: - - variants_options - - variants - - name - - description + - discounts - currency - - price - - quantity - - type - - is_shippable - - unlimited - - files - - shipping_fields + - shipping_address - integration - domain + - email + - customer + - amount + - pay_for_me + - shipping + - shipping_fees - metadata - - slug - - product_code - - quantity_sold - - active - - deleted_at - - in_stock - - minimum_orderable - - maximum_orderable - - low_stock_alert + - order_code + - status + - refunded + - is_viewed + - expiration_date - id - createdAt - updatedAt + - items + - pay_for_me_code + - discount_amount required: - status - message - data - ProductFetchResponse: + OrderFetchResponse: type: object properties: status: @@ -8476,342 +9012,266 @@ components: data: type: object properties: - digital_assets: + discounts: type: array items: {} - integration: - type: integer - name: - type: string - description: + order_code: type: string - product_code: + domain: type: string - price: - type: integer currency: type: string - quantity: + amount: type: integer - quantity_sold: - nullable: true - type: + email: type: string - files: - type: array - items: {} - file_path: - nullable: true - is_shippable: + status: + type: string + refunded: type: boolean - shipping_fields: + paid_at: + type: string + shipping_address: + nullable: true + metadata: type: object - properties: - delivery_note: - type: string - shipping_address: - type: string - shipping_fees: - type: array - items: {} - required: - - delivery_note - - shipping_address - - shipping_fees - unlimited: + shipping_fees: + type: integer + shipping_method: + nullable: true + is_viewed: type: boolean - domain: + expiration_date: type: string - active: + pay_for_me: type: boolean - features: + id: + type: integer + integration: + type: integer + page: nullable: true - in_stock: - type: boolean - metadata: + customer: type: object properties: - background_color: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: type: string required: - - background_color - slug: - type: string - success_message: - nullable: true - redirect_url: - nullable: true - split_code: - nullable: true - notification_emails: - nullable: true - minimum_orderable: - type: integer - maximum_orderable: - nullable: true - low_stock_alert: - type: boolean - stock_threshold: - nullable: true - expires_in: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + shipping: nullable: true - id: - type: integer createdAt: type: string updatedAt: type: string + transaction: + type: integer + is_gift: + type: boolean + payer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + fully_refunded: + type: boolean + refunded_amount: + type: integer + items: + type: array + items: + $ref: "#/components/schemas/OrderItemsArray" + discount_amount: + nullable: true required: - - digital_assets - - integration - - name - - description - - product_code - - price - - currency - - quantity - - quantity_sold - - type - - files - - file_path - - is_shippable - - shipping_fields - - unlimited + - discounts + - order_code - domain - - active - - features - - in_stock + - currency + - amount + - email + - status + - refunded + - paid_at + - shipping_address - metadata - - slug - - success_message - - redirect_url - - split_code - - notification_emails - - minimum_orderable - - maximum_orderable - - low_stock_alert - - stock_threshold - - expires_in + - shipping_fees + - shipping_method + - is_viewed + - expiration_date + - pay_for_me - id + - integration + - page + - customer + - shipping - createdAt - updatedAt + - transaction + - is_gift + - payer + - fully_refunded + - refunded_amount + - items + - discount_amount required: - status - message - data - ProductUpdate: + OrderFetchProductResponseArray: type: object properties: - name: - description: Name of product + order_id: + type: integer + transaction: + type: integer + order_code: type: string - description: - description: The description of the product + customer: + type: integer + first_name: + type: string + last_name: + type: string + customer_name: + type: string + phone: + type: string + email: + type: string + product_code: + type: string + product_id: + type: integer + product_name: type: string price: - description: | - Price should be in kobo if currency is NGN, pesewas, if currency is GHS, - and cents, if currency is ZAR + type: integer + quantity_sold: type: integer currency: - description: | - Currency in which price is set. Allowed values are: NGN, GHS, ZAR or USD type: string - unlimited: - description: | - Set to true if the product has unlimited stock. Leave as false if the - product has limited stock - type: boolean quantity: - description: Number of products in stock. Use if limited is true type: integer - split_code: - description: The split code if sharing the transaction with partners - type: string - metadata: - description: Stringified JSON object of custom data - type: string - ProductUpdateResponse: - type: object - properties: + variant_id: + nullable: true + variant_price: + nullable: true + variant_code: + nullable: true + amount: + type: integer + shipping_method: + nullable: true status: - type: boolean - message: type: string - data: - type: object - properties: - name: - type: string - description: - type: string - product_code: - type: string - price: - type: integer - currency: - type: string - quantity: - type: integer - quantity_sold: - type: integer - type: - type: string - files: - type: array - items: {} - file_path: - nullable: true - is_shippable: - type: boolean - shipping_fields: - type: object - properties: - delivery_note: - type: string - shipping_address: - type: string - shipping_fees: - type: array - items: {} - required: - - delivery_note - - shipping_address - - shipping_fees - unlimited: - type: boolean - domain: - type: string - active: - type: boolean - features: - nullable: true - in_stock: - type: boolean - metadata: - type: object - properties: - background_color: - type: string - required: - - background_color - slug: - type: string - success_message: - nullable: true - redirect_url: - nullable: true - split_code: - nullable: true - notification_emails: - nullable: true - minimum_orderable: - type: integer - maximum_orderable: - nullable: true - low_stock_alert: - type: boolean - stock_threshold: - nullable: true - expires_in: - nullable: true - id: - type: integer - integration: - type: integer - createdAt: - type: string - updatedAt: - type: string - required: - - name - - description - - product_code - - price - - currency - - quantity - - quantity_sold - - type - - files - - file_path - - is_shippable - - shipping_fields - - unlimited - - domain - - active - - features - - in_stock - - metadata - - slug - - success_message - - redirect_url - - split_code - - notification_emails - - minimum_orderable - - maximum_orderable - - low_stock_alert - - stock_threshold - - expires_in - - id - - integration - - createdAt - - updatedAt - required: - - status - - message - - data - ProductDeleteResponse: - type: object - properties: - status: + shipping_address: + nullable: true + refunded: type: boolean - message: - type: string - required: - - status - - message - StorefrontListResponseArray: - type: object - properties: - id: - type: integer - name: + shipping: + nullable: true + paid_at: type: string - slug: + created_at: type: string - orders_count: + is_shipped: + type: boolean + is_viewed: type: integer - status: - type: string - revenue: + delivery_note: nullable: true - currency: + shipping_fee: + nullable: true + amount_paid: + type: integer + storefront_slug: type: string - products: - type: array - items: {} - contacts: - type: array - items: {} - social_media: - type: array - items: {} - shipping_fees: - type: array - items: {} required: - - id - - name - - slug - - orders_count - - status - - revenue + - order_id + - transaction + - order_code + - customer + - first_name + - last_name + - customer_name + - phone + - email + - product_code + - product_id + - product_name + - price + - quantity_sold - currency - - products - - contacts - - social_media - - shipping_fees - StorefrontListResponse: + - quantity + - variant_id + - variant_price + - variant_code + - amount + - shipping_method + - status + - shipping_address + - refunded + - shipping + - paid_at + - created_at + - is_shipped + - is_viewed + - delivery_note + - shipping_fee + - amount_paid + - storefront_slug + OrderFetchProductResponse: type: object properties: status: @@ -8821,25 +9281,28 @@ components: data: type: array items: - $ref: '#/components/schemas/StorefrontListResponseArray' + $ref: "#/components/schemas/OrderFetchProductResponseArray" meta: type: object properties: + quantity_sold: + type: integer + revenue: + type: integer total: type: integer skipped: type: integer perPage: type: integer - page: - type: integer pageCount: type: integer required: + - quantity_sold + - revenue - total - skipped - perPage - - page - pageCount additionalProperties: false required: @@ -8847,436 +9310,215 @@ components: - message - data - meta - StorefrontCreate: - type: object - required: - - name - - slug - - currency - properties: - name: - description: Name of the storefront - type: string - slug: - description: | - A unique identifier to access your store. Once the storefront is created, it can be accessed from - https://paystack.shop/your-slug - type: string - currency: - description: | - Currency for prices of products in your storefront. Allowed values are: `NGN`, `GHS`, `KES`, `ZAR` or `USD` - type: string - description: - description: The description of the storefront - type: string - StorefrontContactsArray: + OrderValidateResponse: type: object properties: - value: - type: string - id: - type: integer - type_name: - nullable: true - type: - type: integer - required: - - value - - id - - type_name - - type - StorefrontCreateResponse: - type: object - properties: - status: - type: boolean - message: + status: + type: boolean + message: type: string data: type: object properties: - social_media: - type: array - items: {} - contacts: - type: array - items: - $ref: '#/components/schemas/StorefrontContactsArray' - name: + order_code: type: string - slug: + domain: type: string currency: type: string - welcome_message: - nullable: true - success_message: - nullable: true - redirect_url: - nullable: true - description: - nullable: true - delivery_note: - type: string - background_color: + amount: + type: integer + email: type: string status: type: string - shippable: + refunded: type: boolean - integration: - type: integer - domain: - type: string - digital_product_expiry: + paid_at: + nullable: true + shipping_address: nullable: true metadata: - type: object nullable: true - id: - type: integer - createdAt: - type: string - updatedAt: - type: string - products: - type: array - items: {} shipping_fees: - type: array - items: {} - required: - - social_media - - contacts - - name - - slug - - currency - - welcome_message - - success_message - - redirect_url - - description - - delivery_note - - background_color - - status - - shippable - - integration - - domain - - digital_product_expiry - - id - - createdAt - - updatedAt - - products - - shipping_fees - required: - - status - - message - - data - StorefrontFetchResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - social_media: - type: array - items: {} - contacts: - type: array - items: - $ref: '#/components/schemas/StorefrontContactsArray' - name: - type: string - slug: - type: string - currency: - type: string - welcome_message: - nullable: true - success_message: - nullable: true - redirect_url: - nullable: true - description: + type: integer + shipping_method: nullable: true - delivery_note: - type: string - background_color: - type: string - status: + is_viewed: + type: boolean + expiration_date: type: string - shippable: + pay_for_me: type: boolean - integration: + id: type: integer - domain: - type: string - digital_product_expiry: + integration: + type: object + properties: + key: + type: string + name: + type: string + logo: + type: string + allowed_currencies: + type: array + items: {} + required: + - key + - name + - logo + - allowed_currencies + transaction: nullable: true - metadata: + page: + nullable: true + customer: type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + shipping: nullable: true - id: - type: integer createdAt: type: string updatedAt: type: string - products: - type: array - items: {} - shipping_fees: - type: array - items: {} + payer: + nullable: true required: - - social_media - - contacts - - name - - slug + - order_code + - domain - currency - - welcome_message - - success_message - - redirect_url - - description - - delivery_note - - background_color + - amount + - email - status - - shippable - - integration - - domain - - digital_product_expiry + - refunded + - paid_at + - shipping_address + - metadata + - shipping_fees + - shipping_method + - is_viewed + - expiration_date + - pay_for_me - id + - integration + - transaction + - page + - customer + - shipping - createdAt - updatedAt - - products - - shipping_fees - meta: - type: object - properties: - product_count: - type: integer - total: - type: integer - skipped: - type: integer - perPage: - type: integer - page: - type: integer - pageCount: - type: integer - required: - - product_count - - total - - skipped - - perPage - - page - - pageCount - additionalProperties: false + - payer required: - status - message - data - - meta - StorefrontUpdate: + PageListResponseArray: type: object properties: + integration: + type: integer + plan: + nullable: true + domain: + type: string name: - description: Name of the storefront - type: string - slug: - description: | - A unique identifier to access your store. Once the storefront is created, it can be accessed from - https://paystack.shop/your-slug type: string description: - description: The description of the storefront - type: string - StorefrontUpdateResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - StorefrontDeleteResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - StorefrontAddProducts: - type: object - required: - - products - properties: - products: - description: An array of product IDs - type: array - items: - type: integer - OrderItemsArray: - type: object - properties: - order_item_id: - type: integer - orderId: - type: integer - type: - type: string - item: - type: integer - current_total_items_price: - type: integer - files: - type: string - order: - type: integer - amount: - type: integer - quantity: - type: integer - createdAt: - type: string - name: - type: string - product_level_type: - type: string - product_id: - type: integer - product_success_message: - nullable: true - product_redirect_url: - nullable: true - IFNULL(p1.expires_in, p2.expires_in): - nullable: true - product_quantity_sold: - type: integer - product_notification_emails: - nullable: true - IFNULL(p1.metadata, p2.metadata): type: string - storefront_redirect_url: nullable: true - storefront_success_message: - nullable: true - required: - - order_item_id - - orderId - - type - - item - - current_total_items_price - - files - - order - - amount - - quantity - - createdAt - - name - - product_level_type - - product_id - - product_success_message - - product_redirect_url - - IFNULL(p1.expires_in, p2.expires_in) - - product_quantity_sold - - product_notification_emails - - IFNULL(p1.metadata, p2.metadata) - - storefront_redirect_url - - storefront_success_message - OrderListResponseArray: - type: object - properties: - id: - type: integer - order_code: - type: string - integration: - type: integer - domain: - type: string - currency: - type: string amount: type: integer - transaction: - type: integer - page: nullable: true - customer: - type: integer - customer_name: + currency: type: string - status: + slug: type: string - shipping_address: + custom_fields: + type: array nullable: true - metadata: - type: string - created_at: - type: string - updated_at: + items: {} + type: type: string - email: + redirect_url: type: string - paid_at: + nullable: true + success_message: type: string - shipping: nullable: true - shipping_fees: - type: integer - refunded: + collect_phone: type: boolean - is_viewed: + active: type: boolean - refunded_amount: + published: + type: boolean + migrate: + type: boolean + notification_email: nullable: true - discount_amount: + metadata: + type: object nullable: true - discounts: + split_code: nullable: true - items: - type: array - items: - $ref: '#/components/schemas/OrderItemsArray' - fully_refunded: - type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string required: - - id - - order_code - integration + - plan - domain - - currency + - name + - description - amount - - transaction - - page - - customer - - customer_name - - status - - shipping_address + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email - metadata - - created_at - - updated_at - - email - - paid_at - - shipping - - shipping_fees - - refunded - - is_viewed - - refunded_amount - - discount_amount - - discounts - - items - - fully_refunded - OrderListResponse: + - split_code + - id + - createdAt + - updatedAt + PageListResponse: type: object properties: status: @@ -9286,14 +9528,12 @@ components: data: type: array items: - $ref: '#/components/schemas/OrderListResponseArray' + $ref: "#/components/schemas/PageListResponseArray" meta: type: object properties: total: type: integer - revenue: - type: object skipped: type: integer perPage: @@ -9304,7 +9544,6 @@ components: type: integer required: - total - - revenue - skipped - perPage - page @@ -9315,96 +9554,87 @@ components: - message - data - meta - OrderItems: + PageCreate: type: object - description: The collection of items that make up the order required: - - item - - type - - quantity - - amount + - name properties: - item: - description: The product ID of the item + name: + description: Name of page type: string - type: - description: The type of the item. `product` is currently the acceptable value + description: + description: The description of the page type: string - quantity: - description: The number of items to get - type: integer amount: - description: The cost of the item + description: + Amount should be in kobo if currency is NGN, pesewas, if currency + is GHS, and cents, if currency is ZAR type: integer - OrderShipping: - type: object - description: The shipping details of the order - required: - - street_line - - city - - state - - country - - shipping_fee - properties: - street_line: - description: The address of for the delivery + currency: + description: The transaction currency. Defaults to your integration currency. type: string - city: - description: The city of the delivery address + enum: + - NGN + - GHS + - ZAR + - KES + - USD + slug: + description: + URL slug you would like to be associated with this page. Page will + be accessible at `https://paystack.com/pay/[slug]` type: string - state: - description: The state of the delivery address - type: string - country: - description: The country of the delivery address - type: string - shipping_fee: - description: The cost of delivery - type: integer - delivery_note: - description: Extra details to be aware of for the delivery + type: + description: > + The type of payment page to create. Defaults to `payment` if no type + is specified. type: string - OrderCreate: - type: object - required: - - email - - first_name - - last_name - - phone - - currency - - items - - shipping - properties: - email: - description: The email of the customer placing the order + enum: + - payment + - subscription + - product + - plan + plan: + description: + The ID of the plan to subscribe customers on this payment page to + when `type` is set to `subscription`. type: string - first_name: - description: The customer's first name + fixed_amount: + description: + Specifies whether to collect a fixed amount on the payment page. If + true, `amount` must be passed. + type: boolean + split_code: + description: The split code of the transaction split. e.g. `SPL_98WF13Eb3w` type: string - last_name: - description: The customer's last name + metadata: + description: JSON object of custom data + type: object + redirect_url: + description: > + If you would like Paystack to redirect to a URL upon successful + payment, specify the URL here. type: string - phone: - description: The customer's mobile number + success_message: + description: > + A success message to display to the customer after a successful + transaction type: string - currency: - description: Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD + notification_email: + description: > + An email address that will receive transaction notifications for + this payment page type: string - items: - type: array - items: - $ref: '#/components/schemas/OrderItems' - shipping: - $ref: '#/components/schemas/OrderShipping' - is_gift: - description: | - A flag to indicate if the order is for someone else - type: boolean - pay_for_me: + collect_phone: description: | - A flag to indicate if the someone else should pay for the order + Specify whether to collect phone numbers on the payment page type: boolean - OrderCreateResponse: + custom_fields: + description: If you would like to accept custom fields, specify them here. + type: array + items: + type: object + PageCreateResponse: type: object properties: status: @@ -9414,141 +9644,51 @@ components: data: type: object properties: - discounts: - type: array - items: {} - currency: + name: type: string - shipping_address: - nullable: true integration: type: integer domain: type: string - email: + slug: type: string - customer: - type: integer - amount: - type: integer - pay_for_me: - type: boolean - shipping: - type: object - properties: - customer: - type: integer - integration: - type: integer - domain: - type: string - fees: - type: integer - delivery_note: - nullable: true - street_line: - type: string - city: - type: string - state: - type: string - country: - type: string - is_shipped: - type: boolean - delivery_tracking_link: - nullable: true - id: - type: integer - createdAt: - type: string - updatedAt: - type: string - required: - - customer - - integration - - domain - - fees - - delivery_note - - street_line - - city - - state - - country - - is_shipped - - delivery_tracking_link - - id - - createdAt - - updatedAt - nullable: true - shipping_fees: - type: integer - shipping_method: - type: object - properties: - region: - type: string - fee: - type: integer - currency: - type: string - required: - - region - - fee - - currency - metadata: - type: object - order_code: + currency: type: string - status: + type: type: string - refunded: + collect_phone: type: boolean - is_viewed: + active: + type: boolean + published: + type: boolean + migrate: type: boolean - expiration_date: - nullable: true id: type: integer createdAt: type: string updatedAt: type: string - items: - type: array - items: {} - pay_for_me_code: - type: string - discount_amount: - type: integer required: - - discounts - - currency - - shipping_address + - name - integration - domain - - email - - customer - - amount - - pay_for_me - - shipping - - shipping_fees - - metadata - - order_code - - status - - refunded - - is_viewed - - expiration_date + - slug + - currency + - type + - collect_phone + - active + - published + - migrate - id - createdAt - updatedAt - - items - - pay_for_me_code - - discount_amount required: - status - message - data - OrderFetchResponse: + PageFetchResponse: type: object properties: status: @@ -9558,266 +9698,243 @@ components: data: type: object properties: - discounts: - type: array - items: {} - order_code: - type: string + integration: + type: integer domain: type: string - currency: + name: type: string + description: + nullable: true amount: type: integer - email: + nullable: true + currency: type: string - status: + slug: type: string - refunded: - type: boolean - paid_at: + custom_fields: + nullable: true + type: type: string - shipping_address: + redirect_url: nullable: true - metadata: - type: object - shipping_fees: - type: integer - shipping_method: + success_message: nullable: true - is_viewed: + collect_phone: type: boolean - expiration_date: - type: string - pay_for_me: + active: + type: boolean + published: + type: boolean + migrate: type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true id: type: integer - integration: - type: integer - page: - nullable: true - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - shipping: - nullable: true createdAt: type: string updatedAt: type: string - transaction: - type: integer - is_gift: + required: + - integration + - domain + - name + - description + - amount + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email + - metadata + - split_code + - id + - createdAt + - updatedAt + required: + - status + - message + - data + PageUpdate: + type: object + properties: + name: + description: Name of page + type: string + description: + description: The description of the page + type: string + amount: + description: + Amount should be in kobo if currency is NGN, pesewas, if currency + is GHS, and cents, if currency is ZAR + type: integer + active: + description: Set to false to deactivate page url + type: boolean + PageUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + domain: + type: string + name: + type: string + description: + nullable: true + amount: + nullable: true + currency: + type: string + slug: + type: string + custom_fields: + nullable: true + type: + type: string + redirect_url: + nullable: true + success_message: + nullable: true + collect_phone: type: boolean - payer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - fully_refunded: + active: type: boolean - refunded_amount: + published: + type: boolean + migrate: + type: boolean + notification_email: + nullable: true + metadata: + nullable: true + split_code: + nullable: true + id: type: integer - items: - type: array - items: - $ref: '#/components/schemas/OrderItemsArray' - discount_amount: + integration: + type: integer + plan: nullable: true + createdAt: + type: string + updatedAt: + type: string required: - - discounts - - order_code - domain - - currency + - name + - description - amount - - email - - status - - refunded - - paid_at - - shipping_address + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email - metadata - - shipping_fees - - shipping_method - - is_viewed - - expiration_date - - pay_for_me + - split_code - id - integration - - page - - customer - - shipping + - plan - createdAt - updatedAt - - transaction - - is_gift - - payer - - fully_refunded - - refunded_amount - - items - - discount_amount required: - status - message - data - OrderFetchProductResponseArray: + PageCheckSlugAvailabilityResponse: type: object properties: - order_id: - type: integer - transaction: - type: integer - order_code: + status: + type: boolean + message: type: string - customer: + required: + - status + - message + PageProduct: + type: object + required: + - product + properties: + product: + description: IDs of all products to add to a page + type: array + items: + type: string + PageProductsArray: + type: object + properties: + product_id: type: integer - first_name: - type: string - last_name: - type: string - customer_name: - type: string - phone: + name: type: string - email: + description: type: string product_code: type: string - product_id: + page: type: integer - product_name: - type: string price: type: integer - quantity_sold: - type: integer currency: type: string quantity: type: integer - variant_id: - nullable: true - variant_price: - nullable: true - variant_code: - nullable: true - amount: - type: integer - shipping_method: - nullable: true - status: + type: type: string - shipping_address: - nullable: true - refunded: - type: boolean - shipping: + features: nullable: true - paid_at: - type: string - created_at: + is_shippable: + type: integer + domain: type: string - is_shipped: - type: boolean - is_viewed: + integration: type: integer - delivery_note: - nullable: true - shipping_fee: - nullable: true - amount_paid: + active: + type: integer + in_stock: type: integer - storefront_slug: - type: string required: - - order_id - - transaction - - order_code - - customer - - first_name - - last_name - - customer_name - - phone - - email - - product_code - product_id - - product_name + - name + - description + - product_code + - page - price - - quantity_sold - currency - quantity - - variant_id - - variant_price - - variant_code - - amount - - shipping_method - - status - - shipping_address - - refunded - - shipping - - paid_at - - created_at - - is_shipped - - is_viewed - - delivery_note - - shipping_fee - - amount_paid - - storefront_slug - OrderFetchProductResponse: + - type + - features + - is_shippable + - domain + - integration + - active + - in_stock + PageAddProductsResponse: type: object properties: status: @@ -9825,246 +9942,220 @@ components: message: type: string data: - type: array - items: - $ref: '#/components/schemas/OrderFetchProductResponseArray' - meta: type: object properties: - quantity_sold: - type: integer - revenue: - type: integer - total: - type: integer - skipped: - type: integer - perPage: - type: integer - pageCount: + integration: type: integer - required: - - quantity_sold - - revenue - - total - - skipped - - perPage - - pageCount - additionalProperties: false - required: - - status - - message - - data - - meta - OrderValidateResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - order_code: - type: string + plan: + nullable: true domain: type: string - currency: + name: type: string + description: + nullable: true amount: - type: integer - email: + nullable: true + currency: type: string - status: + slug: type: string - refunded: - type: boolean - paid_at: - nullable: true - shipping_address: + custom_fields: nullable: true - metadata: + type: + type: string + redirect_url: nullable: true - shipping_fees: - type: integer - shipping_method: + success_message: nullable: true - is_viewed: + collect_phone: type: boolean - expiration_date: - type: string - pay_for_me: + active: type: boolean - id: - type: integer - integration: - type: object - properties: - key: - type: string - name: - type: string - logo: - type: string - allowed_currencies: - type: array - items: {} - required: - - key - - name - - logo - - allowed_currencies - transaction: + published: + type: boolean + migrate: + type: boolean + notification_email: nullable: true - page: + metadata: nullable: true - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - shipping: + split_code: nullable: true + id: + type: integer createdAt: type: string updatedAt: type: string - payer: - nullable: true + products: + type: array + items: + $ref: "#/components/schemas/PageProductsArray" required: - - order_code + - integration + - plan - domain - - currency + - name + - description - amount - - email - - status - - refunded - - paid_at - - shipping_address + - currency + - slug + - custom_fields + - type + - redirect_url + - success_message + - collect_phone + - active + - published + - migrate + - notification_email - metadata - - shipping_fees - - shipping_method - - is_viewed - - expiration_date - - pay_for_me + - split_code - id - - integration - - transaction - - page - - customer - - shipping - createdAt - updatedAt - - payer + - products required: - status - message - data - PageListResponseArray: + PaymentRequestLineItemsArray: type: object properties: - integration: - type: integer - plan: - nullable: true - domain: - type: string name: type: string - description: - type: string - nullable: true amount: type: integer - nullable: true - currency: - type: string - slug: + quantity: + type: integer + required: + - name + - amount + - quantity + PaymentRequestTaxArray: + type: object + properties: + name: type: string - custom_fields: - type: array - nullable: true - items: {} - type: + amount: + type: integer + required: + - name + - amount + PaymentRequestListResponseArray: + type: object + properties: + id: + type: integer + integration: + type: integer + domain: type: string - redirect_url: + amount: + type: integer + currency: type: string - nullable: true - success_message: + due_date: type: string nullable: true - collect_phone: - type: boolean - active: - type: boolean - published: + has_invoice: type: boolean - migrate: + invoice_number: + type: integer + nullable: true + description: + type: string + nullable: true + pdf_url: + type: string + nullable: true + line_items: + type: array + items: + $ref: "#/components/schemas/PaymentRequestLineItemsArray" + tax: + type: array + items: + $ref: "#/components/schemas/PaymentRequestTaxArray" + request_code: + type: string + status: + type: string + paid: type: boolean - notification_email: + paid_at: nullable: true metadata: + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: nullable: true split_code: - nullable: true - id: - type: integer - createdAt: - type: string - updatedAt: type: string + nullable: true required: + - id - integration - - plan - domain - - name - - description - amount - currency - - slug - - custom_fields - - type - - redirect_url - - success_message - - collect_phone - - active - - published - - migrate - - notification_email + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at - metadata + - notifications + - offline_reference + - customer + - created_at + - discount - split_code - - id - - createdAt - - updatedAt - PageListResponse: + PaymentRequestListResponse: type: object properties: status: @@ -10074,7 +10165,7 @@ components: data: type: array items: - $ref: '#/components/schemas/PageListResponseArray' + $ref: "#/components/schemas/PaymentRequestListResponseArray" meta: type: object properties: @@ -10083,7 +10174,9 @@ components: skipped: type: integer perPage: - type: integer + anyOf: + - type: integer + - type: string page: type: integer pageCount: @@ -10100,75 +10193,78 @@ components: - message - data - meta - PageCreate: + PaymentRequestCreate: type: object required: - - name + - customer properties: - name: - description: Name of page - type: string - description: - description: The description of the page + customer: + description: Customer id or code type: string amount: - description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + description: >- + Payment request amount. Only useful if line items and tax values are + ignored. + + The endpoint will throw a friendly warning if neither is available. type: integer currency: - description: The transaction currency. Defaults to your integration currency. - type: string - enum: - - NGN - - GHS - - ZAR - - KES - - USD - slug: - description: URL slug you would like to be associated with this page. Page will be accessible at `https://paystack.com/pay/[slug]` + description: + Specify the currency of the invoice. Allowed values are NGN, GHS, + ZAR and USD. Defaults to NGN type: string - type: - description: | - The type of payment page to create. Defaults to `payment` if no type is specified. + due_date: + description: ISO 8601 representation of request due date type: string - enum: - - payment - - subscription - - product - - plan - plan: - description: The ID of the plan to subscribe customers on this payment page to when `type` is set to `subscription`. + format: date-time + description: + description: A short description of the payment request type: string - fixed_amount: - description: Specifies whether to collect a fixed amount on the payment page. If true, `amount` must be passed. + line_items: + description: Array of line items + type: array + items: + type: object + tax: + description: Array of taxes + type: array + items: + type: object + send_notification: + description: + Indicates whether Paystack sends an email notification to customer. + Defaults to true type: boolean - split_code: - description: The split code of the transaction split. e.g. `SPL_98WF13Eb3w` - type: string - metadata: - description: Stringified JSON object of custom data - type: string - redirect_url: - description: | - If you would like Paystack to redirect to a URL upon successful payment, specify the URL here. - type: string - success_message: - description: | - A success message to display to the customer after a successful transaction - type: string - notification_email: - description: | - An email address that will receive transaction notifications for this payment page - type: string - collect_phone: - description: | - Specify whether to collect phone numbers on the payment page + items: + type: object + draft: + description: + Indicate if request should be saved as draft. Defaults to false and + overrides send_notification type: boolean - custom_fields: - description: If you would like to accept custom fields, specify them here. - type: array items: type: object - PageCreateResponse: + has_invoice: + description: >- + Set to true to create a draft invoice (adds an auto incrementing + invoice number if none is provided) + + even if there are no line_items or tax passed + type: boolean + items: + type: object + invoice_number: + description: >- + Numeric value of invoice. Invoice will start from 1 and auto + increment from there. This field is to help + + override whatever value Paystack decides. Auto increment for + subsequent invoices continue from this point. + type: integer + split_code: + description: The split code of the transaction split. + type: string + PaymentRequestCreateResponse: type: object properties: status: @@ -10178,51 +10274,162 @@ components: data: type: object properties: - name: - type: string + id: + type: integer integration: type: integer domain: type: string - slug: - type: string + amount: + type: integer currency: type: string - type: + due_date: type: string - collect_phone: - type: boolean - active: - type: boolean - published: - type: boolean - migrate: + nullable: true + has_invoice: type: boolean - id: + invoice_number: type: integer - createdAt: + nullable: true + description: type: string - updatedAt: + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: type: string - required: - - name + status: + type: string + paid: + type: boolean + metadata: + type: object + nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: integer + created_at: + type: string + discount: + nullable: true + split_code: + type: string + nullable: true + required: + - id - integration - domain - - slug + - amount - currency - - type - - collect_phone - - active - - published - - migrate - - id - - createdAt - - updatedAt + - due_date + - has_invoice + - invoice_number + - description + - line_items + - tax + - request_code + - status + - paid + - metadata + - notifications + - offline_reference + - customer + - created_at + - discount + - split_code required: - status - message - data - PageFetchResponse: + PaymentRequestUpdate: + type: object + properties: + customer: + description: Customer id or code + type: string + amount: + description: >- + Payment request amount. Only useful if line items and tax values are + ignored. + + The endpoint will throw a friendly warning if neither is available. + type: integer + currency: + description: + Specify the currency of the invoice. Allowed values are NGN, GHS, + ZAR and USD. Defaults to NGN + type: string + due_date: + description: ISO 8601 representation of request due date + type: string + format: date-time + description: + description: A short description of the payment request + type: string + line_items: + description: Array of line items + type: array + items: + type: object + tax: + description: Array of taxes + type: array + items: + type: object + send_notification: + description: + Indicates whether Paystack sends an email notification to customer. + Defaults to true + type: boolean + items: + type: object + draft: + description: + Indicate if request should be saved as draft. Defaults to false and + overrides send_notification + type: boolean + items: + type: object + has_invoice: + description: >- + Set to true to create a draft invoice (adds an auto incrementing + invoice number if none is provided) + + even if there are no line_items or tax passed + type: boolean + items: + type: object + invoice_number: + description: >- + Numeric value of invoice. Invoice will start from 1 and auto + increment from there. This field is to help + + override whatever value Paystack decides. Auto increment for + subsequent invoices continue from this point. + type: integer + split_code: + description: The split code of the transaction split. + type: string + PaymentRequestNotificationsArray: + type: object + properties: + sent_at: + type: string + channel: + type: string + required: + - sent_at + - channel + PaymentRequestUpdateResponse: type: object properties: status: @@ -10232,91 +10439,120 @@ components: data: type: object properties: + id: + type: integer integration: type: integer domain: type: string - name: - type: string - description: - nullable: true amount: type: integer - nullable: true currency: type: string - slug: + due_date: type: string - custom_fields: nullable: true - type: - type: string - redirect_url: + has_invoice: + type: boolean + invoice_number: + type: integer nullable: true - success_message: + description: nullable: true - collect_phone: - type: boolean - active: - type: boolean - published: - type: boolean - migrate: + pdf_url: + type: string + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: type: boolean - notification_email: + paid_at: nullable: true metadata: nullable: true - split_code: - nullable: true - id: - type: integer - createdAt: + notifications: + type: array + items: + $ref: "#/components/schemas/PaymentRequestNotificationsArray" + offline_reference: type: string - updatedAt: + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: type: string + discount: + nullable: true + split_code: + nullable: true required: + - id - integration - domain - - name - - description - amount - currency - - slug - - custom_fields - - type - - redirect_url - - success_message - - collect_phone - - active - - published - - migrate - - notification_email + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at - metadata + - notifications + - offline_reference + - customer + - created_at + - discount - split_code - - id - - createdAt - - updatedAt required: - status - message - data - PageUpdate: - type: object - properties: - name: - description: Name of page - type: string - description: - description: The description of the page - type: string - amount: - description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR - type: integer - active: - description: Set to false to deactivate page url - type: boolean - PageUpdateResponse: + PaymentRequestVerifyResponse: type: object properties: status: @@ -10326,78 +10562,139 @@ components: data: type: object properties: - domain: - type: string - name: - type: string - description: - nullable: true + id: + type: integer + integration: + type: object + properties: + key: + type: string + name: + type: string + logo: + type: string + allowed_currencies: + type: array + items: + type: string + required: + - key + - name + - logo + - allowed_currencies + domain: + type: string amount: - nullable: true + type: integer currency: type: string - slug: + due_date: type: string - custom_fields: nullable: true - type: - type: string - redirect_url: + has_invoice: + type: boolean + invoice_number: + type: integer nullable: true - success_message: + description: nullable: true - collect_phone: - type: boolean - active: - type: boolean - published: - type: boolean - migrate: + pdf_url: + type: string + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + request_code: + type: string + status: + type: string + paid: type: boolean - notification_email: + paid_at: nullable: true metadata: nullable: true + notifications: + type: array + items: + $ref: "#/components/schemas/PaymentRequestNotificationsArray" + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + nullable: true split_code: nullable: true - id: - type: integer - integration: + pending_amount: type: integer - plan: - nullable: true - createdAt: - type: string - updatedAt: - type: string required: + - id + - integration - domain - - name - - description - amount - currency - - slug - - custom_fields - - type - - redirect_url - - success_message - - collect_phone - - active - - published - - migrate - - notification_email + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at - metadata + - notifications + - offline_reference + - customer + - created_at + - discount - split_code - - id - - integration - - plan - - createdAt - - updatedAt + - pending_amount required: - status - message - data - PageCheckSlugAvailabilityResponse: + PaymentRequestSendNotificationResponse: type: object properties: status: @@ -10407,66 +10704,67 @@ components: required: - status - message - PageProduct: - type: object - required: - - product - properties: - product: - description: IDs of all products to add to a page - type: array - items: - type: string - PageProductsArray: + PaymentRequestPendingArray: type: object properties: - product_id: - type: integer - name: - type: string - description: - type: string - product_code: - type: string - page: - type: integer - price: - type: integer currency: type: string - quantity: + amount: type: integer - type: + required: + - currency + - amount + PaymentRequestSuccessfulArray: + type: object + properties: + currency: type: string - features: - nullable: true - is_shippable: + amount: type: integer - domain: + required: + - currency + - amount + PaymentRequestTotalArray: + type: object + properties: + currency: type: string - integration: - type: integer - active: - type: integer - in_stock: + amount: type: integer required: - - product_id - - name - - description - - product_code - - page - - price - currency - - quantity - - type - - features - - is_shippable - - domain - - integration - - active - - in_stock - PageAddProductsResponse: + - amount + PaymentRequestTotalResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + pending: + type: array + items: + $ref: "#/components/schemas/PaymentRequestPendingArray" + successful: + type: array + items: + $ref: "#/components/schemas/PaymentRequestSuccessfulArray" + total: + type: array + items: + $ref: "#/components/schemas/PaymentRequestTotalArray" + required: + - pending + - successful + - total + required: + - status + - message + - data + PaymentRequestFinalizeResponse: type: object properties: status: @@ -10476,218 +10774,216 @@ components: data: type: object properties: + id: + type: integer integration: type: integer - plan: - nullable: true domain: type: string - name: - type: string - description: - nullable: true amount: - nullable: true + type: integer currency: type: string - slug: + due_date: type: string - custom_fields: nullable: true - type: + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + description: type: string - redirect_url: nullable: true - success_message: + pdf_url: nullable: true - collect_phone: - type: boolean - active: - type: boolean - published: - type: boolean - migrate: + line_items: + type: array + items: + $ref: "#/components/schemas/PaymentRequestLineItemsArray" + tax: + type: array + items: + $ref: "#/components/schemas/PaymentRequestTaxArray" + request_code: + type: string + status: + type: string + paid: type: boolean - notification_email: + paid_at: nullable: true metadata: nullable: true + notifications: + type: array + items: {} + offline_reference: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + created_at: + type: string + discount: + type: object + properties: + type: + type: string + amount: + type: integer + required: + - type + - amount + nullable: true split_code: nullable: true - id: + pending_amount: type: integer - createdAt: - type: string - updatedAt: - type: string - products: - type: array - items: - $ref: '#/components/schemas/PageProductsArray' required: + - id - integration - - plan - domain - - name - - description - amount - currency - - slug - - custom_fields - - type - - redirect_url - - success_message - - collect_phone - - active - - published - - migrate - - notification_email + - due_date + - has_invoice + - invoice_number + - description + - pdf_url + - line_items + - tax + - request_code + - status + - paid + - paid_at - metadata + - notifications + - offline_reference + - customer + - created_at + - discount - split_code - - id - - createdAt - - updatedAt - - products + - pending_amount required: - status - message - data - PaymentRequestLineItemsArray: - type: object - properties: - name: - type: string - amount: - type: integer - quantity: - type: integer - required: - - name - - amount - - quantity - PaymentRequestTaxArray: + PaymentRequestArchiveResponse: type: object properties: - name: + status: + type: boolean + message: type: string - amount: - type: integer required: - - name - - amount - PaymentRequestListResponseArray: + - status + - message + TransferRecipientListResponseArray: type: object properties: - id: - type: integer - integration: - type: integer - domain: + active: + type: boolean + createdAt: type: string - amount: - type: integer currency: type: string - due_date: + description: + type: string + domain: + type: string + email: type: string nullable: true - has_invoice: - type: boolean - invoice_number: + id: type: integer + integration: + type: integer + metadata: + type: object nullable: true - description: + name: type: string - nullable: true - pdf_url: + recipient_code: type: string - nullable: true - line_items: - type: array - items: - $ref: '#/components/schemas/PaymentRequestLineItemsArray' - tax: - type: array - items: - $ref: '#/components/schemas/PaymentRequestTaxArray' - request_code: + type: type: string - status: + updatedAt: type: string - paid: + is_deleted: type: boolean - paid_at: - nullable: true - metadata: - nullable: true - notifications: - type: array - items: {} - offline_reference: - type: string - customer: + isDeleted: + type: boolean + details: type: object properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: + authorization_code: type: string - customer_code: + nullable: true + account_number: type: string - phone: + nullable: true + account_name: type: string - metadata: - type: object - risk_action: + nullable: true + bank_code: type: string - international_format_phone: + bank_name: type: string required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - created_at: - type: string - discount: - nullable: true - split_code: - type: string - nullable: true + - authorization_code + - account_number + - account_name + - bank_code + - bank_name required: - - id - - integration - - domain - - amount + - active + - createdAt - currency - - due_date - - has_invoice - - invoice_number - description - - pdf_url - - line_items - - tax - - request_code - - status - - paid - - paid_at - - metadata - - notifications - - offline_reference - - customer - - created_at - - discount - - split_code - PaymentRequestListResponse: + - domain + - email + - id + - integration + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + TransferRecipientListResponse: type: object properties: status: @@ -10697,7 +10993,7 @@ components: data: type: array items: - $ref: '#/components/schemas/PaymentRequestListResponseArray' + $ref: "#/components/schemas/TransferRecipientListResponseArray" meta: type: object properties: @@ -10706,9 +11002,7 @@ components: skipped: type: integer perPage: - anyOf: - - type: integer - - type: string + type: integer page: type: integer pageCount: @@ -10725,65 +11019,42 @@ components: - message - data - meta - PaymentRequestCreate: + TransferRecipientCreate: type: object required: - - customer + - type + - name + - account_number + - bank_code properties: - customer: - description: Customer id or code + type: + description: Recipient Type + default: nuban type: string - amount: - description: |- - Payment request amount. Only useful if line items and tax values are ignored. - The endpoint will throw a friendly warning if neither is available. - type: integer - currency: - description: Specify the currency of the invoice. Allowed values are NGN, GHS, ZAR and USD. Defaults to NGN + name: + description: Recipient's name type: string - due_date: - description: ISO 8601 representation of request due date + account_number: + description: Recipient's bank account number + type: string + bank_code: + description: + Recipient's bank code. You can get the list of Bank Codes by + calling the List Banks endpoint type: string - format: date-time description: - description: A short description of the payment request + description: A description for this recipient type: string - line_items: - description: Array of line items - type: array - items: - type: object - tax: - description: Array of taxes - type: array - items: - type: object - send_notification: - description: Indicates whether Paystack sends an email notification to customer. Defaults to true - type: boolean - items: - type: object - draft: - description: Indicate if request should be saved as draft. Defaults to false and overrides send_notification - type: boolean - items: - type: object - has_invoice: - description: |- - Set to true to create a draft invoice (adds an auto incrementing invoice number if none is provided) - even if there are no line_items or tax passed - type: boolean - items: - type: object - invoice_number: - description: |- - Numeric value of invoice. Invoice will start from 1 and auto increment from there. This field is to help - override whatever value Paystack decides. Auto increment for subsequent invoices continue from this point. - type: integer - split_code: - description: The split code of the transaction split. + currency: + description: Currency for the account receiving the transfer type: string - PaymentRequestCreateResponse: + authorization_code: + description: An authorization code from a previous transaction + type: string + metadata: + description: JSON object of custom data + type: object + TransferRecipientCreateResponse: type: object properties: status: @@ -10793,145 +11064,151 @@ components: data: type: object properties: - id: - type: integer - integration: - type: integer - domain: + active: + type: boolean + createdAt: type: string - amount: - type: integer currency: type: string - due_date: - type: string - nullable: true - has_invoice: - type: boolean - invoice_number: - nullable: true description: - nullable: true - line_items: - type: array - items: {} - tax: - type: array - items: {} - request_code: type: string - status: + domain: type: string - paid: - type: boolean + email: + type: string + id: + type: integer + integration: + type: integer metadata: + type: object nullable: true - notifications: - type: array - items: {} - offline_reference: + name: type: string - customer: - type: integer - created_at: + recipient_code: type: string - discount: - nullable: true - split_code: - nullable: true + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + type: string + nullable: true + account_number: + type: string + nullable: true + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name required: - - id - - integration - - domain - - amount + - active + - createdAt - currency - - due_date - - has_invoice - - invoice_number - description - - line_items - - tax - - request_code - - status - - paid - - metadata - - notifications - - offline_reference - - customer - - created_at - - discount - - split_code + - domain + - email + - id + - integration + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details required: - status - message - data - PaymentRequestUpdate: + TransferRecipientBulk: + type: object + required: + - batch + properties: + batch: + description: A list of transfer recipient object. + type: array + items: + $ref: "#/components/schemas/TransferRecipientCreate" + ErrorRecordsArray: type: object properties: - customer: - description: Customer id or code + type: + type: string + name: + type: string + description: + type: string + account_number: + type: string + bank_code: type: string - amount: - description: |- - Payment request amount. Only useful if line items and tax values are ignored. - The endpoint will throw a friendly warning if neither is available. - type: integer currency: - description: Specify the currency of the invoice. Allowed values are NGN, GHS, ZAR and USD. Defaults to NGN type: string - due_date: - description: ISO 8601 representation of request due date + email: type: string - format: date-time - description: - description: A short description of the payment request + required: + - type + - name + - description + - account_number + - bank_code + - currency + - email + TransferRecipientErrorsArray: + type: object + properties: + message: type: string - line_items: - description: Array of line items - type: array - items: - type: object - tax: - description: Array of taxes + records: type: array items: - type: object - send_notification: - description: Indicates whether Paystack sends an email notification to customer. Defaults to true - type: boolean - items: - type: object - draft: - description: Indicate if request should be saved as draft. Defaults to false and overrides send_notification - type: boolean - items: - type: object - has_invoice: - description: |- - Set to true to create a draft invoice (adds an auto incrementing invoice number if none is provided) - even if there are no line_items or tax passed - type: boolean - items: - type: object - invoice_number: - description: |- - Numeric value of invoice. Invoice will start from 1 and auto increment from there. This field is to help - override whatever value Paystack decides. Auto increment for subsequent invoices continue from this point. - type: integer - split_code: - description: The split code of the transaction split. - type: string - PaymentRequestNotificationsArray: + $ref: "#/components/schemas/ErrorRecordsArray" + required: + - message + - records + TransferRecipientBulkCreateResponse: type: object properties: - sent_at: - type: string - channel: + status: + type: boolean + message: type: string + data: + type: object + properties: + success: + type: array + items: {} + errors: + type: array + items: + $ref: "#/components/schemas/TransferRecipientErrorsArray" + required: + - success + - errors required: - - sent_at - - channel - PaymentRequestUpdateResponse: + - status + - message + - data + TransferRecipientFetchResponse: type: object properties: status: @@ -10941,302 +11218,337 @@ components: data: type: object properties: - id: - type: integer integration: type: integer domain: type: string - amount: - type: integer - currency: - type: string - due_date: - type: string - nullable: true - has_invoice: - type: boolean - invoice_number: - type: integer - nullable: true - description: - nullable: true - pdf_url: - type: string - nullable: true - line_items: - type: array - items: {} - tax: - type: array - items: {} - request_code: + type: type: string - status: + currency: type: string - paid: - type: boolean - paid_at: - nullable: true - metadata: - nullable: true - notifications: - type: array - items: - $ref: '#/components/schemas/PaymentRequestNotificationsArray' - offline_reference: + name: type: string - customer: + details: type: object properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: + account_number: type: string - phone: + nullable: true + account_name: type: string - metadata: - type: object - properties: - calling_code: - type: string - risk_action: + nullable: true + bank_code: type: string - international_format_phone: + bank_name: type: string required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - created_at: + - account_number + - account_name + - bank_code + - bank_name + description: type: string - discount: - nullable: true - split_code: + metadata: + type: object nullable: true + recipient_code: + type: string + active: + type: boolean + recipient_account: + type: string + institution_code: + type: string + email: + type: string + id: + type: integer + isDeleted: + type: boolean + createdAt: + type: string + updatedAt: + type: string required: - - id - integration - domain - - amount + - type - currency - - due_date - - has_invoice - - invoice_number + - name + - details - description - - pdf_url - - line_items - - tax - - request_code - - status - - paid - - paid_at - - metadata - - notifications - - offline_reference - - customer - - created_at - - discount - - split_code + - recipient_code + - active + - recipient_account + - institution_code + - email + - id + - isDeleted + - createdAt + - updatedAt required: - status - message - data - PaymentRequestVerifyResponse: + TransferRecipientUpdate: + type: object + properties: + name: + description: Recipient's name + type: string + email: + description: Recipient's email address + type: string + TransferRecipientUpdateResponse: type: object properties: status: type: boolean message: type: string - data: + required: + - status + - message + TransferRecipientDeleteResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + TransferListResponseArray: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + request: + type: integer + transferred_at: + nullable: true + updatedAt: + type: string + recipient: type: object properties: - id: - type: integer - integration: - type: object - properties: - key: - type: string - name: - type: string - logo: - type: string - allowed_currencies: - type: array - items: - type: string - required: - - key - - name - - logo - - allowed_currencies - domain: + active: + type: boolean + createdAt: type: string - amount: - type: integer currency: type: string - due_date: - type: string - nullable: true - has_invoice: - type: boolean - invoice_number: - type: integer - nullable: true description: - nullable: true - pdf_url: type: string - nullable: true - line_items: - type: array - items: {} - tax: - type: array - items: {} - request_code: + domain: type: string - status: + email: type: string - paid: - type: boolean - paid_at: - nullable: true + id: + type: integer + integration: + type: integer metadata: + type: object nullable: true - notifications: - type: array - items: - $ref: '#/components/schemas/PaymentRequestNotificationsArray' - offline_reference: + name: type: string - customer: + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: type: object properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: + authorization_code: + nullable: true + account_number: type: string - phone: + account_name: type: string - metadata: - type: object - properties: - calling_code: - type: string - risk_action: + nullable: true + bank_code: type: string - international_format_phone: + bank_name: type: string required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - created_at: - type: string - discount: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name + required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + session: + type: object + properties: + provider: nullable: true - split_code: + id: nullable: true - pending_amount: - type: integer required: + - provider - id - - integration - - domain - - amount - - currency - - due_date - - has_invoice - - invoice_number - - description - - pdf_url - - line_items - - tax - - request_code - - status - - paid - - paid_at - - metadata - - notifications - - offline_reference - - customer - - created_at - - discount - - split_code - - pending_amount + fee_charged: + type: integer + fees_breakdown: + type: integer + nullable: true required: + - amount + - createdAt + - currency + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details - status - - message - - data - PaymentRequestSendNotificationResponse: + - titan_code + - request + - transfer_code + - transferred_at + - updatedAt + - recipient + - session + - fee_charged + - fees_breakdown + TransferListResponse: type: object properties: status: type: boolean message: type: string + data: + type: array + items: + $ref: "#/components/schemas/TransferListResponseArray" + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false required: - status - message - PaymentRequestPendingArray: + - data + - meta + TransferBase: type: object - properties: - currency: - type: string - amount: - type: integer required: - - currency - amount - PaymentRequestSuccessfulArray: - type: object + - recipient + - reference properties: - currency: - type: string amount: + description: + Amount to transfer in kobo if currency is NGN and pesewas if + currency is GHS. type: integer - required: - - currency - - amount - PaymentRequestTotalArray: - type: object - properties: - currency: + recipient: + description: The transfer recipient's code type: string - amount: - type: integer - required: - - currency - - amount - PaymentRequestTotalResponse: + reference: + description: > + To ensure idempotency, you need to provide e a unique identifier for + the request. The identifier should be a lowercase alphanumeric + string with only -,_ symbols allowed. + type: string + minimum: 16 + reason: + description: The reason or narration for the transfer. + type: string + TransferInitiate: + description: Transfer initiation model + allOf: + - $ref: "#/components/schemas/TransferBase" + - type: object + required: + - source + - amount + - recipient + - reference + properties: + source: + description: The origin of the funds to send from + type: string + default: balance + currency: + description: Specify the currency of the transfer. + type: string + default: NGN + enum: + - NGN + - ZAR + - KES + - GHS + TransferCreateResponse: type: object properties: status: @@ -11246,244 +11558,131 @@ components: data: type: object properties: - pending: - type: array - items: - $ref: '#/components/schemas/PaymentRequestPendingArray' - successful: + transfersessionid: type: array - items: - $ref: '#/components/schemas/PaymentRequestSuccessfulArray' - total: + items: {} + transfertrials: type: array - items: - $ref: '#/components/schemas/PaymentRequestTotalArray' - required: - - pending - - successful - - total - required: - - status - - message - - data - PaymentRequestFinalizeResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - id: - type: integer - integration: - type: integer + items: {} domain: type: string amount: type: integer currency: type: string - due_date: + reference: type: string - nullable: true - has_invoice: - type: boolean - invoice_number: - type: integer - nullable: true - description: + source: type: string + source_details: nullable: true - pdf_url: - nullable: true - line_items: - type: array - items: - $ref: '#/components/schemas/PaymentRequestLineItemsArray' - tax: - type: array - items: - $ref: '#/components/schemas/PaymentRequestTaxArray' - request_code: + reason: type: string status: type: string - paid: - type: boolean - paid_at: - nullable: true - metadata: + failures: nullable: true - notifications: - type: array - items: {} - offline_reference: - type: string - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - metadata: - type: object - properties: - calling_code: - type: string - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - created_at: + transfer_code: type: string - discount: - type: object - properties: - type: - type: string - amount: - type: integer - required: - - type - - amount + titan_code: nullable: true - split_code: + transferred_at: nullable: true - pending_amount: + id: + type: integer + integration: + type: integer + request: + type: integer + recipient: type: integer + createdAt: + type: string + updatedAt: + type: string required: - - id - - integration + - transfersessionid + - transfertrials - domain - amount - currency - - due_date - - has_invoice - - invoice_number - - description - - pdf_url - - line_items - - tax - - request_code + - reference + - source + - source_details + - reason - status - - paid - - paid_at - - metadata - - notifications - - offline_reference - - customer - - created_at - - discount - - split_code - - pending_amount + - failures + - transfer_code + - titan_code + - transferred_at + - id + - integration + - request + - recipient + - createdAt + - updatedAt required: - status - message - data - PaymentRequestArchiveResponse: + TransferFinalize: type: object + required: + - transfer_code + - otp properties: - status: - type: boolean - message: + transfer_code: + description: The transfer code you want to finalize type: string - required: - - status - - message - TransferRecipientListResponseArray: + otp: + description: OTP sent to business phone to verify transfer + type: string + TransferBulk: type: object + required: + - source + - transfers properties: - active: - type: boolean - createdAt: + source: + description: Where should we transfer from? Only balance is allowed for now type: string currency: + description: Specify the currency of the transfer. type: string - description: - type: string - domain: + default: NGN + enum: + - NGN + - ZAR + - KES + - GHS + transfers: + description: A list of transfer object + type: array + items: + $ref: "#/components/schemas/TransferBase" + TransferBulkResponseArray: + type: object + properties: + reference: type: string - email: + recipient: type: string - nullable: true - id: - type: integer - integration: + amount: type: integer - metadata: - nullable: true - name: - type: string - recipient_code: + transfer_code: type: string - type: + currency: type: string - updatedAt: + status: type: string - is_deleted: - type: boolean - isDeleted: - type: boolean - details: - type: object - properties: - authorization_code: - nullable: true - account_number: - type: string - account_name: - type: string - nullable: true - bank_code: - type: string - bank_name: - type: string - required: - - authorization_code - - account_number - - account_name - - bank_code - - bank_name required: - - active - - createdAt + - reference + - recipient + - amount + - transfer_code - currency - - description - - domain - - email - - id - - integration - - metadata - - name - - recipient_code - - type - - updatedAt - - is_deleted - - isDeleted - - details - TransferRecipientListResponse: + - status + TransferBulkResponse: type: object properties: status: @@ -11493,65 +11692,25 @@ components: data: type: array items: - $ref: '#/components/schemas/TransferRecipientListResponseArray' - meta: - type: object - properties: - total: - type: integer - skipped: - type: integer - perPage: - type: integer - page: - type: integer - pageCount: - type: integer - required: - - total - - skipped - - perPage - - page - - pageCount - additionalProperties: false + $ref: "#/components/schemas/TransferBulkResponseArray" required: - status - message - data - - meta - TransferRecipientCreate: + TransferFeesBreakdownArray: type: object - required: - - type - - name - - account_number - - bank_code properties: - type: - description: Recipient Type (Only nuban at this time) - type: string - name: - description: Recipient's name - type: string - account_number: - description: Recipient's bank account number - type: string - bank_code: - description: Recipient's bank code. You can get the list of Bank Codes by calling the List Banks endpoint - type: string - description: - description: A description for this recipient - type: string - currency: - description: Currency for the account receiving the transfer - type: string - authorization_code: - description: An authorization code from a previous transaction + amount: type: string - metadata: - description: Stringified JSON object of custom data + formula: + nullable: true + type: type: string - TransferRecipientCreateResponse: + required: + - amount + - formula + - type + TransferFetchResponse: type: object properties: status: @@ -11561,240 +11720,319 @@ components: data: type: object properties: - active: - type: boolean + amount: + type: integer createdAt: type: string currency: type: string - description: - type: string domain: type: string - email: - type: string + failures: + nullable: true id: type: integer integration: type: integer - metadata: - nullable: true - name: + reason: type: string - recipient_code: + reference: type: string - type: + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: type: string + request: + type: integer + transferred_at: + nullable: true updatedAt: type: string - is_deleted: - type: boolean - isDeleted: - type: boolean - details: + recipient: type: object properties: - authorization_code: - nullable: true - account_number: + active: + type: boolean + createdAt: type: string - account_name: + currency: + type: string + description: + type: string + domain: + type: string + email: type: string + id: + type: integer + integration: + type: integer + metadata: + type: object nullable: true - bank_code: + name: type: string - bank_name: + recipient_code: + type: string + type: + type: string + updatedAt: type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name required: - - authorization_code - - account_number - - account_name - - bank_code - - bank_name + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - name + - recipient_code + - type + - updatedAt + - is_deleted + - isDeleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + fee_charged: + type: integer + fees_breakdown: + type: array + items: + $ref: "#/components/schemas/TransferFeesBreakdownArray" + nullable: true + gateway_response: + type: string + nullable: true required: - - active + - amount - createdAt - currency - - description - domain - - email + - failures - id - integration - - metadata - - name - - recipient_code - - type + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - request + - transferred_at - updatedAt - - is_deleted - - isDeleted - - details + - recipient + - session + - fee_charged + - fees_breakdown + - gateway_response required: - status - message - data - TransferRecipientBulk: - type: object - required: - - batch - properties: - batch: - description: |- - A list of transfer recipient object. Each object should contain type, name, and bank_code. - Any Create Transfer Recipient param can also be passed. - type: array - items: - $ref: '#/components/schemas/TransferRecipientCreate' - ErrorRecordsArray: - type: object - properties: - type: - type: string - name: - type: string - description: - type: string - account_number: - type: string - bank_code: - type: string - currency: - type: string - email: - type: string - required: - - type - - name - - description - - account_number - - bank_code - - currency - - email - TransferRecipientErrorsArray: + TransferVerifyResponse: type: object properties: - message: - type: string - records: - type: array - items: - $ref: '#/components/schemas/ErrorRecordsArray' - required: - - message - - records - TransferRecipientBulkCreateResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - success: - type: array - items: {} - errors: - type: array - items: - $ref: '#/components/schemas/TransferRecipientErrorsArray' - required: - - success - - errors - required: - - status - - message - - data - TransferRecipientFetchResponse: - type: object - properties: - status: - type: boolean + status: + type: boolean message: type: string data: type: object properties: - integration: + amount: type: integer + createdAt: + type: string + currency: + type: string domain: type: string - type: + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: type: string - currency: + reference: type: string - name: + source: type: string - details: + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + transferred_at: + nullable: true + updatedAt: + type: string + recipient: type: object properties: - account_number: + active: + type: boolean + createdAt: type: string - account_name: + currency: type: string - bank_code: + description: type: string - bank_name: + domain: + type: string + email: type: string + id: + type: integer + integration: + type: integer + metadata: + type: object + nullable: true + name: + type: string + recipient_code: + type: string + type: + type: string + updatedAt: + type: string + is_deleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name required: - - account_number - - account_name - - bank_code - - bank_name - description: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - name + - recipient_code + - type + - updatedAt + - is_deleted + - details + session: + type: object + properties: + provider: + nullable: true + id: + nullable: true + required: + - provider + - id + gateway_response: type: string - metadata: nullable: true - recipient_code: - type: string - active: - type: boolean - recipient_account: - type: string - institution_code: - type: string - email: - type: string - id: - type: integer - isDeleted: - type: boolean - createdAt: - type: string - updatedAt: - type: string required: - - integration - - domain - - type + - amount + - createdAt - currency - - name - - details - - description - - metadata - - recipient_code - - active - - recipient_account - - institution_code - - email + - domain + - failures - id - - isDeleted - - createdAt + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - transferred_at - updatedAt + - recipient + - session + - gateway_response required: - status - message - data - TransferRecipientUpdate: + TransferResendOTP: type: object + required: + - transfer_code + - reason properties: - name: - description: Recipient's name + transfer_code: + description: The transfer code that requires an OTP validation type: string - email: - description: Recipient's email address + reason: + description: Specify the flag to indicate the purpose of the OTP type: string - TransferRecipientUpdateResponse: + default: transfer + enum: + - disable_otp + - transfer + TransferResendsOtpResponse: type: object properties: status: @@ -11804,7 +12042,7 @@ components: required: - status - message - TransferRecipientDeleteResponse: + TransferDisablesOtpResponse: type: object properties: status: @@ -11814,143 +12052,97 @@ components: required: - status - message - TransferListResponseArray: + TransferFinalizeDisableOTP: type: object + required: + - otp properties: - amount: - type: integer - createdAt: - type: string - currency: - type: string - domain: - type: string - failures: - nullable: true - id: - type: integer - integration: - type: integer - reason: - type: string - reference: - type: string - source: + otp: + description: OTP sent to business phone to verify disabling OTP requirement type: string - source_details: - nullable: true + TransferFinalizeDisablesOtpResponse: + type: object + properties: status: + type: boolean + message: type: string - titan_code: - nullable: true - transfer_code: + required: + - status + - message + TransferEnablesOtpResponse: + type: object + properties: + status: + type: boolean + message: type: string - transferred_at: - nullable: true - updatedAt: + required: + - status + - message + BalanceCheckResponseArray: + type: object + properties: + currency: type: string - recipient: - type: object - properties: - active: - type: boolean - createdAt: - type: string - currency: - type: string - description: - type: string - domain: - type: string - email: - type: string - id: - type: integer - integration: - type: integer - metadata: - nullable: true - name: - type: string - recipient_code: - type: string - type: - type: string - updatedAt: - type: string - is_deleted: - type: boolean - isDeleted: - type: boolean - details: - type: object - properties: - authorization_code: - nullable: true - account_number: - type: string - account_name: - type: string - bank_code: - type: string - bank_name: - type: string - required: - - authorization_code - - account_number - - account_name - - bank_code - - bank_name - required: - - active - - createdAt - - currency - - description - - domain - - email - - id - - integration - - metadata - - name - - recipient_code - - type - - updatedAt - - is_deleted - - isDeleted - - details - session: - type: object - properties: - provider: - nullable: true - id: - nullable: true - required: - - provider - - id - fee_charged: + balance: type: integer required: - - amount - - createdAt - currency - - domain - - failures - - id + - balance + BalanceCheckResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/BalanceCheckResponseArray" + required: + - status + - message + - data + BalanceFetchLedgerResponseArray: + type: object + properties: + integration: + type: integer + domain: + type: string + balance: + type: integer + currency: + type: string + difference: + type: integer + reason: + type: string + model_responsible: + type: string + model_row: + type: integer + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: - integration + - domain + - balance + - currency + - difference - reason - - reference - - source - - source_details - - status - - titan_code - - transfer_code - - transferred_at + - model_responsible + - model_row + - id + - createdAt - updatedAt - - recipient - - session - - fee_charged - TransferListResponse: + BalanceFetchLedgerResponse: type: object properties: status: @@ -11960,7 +12152,7 @@ components: data: type: array items: - $ref: '#/components/schemas/TransferListResponseArray' + $ref: "#/components/schemas/BalanceFetchLedgerResponseArray" meta: type: object properties: @@ -11986,34 +12178,83 @@ components: - message - data - meta - TransferInitiate: + ChargeCreate: type: object required: - - source + - email - amount - - recipient properties: - source: - description: Where should we transfer from? Only balance is allowed for now + email: + description: Customer's email address type: string amount: - description: Amount to transfer in kobo if currency is NGN and pesewas if currency is GHS. - type: string - recipient: - description: The transfer recipient's code + description: + Amount should be in kobo if currency is NGN, pesewas, if currency + is GHS, and cents, if currency is ZAR type: string - reason: - description: The reason or narration for the transfer. + authorization_code: + description: An authorization code to charge. type: string - currency: - description: Specify the currency of the transfer. Defaults to NGN. + pin: + description: 4-digit PIN (send with a non-reusable authorization code) type: string reference: - description: |- - If specified, the field should be a unique identifier (in lowercase) for the object. - Only -,_ and alphanumeric characters are allowed. + description: + Unique transaction reference. Only -, .`, = and alphanumeric + characters allowed. type: string - TransferCreateResponse: + birthday: + description: The customer's birthday in the format YYYY-MM-DD e.g 2017-05-16 + type: string + format: date-time + device_id: + description: >- + This is the unique identifier of the device a user uses in making + payment. + + Only -, .`, = and alphanumeric characters are allowed. + type: string + metadata: + description: JSON object of custom data + type: object + Bank: + type: object + properties: + code: + description: Customer's bank code + type: string + account_number: + description: Customer's account number + type: string + MobileMoney: + type: object + properties: + phone: + description: Customer's phone number + type: string + provider: + description: + The telco provider of customer's phone number. This can be fetched + from the List Bank endpoint + type: string + USSD: + type: object + properties: + type: + description: The three-digit USSD code. + type: string + enum: + - "737" + - "919" + - "822" + - "966" + EFT: + type: object + properties: + provider: + description: The EFT provider + type: string + ChargeCreateResponse: type: object properties: status: @@ -12023,118 +12264,246 @@ components: data: type: object properties: - transfersessionid: - type: array - items: {} + id: + type: integer domain: type: string - amount: - type: integer - currency: + status: type: string reference: type: string - source: - type: string - source_details: + receipt_number: nullable: true - reason: - type: string - status: + amount: + type: integer + message: type: string - failures: nullable: true - transfer_code: + gateway_response: type: string - titan_code: - nullable: true - transferred_at: - nullable: true - id: - type: integer - integration: - type: integer - request: - type: integer - recipient: - type: integer - createdAt: + paid_at: type: string - updatedAt: + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: "#/components/schemas/MetadataCustomFieldsArray" + required: + - custom_fields + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: type: string + plan_object: + type: object + subaccount: + type: object required: - - transfersessionid + - id - domain + - status + - reference + - receipt_number - amount + - message + - gateway_response + - paid_at + - created_at + - channel - currency - - reference - - source - - source_details - - reason - - status - - failures - - transfer_code - - titan_code - - transferred_at - - id - - integration - - request - - recipient + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt - createdAt - - updatedAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount required: - status - message - data - TransferFinalize: - type: object - required: - - transfer_code - - otp - properties: - transfer_code: - description: The transfer code you want to finalize - type: string - otp: - description: OTP sent to business phone to verify transfer - type: string - TransferBulk: + ChargeSubmitPin: type: object required: - - source - - transfers + - pin + - reference properties: - source: - description: Where should we transfer from? Only balance is allowed for now + pin: + description: Customer's PIN for the ongoing transaction type: string - transfers: - description: A list of transfer object. Each object should contain amount, recipient, and reference - type: array - items: - $ref: '#/components/schemas/TransferInitiate' - TransferBulkResponseArray: - type: object - properties: reference: + description: Transaction reference that requires the PIN type: string - recipient: - type: string - amount: - type: integer - transfer_code: - type: string - currency: - type: string - status: - type: string - required: - - reference - - recipient - - amount - - transfer_code - - currency - - status - TransferBulkResponse: + ChargeSubmitPinResponse: type: object properties: status: @@ -12142,27 +12511,5065 @@ components: message: type: string data: - type: array - items: - $ref: '#/components/schemas/TransferBulkResponseArray' + type: object + properties: + status: + type: string + amount: + type: integer + currency: + type: string + transaction_date: + type: string + reference: + type: string + domain: + type: string + redirect_url: + type: string + nullable: true + metadata: + type: object + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + nullable: true + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - email + - customer_code + - phone + - risk_action + required: + - status + - amount + - currency + - transaction_date + - reference + - domain + - redirect_url + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer + required: + - status + - message + - data + ChargeSubmitOTP: + type: object + required: + - otp + - reference + properties: + otp: + description: Customer's OTP for ongoing transaction + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeSubmitOtpResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + amount: + type: integer + currency: + type: string + transaction_date: + type: string + reference: + type: string + domain: + type: string + redirect_url: + type: string + nullable: true + metadata: + type: object + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + nullable: true + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - email + - customer_code + - phone + - risk_action + required: + - status + - amount + - currency + - transaction_date + - reference + - domain + - redirect_url + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer + required: + - status + - message + - data + ChargeSubmitPhone: + type: object + required: + - phone + - reference + properties: + phone: + description: Customer's mobile number + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeSubmitPhoneResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + amount: + type: integer + currency: + type: string + transaction_date: + type: string + reference: + type: string + domain: + type: string + redirect_url: + type: string + nullable: true + metadata: + type: object + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + nullable: true + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - email + - customer_code + - phone + - risk_action + display_text: + type: string + required: + - status + - amount + - currency + - transaction_date + - reference + - domain + - redirect_url + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer + - display_text + required: + - status + - message + - data + ChargeSubmitBirthday: + type: object + required: + - birthday + - reference + properties: + birthday: + description: Customer's birthday in the format YYYY-MM-DD e.g 2016-09-21 + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeSubmitBirthdayResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + display_text: + type: string + required: + - status + - display_text + required: + - status + - message + - data + ChargeSubmitAddress: + type: object + required: + - address + - reference + - city + - state + - zip_code + properties: + address: + description: Customer's address + type: string + city: + description: Customer's city + type: string + state: + description: Customer's state + type: string + zip_code: + description: Customer's zipcode + type: string + reference: + description: The reference of the ongoing transaction + type: string + ChargeCheckPendingResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + amount: + type: integer + currency: + type: string + transaction_date: + type: string + reference: + type: string + domain: + type: string + redirect_url: + type: string + nullable: true + metadata: + type: object + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + nullable: true + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - email + - customer_code + - phone + - risk_action + required: + - status + - amount + - currency + - transaction_date + - reference + - domain + - redirect_url + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer + required: + - status + - message + - data + BulkChargeListResponseArray: + type: object + properties: + integration: + type: integer + domain: + type: string + batch_code: + type: string + status: + type: string + easy_cron_id: + nullable: true + reference: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - domain + - batch_code + - status + - easy_cron_id + - reference + - id + - createdAt + - updatedAt + BulkChargeListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/BulkChargeListResponseArray" + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + anyOf: + - type: integer + - type: string + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + BulkChargeInitiate: + type: object + required: + - authorization + - amount + properties: + authorization: + description: Customer's card authorization code + type: string + amount: + description: Amount to charge on the authorization + type: integer + reference: + description: + Unique reference containing only -, .`, = and alphanumeric + characters. + type: string + attempt_partial_debit: + description: + A flag to indicate if you want us to try recouping lower amounts + when the customer has insufficient fund + type: boolean + at_least: + description: Minimum amount to charge if the attempt_partial_debit flag is set + type: integer + metadata: + description: JSON object of custom data + type: object + BulkChargeInitiateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + batch_code: + type: string + reference: + type: string + id: + type: integer + integration: + type: integer + domain: + type: string + status: + type: string + total_charges: + type: integer + pending_charges: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - batch_code + - reference + - id + - integration + - domain + - status + - total_charges + - pending_charges + - createdAt + - updatedAt + required: + - status + - message + - data + BulkChargeFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + batch_code: + type: string + reference: + type: string + id: + type: integer + integration: + type: integer + domain: + type: string + status: + type: string + total_charges: + type: integer + pending_charges: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - batch_code + - reference + - id + - integration + - domain + - status + - total_charges + - pending_charges + - createdAt + - updatedAt + required: + - status + - message + - data + BulkChargeFetchBulkBatchChargesResponseArray: + type: object + properties: + integration: + type: integer + bulkcharge: + type: integer + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + domain: + type: string + amount: + type: integer + at_least: + type: integer + currency: + type: string + reference: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: "#/components/schemas/MetadataCustomFieldsArray" + required: + - custom_fields + status: + type: string + message: + type: string + attempt_partial_debit: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - integration + - bulkcharge + - customer + - authorization + - domain + - amount + - at_least + - currency + - reference + - metadata + - status + - message + - attempt_partial_debit + - id + - createdAt + - updatedAt + BulkChargeFetchBulkBatchChargesResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/BulkChargeFetchBulkBatchChargesResponseArray" + meta: + type: object + properties: + perPage: + type: string + total: + type: integer + skipped: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - perPage + - total + - skipped + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + BulkChargePauseResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + BulkChargeResumeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + PaymentSession: + type: object + required: + - timeout + properties: + timeout: + description: Time in seconds before a transaction becomes invalid + type: string + example: "30" + RefundListResponseArray: + type: object + properties: + integration: + type: integer + transaction: + type: integer + dispute: + nullable: true + settlement: + nullable: true + id: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + status: + type: string + refunded_at: + nullable: true + refunded_by: + type: string + customer_note: + type: string + merchant_note: + type: string + deducted_amount: + type: integer + fully_deducted: + type: integer + createdAt: + type: string + bank_reference: + nullable: true + transaction_reference: + type: string + reason: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + refund_type: + type: string + transaction_amount: + type: integer + initiated_by: + type: string + refund_channel: + type: string + session_id: + nullable: true + collect_account_number: + type: boolean + required: + - integration + - transaction + - dispute + - settlement + - id + - domain + - currency + - amount + - status + - refunded_at + - refunded_by + - customer_note + - merchant_note + - deducted_amount + - fully_deducted + - createdAt + - bank_reference + - transaction_reference + - reason + - customer + - refund_type + - transaction_amount + - initiated_by + - refund_channel + - session_id + - collect_account_number + RefundListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/RefundListResponseArray" + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: string + page: + type: integer + pageCount: + type: integer + failedRefundCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + - failedRefundCount + additionalProperties: false + required: + - status + - message + - data + - meta + RefundCreate: + type: object + required: + - transaction + properties: + transaction: + description: Transaction reference or id + type: string + amount: + description: >- + Amount ( in kobo if currency is NGN, pesewas, if currency is GHS, + and cents, if currency is ZAR ) to be refunded to the customer. + + Amount cannot be more than the original transaction amount + type: integer + currency: + description: Three-letter ISO currency. Allowed values are NGN, GHS, ZAR or USD + type: string + customer_note: + description: Customer reason + type: string + merchant_note: + description: Merchant reason + type: string + RefundCreateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + reference: + type: string + amount: + type: integer + paid_at: + type: string + channel: + type: string + currency: + type: string + authorization: + type: object + properties: + exp_month: + nullable: true + exp_year: + nullable: true + account_name: + nullable: true + required: + - exp_month + - exp_year + - account_name + customer: + type: object + properties: + international_format_phone: + type: string + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + properties: + currency: + nullable: true + required: + - currency + split: + type: object + order_id: + nullable: true + paidAt: + type: string + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + required: + - id + - domain + - reference + - amount + - paid_at + - channel + - currency + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - pos_transaction_data + - source + - fees_breakdown + integration: + type: integer + deducted_amount: + type: integer + channel: + nullable: true + merchant_note: + type: string + customer_note: + type: string + status: + type: string + refunded_by: + type: string + expected_at: + type: string + currency: + type: string + domain: + type: string + amount: + type: integer + fully_deducted: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - transaction + - integration + - deducted_amount + - channel + - merchant_note + - customer_note + - status + - refunded_by + - expected_at + - currency + - domain + - amount + - fully_deducted + - id + - createdAt + - updatedAt + required: + - status + - message + - data + RefundFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + integration: + type: integer + transaction: + type: integer + dispute: + nullable: true + settlement: + nullable: true + id: + type: integer + domain: + type: string + currency: + type: string + amount: + type: integer + status: + type: string + refunded_at: + nullable: true + refunded_by: + type: string + customer_note: + type: string + merchant_note: + type: string + deducted_amount: + type: integer + fully_deducted: + type: integer + createdAt: + type: string + bank_reference: + nullable: true + transaction_reference: + type: string + reason: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + refund_type: + type: string + transaction_amount: + type: integer + initiated_by: + type: string + refund_channel: + type: string + session_id: + nullable: true + collect_account_number: + type: boolean + required: + - integration + - transaction + - dispute + - settlement + - id + - domain + - currency + - amount + - status + - refunded_at + - refunded_by + - customer_note + - merchant_note + - deducted_amount + - fully_deducted + - createdAt + - bank_reference + - transaction_reference + - reason + - customer + - refund_type + - transaction_amount + - initiated_by + - refund_channel + - session_id + - collect_account_number + required: + - status + - message + - data + DisputeHistoryArray: + type: object + properties: + status: + type: string + by: + type: string + createdAt: + type: string + required: + - status + - by + - createdAt + DisputeMessagesArray: + type: object + properties: + sender: + type: string + body: + type: string + createdAt: + type: string + required: + - sender + - body + - createdAt + DisputeListResponseArray: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: "#/components/schemas/MetadataCustomFieldsArray" + required: + - custom_fields + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + fees_split: + type: integer + nullable: true + authorization: + type: object + customer: + nullable: true + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: string + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: "#/components/schemas/DisputeHistoryArray" + messages: + type: array + items: + $ref: "#/components/schemas/DisputeMessagesArray" + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt + DisputeListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/DisputeListResponseArray" + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + DisputeFetchResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: "#/components/schemas/MetadataCustomFieldsArray" + required: + - custom_fields + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: "#/components/schemas/DisputeHistoryArray" + messages: + type: array + items: + $ref: "#/components/schemas/DisputeMessagesArray" + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt + required: + - status + - message + - data + DisputeUpdate: + type: object + required: + - refund_amount + properties: + refund_amount: + description: + The amount to refund, in kobo if currency is NGN, pesewas, if + currency is GHS, and cents, if currency is ZAR + type: string + uploaded_filename: + description: + Filename of attachment returned via response from the Dispute + upload URL + type: string + DisputeUpdateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + refund_amount: + type: integer + currency: + type: string + status: + type: string + resolution: + nullable: true + domain: + type: string + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: "#/components/schemas/MetadataCustomFieldsArray" + required: + - custom_fields + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + transaction_reference: + nullable: true + category: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + bin: + type: string + last4: + type: string + dueAt: + nullable: true + resolvedAt: + nullable: true + evidence: + nullable: true + attachments: + nullable: true + note: + nullable: true + history: + type: array + items: + $ref: "#/components/schemas/DisputeHistoryArray" + messages: + type: array + items: + $ref: "#/components/schemas/DisputeMessagesArray" + createdAt: + type: string + updatedAt: + type: string + required: + - id + - refund_amount + - currency + - status + - resolution + - domain + - transaction + - transaction_reference + - category + - customer + - bin + - last4 + - dueAt + - resolvedAt + - evidence + - attachments + - note + - history + - messages + - createdAt + - updatedAt + required: + - status + - message + - data + DisputeUploadURLResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + signedUrl: + type: string + fileName: + type: string + required: + - signedUrl + - fileName + required: + - status + - message + - data + DisputeExportResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + path: + type: string + expiresAt: + type: string + required: + - path + - expiresAt + required: + - status + - message + - data + DisputeListTransactionResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + history: + type: array + items: + $ref: "#/components/schemas/DisputeHistoryArray" + messages: + type: array + items: + $ref: "#/components/schemas/DisputeMessagesArray" + currency: + type: string + last4: + type: string + bin: + type: string + transaction_reference: + nullable: true + merchant_transaction_reference: + type: string + refund_amount: + type: integer + status: + type: string + domain: + type: string + resolution: + nullable: true + category: + type: string + note: + nullable: true + attachments: + nullable: true + id: + type: integer + integration: + type: integer + transaction: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: integer + nullable: true + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: "#/components/schemas/MetadataCustomFieldsArray" + required: + - custom_fields + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + international_format_phone: + nullable: true + required: + - international_format_phone + plan: + type: object + subaccount: + type: object + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + type: object + nullable: true + required: + - id + - domain + - status + - reference + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - subaccount + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + created_by: + type: integer + evidence: + nullable: true + resolvedAt: + nullable: true + createdAt: + type: string + updatedAt: + type: string + dueAt: + nullable: true + required: + - history + - messages + - currency + - last4 + - bin + - transaction_reference + - merchant_transaction_reference + - refund_amount + - status + - domain + - resolution + - category + - note + - attachments + - id + - integration + - transaction + - created_by + - evidence + - resolvedAt + - createdAt + - updatedAt + - dueAt + required: + - status + - message + - data + DisputeResolve: + type: object + required: + - resolution + - message + - refund_amount + - uploaded_filename + properties: + resolution: + description: Dispute resolution. Accepted values, merchant-accepted, declined + type: string + message: + description: Reason for resolving + type: string + refund_amount: + description: + The amount to refund, in kobo if currency is NGN, pesewas, if + currency is GHS, and cents, if currency is ZAR + type: string + uploaded_filename: + description: + Filename of attachment returned via response from the Dispute + upload URL + type: string + evidence: + description: Evidence Id for fraud claims + type: integer + DisputeResolveResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + currency: + type: string + last4: + type: string + bin: + type: string + transaction_reference: + nullable: true + merchant_transaction_reference: + type: string + refund_amount: + type: integer + status: + type: string + domain: + type: string + resolution: + type: string + category: + type: string + note: + nullable: true + attachments: + type: string + id: + type: integer + integration: + type: integer + transaction: + type: integer + created_by: + type: integer + evidence: + type: integer + resolvedAt: + type: string + createdAt: + type: string + updatedAt: + type: string + dueAt: + nullable: true + message: + type: object + properties: + dispute: + type: integer + sender: + type: string + body: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - dispute + - sender + - body + - id + - createdAt + - updatedAt + required: + - currency + - last4 + - bin + - transaction_reference + - merchant_transaction_reference + - refund_amount + - status + - domain + - resolution + - category + - note + - attachments + - id + - integration + - transaction + - created_by + - evidence + - resolvedAt + - createdAt + - updatedAt + - dueAt + - message + required: + - status + - message + - data + DisputeEvidence: + type: object + required: + - customer_email + - customer_name + - customer_phone + - service_details + properties: + customer_email: + description: Customer email + type: string + customer_name: + description: Customer name + type: string + customer_phone: + description: Customer mobile number + type: string + service_details: + description: Details of service offered + type: string + delivery_address: + description: Delivery address + type: string + delivery_date: + description: ISO 8601 representation of delivery date (YYYY-MM-DD) + type: string + format: date-time + DisputeAddEvidenceResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + customer_email: + type: string + customer_name: + type: string + customer_phone: + type: string + service_details: + type: string + delivery_address: + type: string + delivery_date: + type: string + dispute: + type: integer + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - customer_email + - customer_name + - customer_phone + - service_details + - delivery_address + - delivery_date + - dispute + - id + - createdAt + - updatedAt + required: + - status + - message + - data + MiscellaneousListBanksResponseArray: + type: object + properties: + name: + type: string + slug: + type: string + code: + type: string + longcode: + type: string + gateway: + type: string + nullable: true + pay_with_bank: + type: boolean + supports_transfer: + type: boolean + available_for_direct_debit: + type: boolean + active: + type: boolean + is_deleted: + type: boolean + nullable: true + country: + type: string + currency: + type: string + type: + type: string + id: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - name + - slug + - code + - longcode + - gateway + - pay_with_bank + - supports_transfer + - available_for_direct_debit + - active + - is_deleted + - country + - currency + - type + - id + - createdAt + - updatedAt + MiscellaneousListBanksResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/MiscellaneousListBanksResponseArray" + required: + - status + - message + - data + VerificationResolveAccountNumberResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + account_number: + type: string + account_name: + type: string + bank_id: + type: integer + required: + - account_number + - account_name + - bank_id + required: + - status + - message + - data + BankValidateRequest: + type: object + required: + - account_name + - account_number + - account_type + - bank_code + - country_code + - document_type + properties: + account_name: + description: Customer's first and last name registered with their bank + type: string + account_number: + description: Customer's account number + type: string + account_type: + description: The type of the customer's account number + type: string + enum: + - personal + - business + bank_code: + description: + The bank code of the customer’s bank. You can fetch the bank codes + by using our List Banks endpoint + type: string + country_code: + description: The two digit ISO code of the customer’s bank + type: string + document_type: + description: Customer’s mode of identity + type: string + enum: + - identityNumber + - passportNumber + - businessRegistrationNumber + document_number: + description: Customer’s mode of identity number + type: string + VerificationValidateAccountResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + verified: + type: boolean + verificationMessage: + type: string + accountAcceptsDebits: + type: boolean + accountAcceptsCredits: + type: boolean + accountOpenForMoreThanThreeMonths: + type: boolean + accountHolderMatch: + type: boolean + accountOpen: + type: boolean + required: + - verified + - verificationMessage + - accountAcceptsDebits + - accountAcceptsCredits + - accountOpenForMoreThanThreeMonths + - accountHolderMatch + - accountOpen + required: + - status + - message + - data + VerificationResolveCardBINResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + bin: + type: string + brand: + type: string + sub_brand: + type: string + country_code: + type: string + country_name: + type: string + card_type: + type: string + bank: + type: string + currency: + type: string + linked_bank_id: + type: integer + required: + - bin + - brand + - sub_brand + - country_code + - country_name + - card_type + - bank + - currency + - linked_bank_id + required: + - status + - message + - data + MiscellaneousListCountriesResponseArray: + type: object + properties: + id: + type: integer + active_for_dashboard_onboarding: + type: boolean + name: + type: string + iso_code: + type: string + default_currency_code: + type: string + integration_defaults: + type: object + calling_code: + type: string + pilot_mode: + type: boolean + relationships: + type: object + properties: + currency: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + supported_currencies: + type: object + properties: + NGN: + type: object + properties: + bank: + type: object + properties: + bank_type: + type: string + branch_code: + type: boolean + branch_code_type: + type: string + account_name: + type: boolean + account_verification_required: + type: boolean + account_number_label: + type: string + account_number_pattern: + type: object + properties: + exact_match: + type: boolean + pattern: + type: string + required: + - exact_match + - pattern + documents: + type: array + items: {} + show_account_number_tooltip: + type: boolean + required: + - bank_type + - branch_code + - branch_code_type + - account_name + - account_verification_required + - account_number_label + - account_number_pattern + - documents + - show_account_number_tooltip + required: + - bank + USD: + type: object + properties: + bank: + type: object + properties: + bank_type: + type: string + required_fields: + type: array + items: + type: string + branch_code: + type: boolean + branch_code_type: + type: string + account_name: + type: boolean + account_verification_required: + type: boolean + account_number_label: + type: string + account_number_pattern: + type: object + properties: + exact_match: + type: boolean + pattern: + type: string + required: + - exact_match + - pattern + documents: + type: array + items: {} + notices: + type: array + items: + type: string + required: + - bank_type + - required_fields + - branch_code + - branch_code_type + - account_name + - account_verification_required + - account_number_label + - account_number_pattern + - documents + - notices + required: + - bank + required: + - NGN + - USD + required: + - type + - data + - supported_currencies + integration_feature: + type: object + properties: + type: + type: string + data: + type: array + items: {} + required: + - type + - data + integration_type: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + required: + - type + - data + payment_method: + type: object + properties: + type: + type: string + data: + type: array + items: + type: string + required: + - type + - data + required: + - currency + - integration_feature + - integration_type + - payment_method + required: + - id + - active_for_dashboard_onboarding + - name + - iso_code + - default_currency_code + - integration_defaults + - calling_code + - pilot_mode + - relationships + MiscellaneousListCountriesResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/MiscellaneousListCountriesResponseArray" + required: + - status + - message + - data + MiscellaneousListStatesResponseArray: + type: object + properties: + name: + type: string + slug: + type: string + abbreviation: + type: string + required: + - name + - slug + - abbreviation + MiscellaneousListStatesResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/MiscellaneousListStatesResponseArray" + required: + - status + - message + - data + MetadataCustomFieldsArray: + type: object + properties: + value: + type: string + display_name: + type: string + variable_name: + type: string + required: + - value + - display_name + - variable_name + ChargeAuthorizationResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + currency: + type: string + transaction_date: + type: string + status: + type: string + reference: + type: string + domain: + type: string + metadata: + type: string + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + ip_address: + nullable: true + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + properties: + calling_code: + type: string + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + id: + type: integer + required: + - amount + - currency + - transaction_date + - status + - reference + - domain + - metadata + - gateway_response + - message + - channel + - ip_address + - log + - fees + - authorization + - customer + - plan + - id + required: + - status + - message + - data + ChargeMobileMoneyResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transaction: + type: integer + phone: + type: string + provider: + type: string + channel_name: + type: string + display: + type: object + properties: + type: + type: string + message: + type: string + timer: + type: integer + required: + - type + - message + - timer + required: + - transaction + - phone + - provider + - channel_name + - display + required: + - status + - message + - data + ControlPanelFetchPaymentSessionTimeoutResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + payment_session_timeout: + type: integer + required: + - payment_session_timeout + required: + - status + - message + - data + ControlPanelUpdatePaymentSessionTimeoutResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + payment_session_timeout: + type: integer + required: + - payment_session_timeout + required: + - status + - message + - data + InitializeAuthorizationCardResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + authorizationAccessCode: + type: string + action: + type: string + value: + type: string + required: + - authorizationAccessCode + - action + - value + required: + - status + - message + - data + InitializeAuthorizationDirectdebitResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + redirect_url: + type: string + access_code: + type: string + reference: + type: string + required: + - redirect_url + - access_code + - reference + required: + - status + - message + - data + VerifyAuthorizationCardResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: + type: string + advise: + type: string + message: + type: string + authorizationCode: + type: string + customerEmail: + type: string + description: The customer email used to initialize authorization + required: + - status + - advise + - message + - authorizationCode + - customerEmail + required: + - status + - message + - data + VerifyAuthorizationDirectdebitResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + authorization_code: + type: string + domain: + type: string + active: + type: boolean + last4: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + exp_month: + type: integer + exp_year: + type: integer + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + type: string + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + code: + type: string + email: + type: string + description: The customer email used to initialize the authorization + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - code + - email + - phone + - metadata + - risk_action + required: + - authorization_code + - domain + - active + - last4 + - channel + - card_type + - bank + - exp_month + - exp_year + - country_code + - brand + - reusable + - signature + - account_name + - customer + required: + - status + - message + - data + CustomerWhitelistBlacklistResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + identified: + type: boolean + identifications: + nullable: true + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + - identified + - identifications + required: + - status + - message + - data + DedicatedNubanListResponseArray: + type: object + properties: + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + risk_action: + type: string + international_format_phone: + type: string + nullable: true + bank: + type: object + properties: + name: + type: string + id: + type: integer + slug: + type: string + required: + - name + - id + - slug + id: + type: integer + account_name: + type: string + account_number: + type: string + created_at: + type: string + updated_at: + type: string + currency: + type: string + split_config: + type: object + properties: + subaccount: + type: string + required: + - subaccount + nullable: true + active: + type: boolean + assigned: + type: boolean + required: + - customer + - bank + - id + - account_name + - account_number + - created_at + - updated_at + - currency + - split_config + - active + - assigned + DedicatedNubanListResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/DedicatedNubanListResponseArray" + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - message + - data + - meta + EftDebitOrderCreateMandateResponse: + type: object + properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at + required: + - status + - type + - code + - message + - data + EftDebitOrderFetchMandateResponse: + type: object + properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at + required: + - status + - type + - code + - message + - data + EftDebitOrderListMandateResponseArray: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at + EftDebitOrderListMandateResponse: + type: object + properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/EftDebitOrderListMandateResponseArray" + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - type + - code + - message + - data + - meta + EftDebitOrderLogMandateResponseArray: + type: object + properties: + id: + type: integer + action: + type: string + performed_by: + nullable: true + ip_address: + type: string + domain: + type: string + integration: + type: integer + object: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at + delta: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - action + - performed_by + - ip_address + - domain + - integration + - object + - delta + - created_at + - updated_at + EftDebitOrderLogMandateResponse: + type: object + properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/EftDebitOrderLogMandateResponseArray" + meta: + type: object + properties: + total: + type: integer + skipped: + type: integer + perPage: + type: integer + page: + type: integer + pageCount: + type: integer + required: + - total + - skipped + - perPage + - page + - pageCount + additionalProperties: false + required: + - status + - type + - code + - message + - data + - meta + EftDebitOrderUpdateMandateResponse: + type: object + properties: + status: + type: boolean + type: + type: string + code: + type: string + message: + type: string + data: + type: object + properties: + id: + type: integer + mandate_code: + type: string + domain: + type: string + customer_id: + type: integer + customer_email: + type: string + account_bank_name: + type: string + account_bank_code: + type: string + account_holder_name: + type: string + account_number: + type: string + account_type: + type: string + currency: + type: string + amount: + type: integer + entry_class: + type: string + frequency: + type: string + collection_day: + type: integer + contract_type: + type: string + contract_reference: + type: string + status: + type: string + created_at: + type: string + updated_at: + type: string + required: + - id + - mandate_code + - domain + - customer_id + - customer_email + - account_bank_name + - account_bank_code + - account_holder_name + - account_number + - account_type + - currency + - amount + - entry_class + - frequency + - collection_day + - contract_type + - contract_reference + - status + - created_at + - updated_at + required: + - status + - type + - code + - message + - data + PaymentRequestViewResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + transactions: + type: array + items: {} + domain: + type: string + request_code: + type: string + description: + nullable: true + line_items: + type: array + items: {} + tax: + type: array + items: {} + amount: + type: integer + discount: + nullable: true + currency: + type: string + due_date: + type: string + nullable: true + status: + type: string + paid: + type: boolean + paid_at: + nullable: true + metadata: + nullable: true + has_invoice: + type: boolean + invoice_number: + type: integer + nullable: true + offline_reference: + type: string + pdf_url: + type: string + nullable: true + notifications: + type: array + items: + $ref: "#/components/schemas/PaymentRequestNotificationsArray" + archived: + type: boolean + source: + type: string + payment_method: + nullable: true + note: + nullable: true + amount_paid: + nullable: true + split_code: + nullable: true + id: + type: integer + integration: + type: integer + customer: + type: object + properties: + transactions: + type: array + items: {} + subscriptions: + type: array + items: {} + authorizations: + type: array + items: {} + first_name: + type: string + last_name: + type: string + email: + type: string + phone: + type: string + metadata: + type: object + properties: + calling_code: + type: string + domain: + type: string + customer_code: + type: string + risk_action: + type: string + id: + type: integer + integration: + type: integer + createdAt: + type: string + updatedAt: + type: string + required: + - transactions + - subscriptions + - authorizations + - first_name + - last_name + - email + - phone + - metadata + - domain + - customer_code + - risk_action + - id + - integration + - createdAt + - updatedAt + createdAt: + type: string + updatedAt: + type: string + pending_amount: + type: integer + required: + - transactions + - domain + - request_code + - description + - line_items + - tax + - amount + - discount + - currency + - due_date + - status + - paid + - paid_at + - metadata + - has_invoice + - invoice_number + - offline_reference + - pdf_url + - notifications + - archived + - source + - payment_method + - note + - amount_paid + - split_code + - id + - integration + - customer + - createdAt + - updatedAt + - pending_amount + required: + - status + - message + - data + MiscellaneousListProvidersResponseArray: + type: object + properties: + id: + type: integer + name: + type: string + slug: + type: string + code: + type: string + longcode: + type: string + gateway: + nullable: true + pay_with_bank: + type: boolean + supports_transfer: + type: boolean + available_for_direct_debit: + type: boolean + active: + type: boolean + country: + type: string + currency: + type: string + type: + type: string + is_deleted: + type: boolean + createdAt: + type: string + updatedAt: + type: string + required: + - id + - name + - slug + - code + - longcode + - gateway + - pay_with_bank + - supports_transfer + - available_for_direct_debit + - active + - country + - currency + - type + - is_deleted + - createdAt + - updatedAt + MiscellaneousListProvidersResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: array + items: + $ref: "#/components/schemas/MiscellaneousListProvidersResponseArray" + required: + - status + - message + - data + OrderCancelResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + OrderDeliverResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + OrderRefundResponse: + type: object + properties: + status: + type: boolean + message: + type: string + required: + - status + - message + PaymentChannelCreateBankChargeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + display_text: + type: string + required: + - reference + - status + - display_text + required: + - status + - message + - data + PaymentChannelCreateDirectDebitChargeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + amount: + type: integer + message: + type: string + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + type: string + nullable: true + receiver_bank: + type: string + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true + split: + type: object + order_id: + type: string + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + type: string + nullable: true + fees_breakdown: + type: string + nullable: true + connect: + type: string + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount + required: + - status + - message + - data + PaymentChannelCreateEFTChargeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + url: + type: string + required: + - reference + - status + - url + required: + - status + - message + - data + PaymentChannelCreateMobileMoneyChargeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + type: object + properties: + custom_fields: + type: array + items: + $ref: "#/components/schemas/MetadataCustomFieldsArray" + required: + - custom_fields + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + fees_split: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + nullable: true + account_name: + nullable: true + mobile_money_number: + type: string + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + - mobile_money_number + - receiver_bank_account_number + - receiver_bank + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + type: string + createdAt: + type: string + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + type: object + nullable: true + transaction_date: + type: string + plan_object: + type: object + subaccount: + type: object + required: + - id + - domain + - status + - reference + - receipt_number + - amount + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount required: - status - message - data - TransferFeesBreakdownArray: - type: object - properties: - amount: - type: string - formula: - nullable: true - type: - type: string - required: - - amount - - formula - - type - TransferFetchResponse: + PaymentChannelCreatePayWithTransferChargeResponse: type: object properties: status: @@ -12172,158 +17579,44 @@ components: data: type: object properties: - amount: - type: integer - createdAt: - type: string - currency: - type: string - domain: + status: type: string - failures: - nullable: true - id: - type: integer - integration: - type: integer - reason: + display_text: type: string reference: type: string - source: - type: string - source_details: - nullable: true - status: - type: string - titan_code: - nullable: true - transfer_code: + account_name: type: string - request: - type: integer - transferred_at: - nullable: true - updatedAt: + account_number: type: string - recipient: + bank: type: object properties: - active: - type: boolean - createdAt: - type: string - currency: - type: string - description: - type: string - domain: + slug: type: string - email: + name: type: string id: type: integer - integration: - type: integer - metadata: - nullable: true - name: - type: string - recipient_code: - type: string - type: - type: string - updatedAt: - type: string - is_deleted: - type: boolean - isDeleted: - type: boolean - details: - type: object - properties: - authorization_code: - nullable: true - account_number: - type: string - account_name: - type: string - nullable: true - bank_code: - type: string - bank_name: - type: string - required: - - authorization_code - - account_number - - account_name - - bank_code - - bank_name required: - - active - - createdAt - - currency - - description - - domain - - email - - id - - integration - - metadata + - slug - name - - recipient_code - - type - - updatedAt - - is_deleted - - isDeleted - - details - session: - type: object - properties: - provider: - nullable: true - id: - nullable: true - required: - - provider - id - fee_charged: - type: integer - fees_breakdown: - type: array - items: - $ref: '#/components/schemas/TransferFeesBreakdownArray' - nullable: true - gateway_response: + account_expires_at: type: string - nullable: true required: - - amount - - createdAt - - currency - - domain - - failures - - id - - integration - - reason - - reference - - source - - source_details - status - - titan_code - - transfer_code - - request - - transferred_at - - updatedAt - - recipient - - session - - fee_charged - - fees_breakdown - - gateway_response + - display_text + - reference + - account_name + - account_number + - bank + - account_expires_at required: - status - message - data - TransferVerifyResponse: + PaymentChannelCreateQRChargeResponse: type: object properties: status: @@ -12333,264 +17626,413 @@ components: data: type: object properties: - amount: - type: integer - createdAt: + reference: type: string - currency: + status: type: string - domain: + qr_code: type: string - failures: - nullable: true - id: - type: integer - integration: - type: integer - reason: + url: + type: string + message: type: string + required: + - reference + - status + required: + - status + - message + - data + PaymentChannelCreateUSSDChargeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: reference: type: string - source: + status: type: string - source_details: - nullable: true + display_text: + type: string + ussd_code: + type: string + required: + - reference + - status + - display_text + - ussd_code + required: + - status + - message + - data + FormulaSubaccountsArray: + type: object + properties: + original_share: + type: number + fees: + type: integer + share: + type: integer + subaccount_code: + type: string + id: + type: integer + name: + type: string + integration: + type: string + required: + - original_share + - fees + - share + - subaccount_code + - id + - name + - integration + ShareSubaccountsArray: + type: object + properties: + amount: + type: integer + original_share: + type: number + fees: + type: integer + subaccount_code: + type: string + id: + type: integer + integration: + type: string + required: + - amount + - original_share + - fees + - subaccount_code + - id + - integration + PreAuthorizationCaptureResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer status: type: string - titan_code: - nullable: true - transfer_code: - type: string - transferred_at: - nullable: true - updatedAt: + gateway_response: type: string - recipient: + transaction: type: object properties: - active: - type: boolean - createdAt: - type: string currency: type: string - description: + transaction_date: type: string - domain: + status: type: string - email: + reference: type: string - id: - type: integer - integration: - type: integer - metadata: - nullable: true - name: + domain: type: string - recipient_code: + metadata: + type: integer + gateway_response: type: string - type: + message: type: string - updatedAt: + nullable: true + channel: type: string - is_deleted: - type: boolean - details: + fees: + type: integer + authorization: type: object properties: authorization_code: - nullable: true - account_number: type: string - account_name: + bin: type: string - bank_code: + last4: type: string - bank_name: + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: type: string + account_name: + type: string + nullable: true required: - authorization_code - - account_number + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature - account_name - - bank_code - - bank_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + id: + type: integer + split: + type: object + properties: + id: + type: integer + name: + type: string + split_code: + type: string + formula: + type: object + properties: + type: + type: string + bearer_type: + type: string + bearer_subaccount: + type: integer + subaccounts: + type: array + items: + $ref: "#/components/schemas/FormulaSubaccountsArray" + integration: + type: integer + required: + - type + - bearer_type + - bearer_subaccount + - subaccounts + - integration + shares: + type: object + properties: + paystack: + type: integer + subaccounts: + type: array + items: + $ref: "#/components/schemas/ShareSubaccountsArray" + integration: + type: number + original_share: + type: integer + fees: + type: number + required: + - paystack + - subaccounts + - integration + - original_share + - fees + required: + - id + - name + - split_code + - formula + - shares required: - - active - - createdAt - currency - - description + - transaction_date + - status + - reference - domain - - email - - id - - integration - metadata - - name - - recipient_code - - type - - updatedAt - - is_deleted - - details - session: + - gateway_response + - message + - channel + - fees + - authorization + - customer + - id + amount_released: + type: integer + split_code: + type: string + nullable: true + split: type: object properties: - provider: - nullable: true - id: - nullable: true + type: + type: string + bearer_type: + type: string + subaccounts: + type: array + items: + $ref: "#/components/schemas/SplitSubaccountsArray" required: - - provider - - id - gateway_response: - type: string + - type + - bearer_type + - subaccounts nullable: true required: - amount - - createdAt - - currency - - domain - - failures - - id - - integration - - reason - - reference - - source - - source_details - status - - titan_code - - transfer_code - - transferred_at - - updatedAt - - recipient - - session - gateway_response + - transaction + - split_code + - split required: - status - message - data - TransferResendOTP: - type: object - required: - - transfer_code - - reason - properties: - transfer_code: - description: The transfer code that requires an OTP validation - type: string - reason: - description: Either resend_otp or transfer - type: string - TransferResendsOtpResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - TransferDisablesOtpResponse: + PreAuthorizationInitializeResponse: type: object properties: status: type: boolean message: type: string + data: + type: object + properties: + authorization_url: + type: string + access_code: + type: string + reference: + type: string + required: + - authorization_url + - access_code + - reference required: - status - message - TransferFinalizeDisableOTP: - type: object - required: - - otp - properties: - otp: - description: OTP sent to business phone to verify disabling OTP requirement - type: string - TransferFinalizeDisablesOtpResponse: + - data + PreAuthorizationListResponseArray: type: object properties: - status: - type: boolean - message: + domain: type: string - required: - - status - - message - TransferEnablesOtpResponse: - type: object - properties: status: - type: boolean - message: type: string - required: - - status - - message - BalanceCheckResponseArray: - type: object - properties: - currency: + reference: type: string - balance: + amount: type: integer - required: - - currency - - balance - BalanceCheckResponse: - type: object - properties: - status: - type: boolean - message: + created_at: type: string - data: - type: array - items: - $ref: '#/components/schemas/BalanceCheckResponseArray' - required: - - status - - message - - data - BalanceFetchLedgerResponseArray: - type: object - properties: - integration: - type: integer - domain: + transaction_id: type: string - balance: - type: integer - currency: + nullable: true + captured_at: type: string - difference: - type: integer - reason: + nullable: true + released_at: type: string - model_responsible: + nullable: true + currency: type: string - model_row: + fees: type: integer + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + last_name: + type: string + email: + type: string + customer_code: + type: string + phone: + type: string + metadata: + type: object + risk_action: + type: string + international_format_phone: + type: string + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone id: type: integer - createdAt: - type: string - updatedAt: - type: string required: - - integration - domain - - balance + - status + - reference + - amount + - created_at + - transaction_id + - captured_at + - released_at - currency - - difference - - reason - - model_responsible - - model_row + - fees - id - - createdAt - - updatedAt - BalanceFetchLedgerResponse: + PreAuthorizationListResponse: type: object properties: status: @@ -12600,7 +18042,7 @@ components: data: type: array items: - $ref: '#/components/schemas/BalanceFetchLedgerResponseArray' + $ref: "#/components/schemas/PreAuthorizationListResponseArray" meta: type: object properties: @@ -12626,75 +18068,28 @@ components: - message - data - meta - ChargeCreate: - type: object - required: - - email - - amount - properties: - email: - description: Customer's email address - type: string - amount: - description: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR - type: string - authorization_code: - description: An authorization code to charge. - type: string - pin: - description: 4-digit PIN (send with a non-reusable authorization code) - type: string - reference: - description: Unique transaction reference. Only -, .`, = and alphanumeric characters allowed. - type: string - birthday: - description: The customer's birthday in the format YYYY-MM-DD e.g 2017-05-16 - type: string - format: date-time - device_id: - description: |- - This is the unique identifier of the device a user uses in making payment. - Only -, .`, = and alphanumeric characters are allowed. - type: string - metadata: - description: Stringified JSON object of custom data - type: string - Bank: - type: object - properties: - code: - description: Customer's bank code - type: string - account_number: - description: Customer's account number - type: string - MobileMoney: - type: object - properties: - phone: - description: Customer's phone number - type: string - provider: - description: The telco provider of customer's phone number. This can be fetched from the List Bank endpoint - type: string - USSD: - type: object - properties: - type: - description: The three-digit USSD code. - type: string - enum: - - 737 - - 919 - - 822 - - 966 - EFT: + PreAuthorizationReleaseResponse: type: object properties: - provider: - description: The EFT provider + status: + type: boolean + message: type: string - ChargeCreateResponse: + data: + type: object + properties: + status: + type: string + reference: + type: string + required: + - status + - reference + required: + - status + - message + - data + PreAuthorizationReserveWithAuthCodeResponse: type: object properties: status: @@ -12712,40 +18107,28 @@ components: type: string reference: type: string - receipt_number: - nullable: true amount: type: integer message: type: string - nullable: true - gateway_response: + created_at: type: string - paid_at: + released_at: type: string - created_at: + nullable: true + authorized_at: type: string - channel: + nullable: true + expiry_date: type: string + nullable: true currency: type: string - ip_address: - type: string metadata: type: object - properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' - required: - - custom_fields - log: nullable: true fees: type: integer - fees_split: - nullable: true authorization: type: object properties: @@ -12774,10 +18157,7 @@ components: signature: type: string account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: + type: string nullable: true required: - authorization_code @@ -12793,8 +18173,6 @@ components: - reusable - signature - account_name - - receiver_bank_account_number - - receiver_bank customer: type: object properties: @@ -12826,82 +18204,106 @@ components: - metadata - risk_action - international_format_phone - plan: - nullable: true - split: - type: object - order_id: - nullable: true - paidAt: + merchant_id: + type: integer + merchant_name: type: string - createdAt: + expire_action: type: string - requested_amount: - type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true - transaction_date: + split_code: type: string - plan_object: - type: object - subaccount: + nullable: true + split: type: object + nullable: true required: - id - domain - status - reference - - receipt_number - amount - message - - gateway_response - - paid_at - created_at - - channel + - released_at + - authorized_at + - expiry_date - currency - - ip_address - metadata - - log - fees - - fees_split - authorization - customer - - plan + - merchant_id + - merchant_name + - expire_action - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount + - split_code + required: + - status + - message + - data + PreAuthorizationReserveWithSelfCheckoutResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + reference: + type: string + status: + type: string + message: + type: string + required: + - reference + - status + - message + required: + - status + - message + - data + PreAuthorizationVerifyResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + type: string + currency: + type: string + redirecturl: + type: string + required: + - id + - domain + - status + - reference + - amount + - message + - currency required: - status - message - data - ChargeSubmitPin: - type: object - required: - - pin - - reference - properties: - pin: - description: Customer's PIN - type: string - reference: - description: Transaction reference that requires the PIN - type: string - ChargeSubmitPinResponse: + PreAuthorizationViewResponse: type: object properties: status: @@ -12919,88 +18321,31 @@ components: type: string reference: type: string - receipt_number: - nullable: true amount: type: integer message: - nullable: true - gateway_response: - type: string - paid_at: type: string created_at: type: string - channel: + released_at: type: string - currency: + nullable: true + authorized_at: type: string - ip_address: + nullable: true + expiry_date: + type: string + nullable: true + currency: type: string + nullable: true metadata: - type: object - properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' - required: - - custom_fields - log: + type: string nullable: true fees: type: integer - fees_split: - nullable: true authorization: type: object - properties: - authorization_code: - type: string - bin: - type: string - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: boolean - signature: - type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - - account_name - - receiver_bank_account_number - - receiver_bank customer: type: object properties: @@ -13032,82 +18377,274 @@ components: - metadata - risk_action - international_format_phone - plan: + merchant_id: + type: integer + merchant_name: + type: string + expire_action: + type: string + split_code: + type: string nullable: true split: type: object - order_id: nullable: true - paidAt: + required: + - id + - domain + - status + - reference + - amount + - message + - created_at + - released_at + - authorized_at + - expiry_date + - currency + - metadata + - fees + - authorization + - customer + - merchant_id + - merchant_name + - expire_action + - split + - split_code + required: + - status + - message + - data + StorefrontDuplicateResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + social_media: + type: array + items: {} + contacts: + type: array + items: + $ref: "#/components/schemas/StorefrontContactsArray" + name: + type: string + slug: + type: string + currency: + type: string + welcome_message: + nullable: true + success_message: + nullable: true + redirect_url: + nullable: true + description: + nullable: true + delivery_note: + type: string + background_color: + type: string + status: type: string + shippable: + type: boolean + integration: + type: integer + domain: + type: string + digital_product_expiry: + nullable: true + metadata: + type: object + nullable: true + id: + type: integer createdAt: type: string - requested_amount: + updatedAt: + type: string + products: + type: array + items: {} + shipping_fees: + type: array + items: {} + required: + - social_media + - contacts + - name + - slug + - currency + - welcome_message + - success_message + - redirect_url + - description + - delivery_note + - background_color + - status + - shippable + - integration + - domain + - digital_product_expiry + - id + - createdAt + - updatedAt + - products + - shipping_fees + required: + - status + - message + - data + StorefrontProductResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + name: + type: string + description: + type: string + currency: + type: string + price: + type: integer + quantity: + type: integer + is_shippable: + type: boolean + unlimited: + type: boolean + files: + type: array + items: {} + shipping_fields: + type: object + properties: + delivery_note: + type: string + shipping_address: + type: string + shipping_fees: + type: array + items: {} + required: + - delivery_note + - shipping_address + - shipping_fees + integration: + type: integer + domain: + type: string + metadata: + type: object + properties: + background_color: + type: string + required: + - background_color + slug: + type: string + product_code: + type: string + quantity_sold: + type: integer + type: + type: string + active: + type: boolean + in_stock: + type: boolean + minimum_orderable: type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: + maximum_orderable: nullable: true - transaction_date: + low_stock_alert: + type: boolean + id: + type: integer + createdAt: + type: string + updatedAt: type: string - plan_object: - type: object - subaccount: - type: object required: - - id - - domain - - status - - reference - - receipt_number - - amount - - message - - gateway_response - - paid_at - - created_at - - channel + - name + - description - currency - - ip_address + - price + - quantity + - is_shippable + - unlimited + - files + - shipping_fields + - integration + - domain - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - split - - order_id - - paidAt + - slug + - product_code + - quantity_sold + - type + - active + - in_stock + - minimum_orderable + - maximum_orderable + - low_stock_alert + - id - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount + - updatedAt required: - status - message - data - ChargeSubmitOTP: + StorefrontShippingResponse: type: object - required: - - otp - - reference properties: - otp: - description: Customer's OTP - type: string - reference: - description: The reference of the ongoing transaction + status: + type: boolean + message: type: string - ChargeSubmitOtpResponse: + data: + type: object + properties: + fee: + type: integer + name: + type: string + currency: + type: string + id: + type: integer + isDeleted: + type: boolean + createdAt: + type: string + updatedAt: + type: string + storefront: + type: integer + required: + - fee + - name + - currency + - id + - isDeleted + - createdAt + - updatedAt + - storefront + required: + - status + - message + - data + TerminalCountsResponse: type: object properties: status: @@ -13117,79 +18654,89 @@ components: data: type: object properties: - id: + count: type: integer - domain: - type: string status: type: string - reference: + required: + - count + - status + required: + - status + - message + - data + ChargeResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + status: type: string - receipt_number: - nullable: true amount: type: integer - message: - nullable: true - gateway_response: - type: string - paid_at: + currency: type: string - created_at: + transaction_date: type: string - channel: + reference: type: string - currency: + domain: type: string - ip_address: + redirect_url: type: string + nullable: true metadata: type: object - properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' - required: - - custom_fields - log: + gateway_response: + type: string + message: + type: string nullable: true + channel: + type: string fees: type: integer - fees_split: nullable: true authorization: type: object properties: authorization_code: type: string + nullable: true bin: type: string + nullable: true last4: type: string + nullable: true exp_month: type: string exp_year: type: string channel: type: string + nullable: true card_type: type: string + nullable: true bank: type: string + nullable: true country_code: type: string + nullable: true brand: type: string + nullable: true reusable: type: boolean signature: type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: nullable: true required: - authorization_code @@ -13204,116 +18751,53 @@ components: - brand - reusable - signature - - account_name - - receiver_bank_account_number - - receiver_bank customer: type: object properties: - id: - type: integer first_name: type: string + nullable: true last_name: type: string + nullable: true email: type: string customer_code: type: string phone: type: string - metadata: - type: object + nullable: true risk_action: type: string - international_format_phone: - type: string required: - - id - first_name - last_name - email - customer_code - phone - - metadata - risk_action - - international_format_phone - plan: - nullable: true - split: - type: object - order_id: - nullable: true - paidAt: - type: string - createdAt: - type: string - requested_amount: - type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true - transaction_date: + url: type: string - plan_object: - type: object - subaccount: - type: object required: - - id - - domain - status - - reference - - receipt_number - amount - - message - - gateway_response - - paid_at - - created_at - - channel - currency - - ip_address + - transaction_date + - reference + - domain + - redirect_url - metadata - - log + - gateway_response + - message + - channel - fees - - fees_split - authorization - - customer - - plan - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount + - customer required: - status - message - data - ChargeSubmitPhone: - type: object - required: - - phone - - reference - properties: - phone: - description: Customer's mobile number - type: string - reference: - description: The reference of the ongoing transaction - type: string - ChargeSubmitPhoneResponse: + TransactionCheckAuthorizationResponse: type: object properties: status: @@ -13323,33 +18807,18 @@ components: data: type: object properties: - reference: - type: string - status: - type: string - display_text: + amount: + type: integer + currency: type: string required: - - reference - - status - - display_text + - amount + - currency required: - status - message - data - ChargeSubmitBirthday: - type: object - required: - - birthday - - reference - properties: - birthday: - description: Customer's birthday in the format YYYY-MM-DD e.g 2016-09-21 - type: string - reference: - description: The reference of the ongoing transaction - type: string - ChargeSubmitBirthdayResponse: + TransactionExportResponse: type: object properties: status: @@ -13359,42 +18828,18 @@ components: data: type: object properties: - status: + path: type: string - display_text: + expiresAt: type: string required: - - status - - display_text + - path + - expiresAt required: - status - message - data - ChargeSubmitAddress: - type: object - required: - - address - - reference - - city - - state - - zipcode - properties: - address: - description: Customer's address - type: string - city: - description: Customer's city - type: string - state: - description: Customer's state - type: string - zipcode: - description: Customer's zipcode - type: string - reference: - description: The reference of the ongoing transaction - type: string - ChargeCheckPendingResponse: + TransactionFetchResponse: type: object properties: status: @@ -13413,15 +18858,15 @@ components: reference: type: string receipt_number: - type: string nullable: true amount: type: integer message: - type: string nullable: true gateway_response: type: string + helpdesk_link: + nullable: true paid_at: type: string created_at: @@ -13438,15 +18883,56 @@ components: custom_fields: type: array items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' + $ref: "#/components/schemas/MetadataCustomFieldsArray" required: - custom_fields log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer - nullable: true fees_split: + type: integer nullable: true authorization: type: object @@ -13455,7 +18941,6 @@ components: type: string bin: type: string - nullable: true last4: type: string exp_month: @@ -13505,25 +18990,20 @@ components: type: integer first_name: type: string - nullable: true last_name: type: string - nullable: true email: type: string customer_code: type: string phone: type: string - nullable: true metadata: type: object - nullable: true risk_action: type: string international_format_phone: type: string - nullable: true required: - id - first_name @@ -13535,7 +19015,9 @@ components: - risk_action - international_format_phone plan: - nullable: true + type: object + subaccount: + type: object split: type: object order_id: @@ -13549,17 +19031,22 @@ components: pos_transaction_data: nullable: true source: - nullable: true + type: object + properties: + type: + type: string + source: + type: string + identifier: + nullable: true + required: + - type + - source + - identifier fees_breakdown: nullable: true connect: nullable: true - transaction_date: - type: string - plan_object: - type: object - subaccount: - type: object required: - id - domain @@ -13569,6 +19056,7 @@ components: - amount - message - gateway_response + - helpdesk_link - paid_at - created_at - channel @@ -13581,149 +19069,21 @@ components: - authorization - customer - plan + - subaccount - split - order_id - paidAt - createdAt - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount - required: - - status - - message - - data - BulkChargeListResponseArray: - type: object - properties: - integration: - type: integer - domain: - type: string - batch_code: - type: string - status: - type: string - easy_cron_id: - nullable: true - reference: - type: string - id: - type: integer - createdAt: - type: string - updatedAt: - type: string - required: - - integration - - domain - - batch_code - - status - - easy_cron_id - - reference - - id - - createdAt - - updatedAt - BulkChargeListResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: array - items: - $ref: '#/components/schemas/BulkChargeListResponseArray' - meta: - type: object - properties: - total: - type: integer - skipped: - type: integer - perPage: - anyOf: - - type: integer - - type: string - page: - type: integer - pageCount: - type: integer - required: - - total - - skipped - - perPage - - page - - pageCount - additionalProperties: false - required: - - status - - message - - data - - meta - BulkChargeInitiate: - type: object - required: - - authorization - - amount - properties: - authorization: - description: Customer's card authorization code - type: string - amount: - description: Amount to charge on the authorization - type: string - BulkChargeInitiateResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - batch_code: - type: string - reference: - type: string - id: - type: integer - integration: - type: integer - domain: - type: string - status: - type: string - total_charges: - type: integer - pending_charges: - type: integer - createdAt: - type: string - updatedAt: - type: string - required: - - batch_code - - reference - - id - - integration - - domain - - status - - total_charges - - pending_charges - - createdAt - - updatedAt + - pos_transaction_data + - source + - fees_breakdown + - connect required: - status - message - data - BulkChargeFetchResponse: + TransactionInitializeResponse: type: object properties: status: @@ -13733,48 +19093,101 @@ components: data: type: object properties: - batch_code: - type: string - reference: - type: string - id: - type: integer - integration: - type: integer - domain: - type: string - status: + authorization_url: type: string - total_charges: - type: integer - pending_charges: - type: integer - createdAt: + access_code: type: string - updatedAt: + reference: type: string required: - - batch_code + - authorization_url + - access_code - reference - - id - - integration - - domain - - status - - total_charges - - pending_charges - - createdAt - - updatedAt required: - status - message - data - BulkChargeFetchBulkBatchChargesResponseArray: + TransactionListResponseArray: type: object properties: - integration: + id: type: integer - bulkcharge: + domain: + type: string + status: + type: string + reference: + type: string + amount: + type: integer + message: + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + nullable: true + metadata: + type: object + nullable: true + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + fees_split: type: integer + nullable: true customer: type: object properties: @@ -13782,61 +19195,71 @@ components: type: integer first_name: type: string + nullable: true last_name: type: string + nullable: true email: type: string - customer_code: - type: string phone: type: string + nullable: true metadata: type: object - properties: - calling_code: - type: string - risk_action: + nullable: true + customer_code: type: string - international_format_phone: + risk_action: type: string required: - id - first_name - last_name - email - - customer_code - phone - metadata + - customer_code - risk_action - - international_format_phone authorization: type: object properties: authorization_code: type: string + nullable: true bin: type: string + nullable: true last4: type: string + nullable: true exp_month: type: string + nullable: true exp_year: type: string + nullable: true channel: type: string + nullable: true card_type: type: string + nullable: true bank: type: string + nullable: true country_code: type: string + nullable: true brand: type: string + nullable: true reusable: type: boolean signature: type: string + nullable: true account_name: + type: string nullable: true required: - authorization_code @@ -13852,55 +19275,72 @@ components: - reusable - signature - account_name - domain: - type: string - amount: - type: integer - at_least: - type: integer - currency: + plan: + type: object + split: + type: object + subaccount: + type: object + order_id: + nullable: true + paidAt: type: string - reference: + createdAt: type: string - metadata: + requested_amount: + type: integer + source: type: object properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' + source: + type: string + type: + type: string + identifier: + nullable: true + entry_point: + type: string required: - - custom_fields - status: - type: string - message: - type: string - attempt_partial_debit: - type: boolean - id: - type: integer - createdAt: - type: string - updatedAt: - type: string + - source + - type + - identifier + - entry_point + nullable: true + connect: + type: object + nullable: true + pos_transaction_data: + nullable: true required: - - integration - - bulkcharge - - customer - - authorization + - id - domain + - status + - reference - amount - - at_least + - message + - gateway_response + - paid_at + - created_at + - channel - currency - - reference + - ip_address - metadata - - status - - message - - attempt_partial_debit - - id + - log + - fees + - fees_split + - customer + - authorization + - plan + - split + - subaccount + - order_id + - paidAt - createdAt - - updatedAt - BulkChargeFetchBulkBatchChargesResponse: + - requested_amount + - source + - connect + - pos_transaction_data + TransactionListResponse: type: object properties: status: @@ -13910,174 +19350,256 @@ components: data: type: array items: - $ref: '#/components/schemas/BulkChargeFetchBulkBatchChargesResponseArray' + $ref: "#/components/schemas/TransactionListResponseArray" meta: type: object properties: - perPage: - type: string total: type: integer + total_volume: + type: number skipped: type: integer + perPage: + anyOf: + - type: string + - type: integer page: type: integer pageCount: type: integer required: - - perPage - total + - total_volume - skipped + - perPage - page - pageCount additionalProperties: false required: - - status - - message - - data - - meta - BulkChargePauseResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - BulkChargeResumeResponse: - type: object - properties: - status: - type: boolean - message: - type: string - required: - - status - - message - PaymentSession: - type: object - required: - - timeout - properties: - timeout: - description: Time in seconds before a transaction becomes invalid - type: string - example: '30' - RefundListResponseArray: + - status + - message + - data + - meta + TransactionPartialDebitResponse: type: object properties: - integration: - type: integer - transaction: - type: integer - dispute: - nullable: true - settlement: - nullable: true - id: - type: integer - domain: - type: string - currency: - type: string - amount: - type: integer status: + type: boolean + message: type: string - refunded_at: - nullable: true - refunded_by: - type: string - customer_note: - type: string - merchant_note: - type: string - deducted_amount: - type: integer - fully_deducted: - type: integer - createdAt: - type: string - bank_reference: - nullable: true - transaction_reference: - type: string - reason: - type: string - customer: + data: type: object properties: - id: + amount: type: integer - first_name: + currency: type: string - last_name: + transaction_date: type: string - email: + status: type: string - customer_code: + reference: type: string - phone: + domain: type: string - nullable: true metadata: type: string - risk_action: + gateway_response: type: string - international_format_phone: + message: + nullable: true + channel: type: string + ip_address: + nullable: true + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + authorization: + type: object + properties: + authorization_code: + type: string + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + - account_name + customer: + type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + type: object + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: integer + requested_amount: + type: integer + id: + type: integer required: - - id - - first_name - - last_name - - email - - customer_code - - phone + - amount + - currency + - transaction_date + - status + - reference + - domain + - gateway_response + - message + - channel + - ip_address + - log + - fees + - authorization + - customer - metadata - - risk_action - - international_format_phone - refund_type: - type: string - transaction_amount: - type: integer - initiated_by: - type: string - refund_channel: - type: string - session_id: - nullable: true - collect_account_number: + - plan + - requested_amount + - id + required: + - status + - message + - data + TransactionTimelineResponse: + type: object + properties: + status: type: boolean + message: + type: string + data: + type: object required: - - integration - - transaction - - dispute - - settlement - - id - - domain - - currency - - amount - status - - refunded_at - - refunded_by - - customer_note - - merchant_note - - deducted_amount - - fully_deducted - - createdAt - - bank_reference - - transaction_reference - - reason - - customer - - refund_type - - transaction_amount - - initiated_by - - refund_channel - - session_id - - collect_account_number - RefundListResponse: + - message + - data + TransactionTotalVolumeByCurrencyArray: + type: object + properties: + currency: + type: string + amount: + type: integer + required: + - currency + - amount + TransactionPendingTransfersByCurrencyArray: + type: object + properties: + currency: + type: string + amount: + type: integer + required: + - currency + - amount + TransactionTotalsResponse: type: object properties: status: @@ -14085,60 +19607,33 @@ components: message: type: string data: - type: array - items: - $ref: '#/components/schemas/RefundListResponseArray' - meta: type: object properties: - total: - type: integer - skipped: - type: integer - perPage: - type: string - page: + total_transactions: type: integer - pageCount: + total_volume: type: integer - failedRefundCount: + total_volume_by_currency: + type: array + items: + $ref: "#/components/schemas/TransactionTotalVolumeByCurrencyArray" + pending_transfers: type: integer + pending_transfers_by_currency: + type: array + items: + $ref: "#/components/schemas/TransactionPendingTransfersByCurrencyArray" required: - - total - - skipped - - perPage - - page - - pageCount - - failedRefundCount - additionalProperties: false + - total_transactions + - total_volume + - total_volume_by_currency + - pending_transfers + - pending_transfers_by_currency required: - status - message - data - - meta - RefundCreate: - type: object - required: - - transaction - properties: - transaction: - description: Transaction reference or id - type: string - amount: - description: |- - Amount ( in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR ) to be refunded to the customer. - Amount cannot be more than the original transaction amount - type: integer - currency: - description: Three-letter ISO currency. Allowed values are NGN, GHS, ZAR or USD - type: string - customer_note: - description: Customer reason - type: string - merchant_note: - description: Merchant reason - type: string - RefundCreateResponse: + VerifyMultiSplitResponse: type: object properties: status: @@ -14148,135 +19643,283 @@ components: data: type: object properties: - transaction: + id: + type: integer + domain: + type: string + status: + type: string + reference: + type: string + receipt_number: + type: string + nullable: true + amount: + type: integer + message: + type: string + nullable: true + gateway_response: + type: string + paid_at: + type: string + nullable: true + created_at: + type: string + channel: + type: string + currency: + type: string + ip_address: + type: string + metadata: + anyOf: + - type: string + - type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + additionalProperties: false + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + fees: + type: integer + nullable: true + fees_split: + nullable: true + authorization: + type: object + customer: type: object properties: id: type: integer - domain: + first_name: type: string - reference: + nullable: true + last_name: type: string - amount: - type: integer - paid_at: + nullable: true + email: type: string - channel: + customer_code: type: string - currency: + phone: type: string - authorization: - type: object - properties: - exp_month: - nullable: true - exp_year: - nullable: true - account_name: - nullable: true - required: - - exp_month - - exp_year - - account_name - customer: + nullable: true + metadata: + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true + split: + type: object + properties: + id: + type: integer + name: + type: string + split_code: + type: string + formula: type: object properties: - international_format_phone: + type: type: string - nullable: true + bearer_type: + type: string + bearer_subaccount: + type: integer + subaccounts: + type: array + items: + $ref: "#/components/schemas/FormulaSubaccountsArray" + integration: + type: integer required: - - international_format_phone - plan: - type: object - subaccount: + - type + - bearer_type + - bearer_subaccount + - subaccounts + - integration + shares: type: object properties: - currency: - nullable: true + paystack: + type: integer + subaccounts: + type: array + items: + $ref: "#/components/schemas/ShareSubaccountsArray" + integration: + type: integer + original_share: + type: number + fees: + type: integer required: - - currency - split: - type: object - order_id: - nullable: true - paidAt: - type: string - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true + - paystack + - subaccounts + - integration + - original_share + - fees required: - id - - domain - - reference - - amount - - paid_at - - channel - - currency - - authorization - - customer - - plan - - subaccount - - split - - order_id - - paidAt - - pos_transaction_data - - source - - fees_breakdown - integration: - type: integer - deducted_amount: - type: integer - channel: - nullable: true - merchant_note: - type: string - customer_note: - type: string - status: - type: string - refunded_by: - type: string - expected_at: - type: string - currency: - type: string - domain: - type: string - amount: - type: integer - fully_deducted: - type: boolean - id: - type: integer + - name + - split_code + - formula + - shares + order_id: + nullable: true + paidAt: + type: string + nullable: true createdAt: type: string - updatedAt: + requested_amount: + type: integer + pos_transaction_data: + nullable: true + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: type: string + plan_object: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + oneOf: + - allOf: + - minProperties: 0 + - {} + - allOf: + - not: + minProperties: 0 + - required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + additionalProperties: false + subaccount: + type: object required: - - transaction - - integration - - deducted_amount - - channel - - merchant_note - - customer_note - - status - - refunded_by - - expected_at - - currency + - id - domain + - status + - reference + - receipt_number - amount - - fully_deducted - - id + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt - createdAt - - updatedAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount required: - status - message - data - RefundFetchResponse: + VerifySingleSplitResponse: type: object properties: status: @@ -14286,65 +19929,132 @@ components: data: type: object properties: - integration: - type: integer - transaction: - type: integer - dispute: - nullable: true - settlement: - nullable: true id: type: integer domain: type: string - currency: + status: + type: string + reference: type: string + receipt_number: + nullable: true amount: type: integer - status: + message: + nullable: true + gateway_response: type: string - refunded_at: + paid_at: nullable: true - refunded_by: + created_at: type: string - customer_note: + channel: type: string - merchant_note: + currency: type: string - deducted_amount: - type: integer - fully_deducted: - type: integer - createdAt: + ip_address: type: string - bank_reference: + metadata: + anyOf: + - type: string + - type: object + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + additionalProperties: false + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true - transaction_reference: - type: string - reason: - type: string + fees: + nullable: true + fees_split: + type: object + properties: + paystack: + type: integer + integration: + type: number + subaccount: + type: number + params: + type: object + properties: + bearer: + type: string + transaction_charge: + type: string + percentage_charge: + type: string + required: + - bearer + - transaction_charge + - percentage_charge + required: + - paystack + - integration + - subaccount + - params + authorization: + type: object customer: type: object properties: id: type: integer first_name: - type: string + nullable: true last_name: - type: string + nullable: true email: type: string customer_code: type: string phone: - type: string + nullable: true metadata: - type: string + nullable: true risk_action: type: string international_format_phone: - type: string + nullable: true required: - id - first_name @@ -14355,91 +20065,162 @@ components: - metadata - risk_action - international_format_phone - refund_type: - type: string - transaction_amount: - type: integer - initiated_by: + plan: type: string - refund_channel: + nullable: true + split: + type: object + order_id: + nullable: true + paidAt: + nullable: true + createdAt: type: string - session_id: + requested_amount: + type: integer + pos_transaction_data: nullable: true - collect_account_number: - type: boolean + source: + nullable: true + fees_breakdown: + nullable: true + connect: + nullable: true + transaction_date: + type: string + plan_object: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + oneOf: + - allOf: + - minProperties: 0 + - {} + - allOf: + - not: + minProperties: 0 + - required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + additionalProperties: false + subaccount: + type: object + properties: + id: + type: integer + subaccount_code: + type: string + business_name: + type: string + description: + type: string + primary_contact_name: + type: string + primary_contact_email: + type: string + primary_contact_phone: + type: string + metadata: + type: string + percentage_charge: + type: number + settlement_bank: + type: string + bank_id: + type: integer + account_number: + type: string + currency: + type: string + active: + type: boolean + is_verified: + type: boolean + required: + - id + - subaccount_code + - business_name + - description + - primary_contact_name + - primary_contact_email + - primary_contact_phone + - metadata + - percentage_charge + - settlement_bank + - bank_id + - account_number + - currency + - active + - is_verified required: - - integration - - transaction - - dispute - - settlement - id - domain - - currency + - status + - reference + - receipt_number - amount - - status - - refunded_at - - refunded_by - - customer_note - - merchant_note - - deducted_amount - - fully_deducted - - createdAt - - bank_reference - - transaction_reference - - reason + - message + - gateway_response + - paid_at + - created_at + - channel + - currency + - ip_address + - metadata + - log + - fees + - fees_split + - authorization - customer - - refund_type - - transaction_amount - - initiated_by - - refund_channel - - session_id - - collect_account_number + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount required: - status - message - data - DisputeHistoryArray: - type: object - properties: - status: - type: string - by: - type: string - createdAt: - type: string - required: - - status - - by - - createdAt - DisputeMessagesArray: - type: object - properties: - sender: - type: string - body: - type: string - createdAt: - type: string - required: - - sender - - body - - createdAt - DisputeListResponseArray: + VerifyResponse: type: object properties: - id: - type: integer - refund_amount: - type: integer - currency: - type: string status: + type: boolean + message: type: string - resolution: - nullable: true - domain: - type: string - transaction: + data: type: object properties: id: @@ -14450,14 +20231,19 @@ components: type: string reference: type: string + receipt_number: + type: string + nullable: true amount: type: integer message: + type: string nullable: true gateway_response: type: string paid_at: type: string + nullable: true created_at: type: string channel: @@ -14467,36 +20253,140 @@ components: ip_address: type: string metadata: + anyOf: + - type: string + - type: object + log: type: object properties: - custom_fields: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: type: array items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + additionalProperties: false required: - - custom_fields - log: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer + nullable: true fees_split: nullable: true authorization: type: object + properties: + authorization_code: + type: string + bin: + nullable: true + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + account_name: + nullable: true + receiver_bank_account_number: + nullable: true + receiver_bank: + nullable: true customer: - nullable: true - plan: - type: object - subaccount: type: object + properties: + id: + type: integer + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + metadata: + nullable: true + risk_action: + type: string + international_format_phone: + type: string + nullable: true + required: + - id + - first_name + - last_name + - email + - customer_code + - phone + - metadata + - risk_action + - international_format_phone + plan: + type: string + nullable: true split: type: object order_id: nullable: true paidAt: type: string + nullable: true createdAt: type: string + requested_amount: + type: integer pos_transaction_data: nullable: true source: @@ -14505,120 +20395,106 @@ components: nullable: true connect: nullable: true + transaction_date: + type: string + plan_object: + type: object + properties: + id: + type: integer + name: + type: string + plan_code: + type: string + description: + nullable: true + amount: + type: integer + interval: + type: string + send_invoices: + type: boolean + send_sms: + type: boolean + currency: + type: string + oneOf: + - allOf: + - minProperties: 0 + - {} + - allOf: + - not: + minProperties: 0 + - required: + - id + - name + - plan_code + - description + - amount + - interval + - send_invoices + - send_sms + - currency + additionalProperties: false + subaccount: + type: object required: - id - domain - status - reference + - receipt_number - amount - message - gateway_response - paid_at - created_at - channel - - currency - - ip_address - - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - subaccount - - split - - order_id - - paidAt - - createdAt - - pos_transaction_data - - source - - fees_breakdown - - connect - transaction_reference: - nullable: true - category: - type: string - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - last_name: - type: string - email: - type: string - customer_code: - type: string - phone: - type: string - nullable: true - metadata: - type: string - risk_action: - type: string - international_format_phone: - type: string - required: - - id - - first_name - - last_name - - email - - customer_code - - phone + - currency + - ip_address - metadata - - risk_action - - international_format_phone - bin: + - log + - fees + - fees_split + - authorization + - customer + - plan + - split + - order_id + - paidAt + - createdAt + - requested_amount + - pos_transaction_data + - source + - fees_breakdown + - connect + - transaction_date + - plan_object + - subaccount + required: + - status + - message + - data + ChannelOptionMobileMoneyArray: + type: object + properties: + key: type: string - last4: + value: type: string - dueAt: - nullable: true - resolvedAt: - nullable: true - evidence: - nullable: true - attachments: - nullable: true - note: - nullable: true - history: - type: array - items: - $ref: '#/components/schemas/DisputeHistoryArray' - messages: - type: array - items: - $ref: '#/components/schemas/DisputeMessagesArray' - createdAt: + isNew: + type: boolean + phoneNumberRegex: type: string - updatedAt: + phoneNumberPlaceholder: type: string required: - - id - - refund_amount - - currency - - status - - resolution - - domain - - transaction - - transaction_reference - - category - - customer - - bin - - last4 - - dueAt - - resolvedAt - - evidence - - attachments - - note - - history - - messages - - createdAt - - updatedAt - DisputeListResponse: + - key + - value + - isNew + - phoneNumberRegex + - phoneNumberPlaceholder + VerifyAccessCodeGHResponse: type: object properties: status: @@ -14626,35 +20502,221 @@ components: message: type: string data: - type: array - items: - $ref: '#/components/schemas/DisputeListResponseArray' - meta: type: object properties: - total: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: type: integer - skipped: + domain: + type: string + currency: + type: string + id: type: integer - perPage: + channels: + type: array + items: + type: string + label: + type: string + original_amount: type: integer - page: + added_fees: type: integer - pageCount: + merchant_id: type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + mobile_money: + type: array + items: + $ref: "#/components/schemas/ChannelOptionMobileMoneyArray" + required: + - mobile_money + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + elevy_percentage: + type: number + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: + type: string + whitelabel: + type: boolean required: - - total - - skipped - - perPage - - page - - pageCount - additionalProperties: false + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - elevy_percentage + - public_encryption_key + - whitelabel required: - status - message - data - - meta - DisputeFetchResponse: + VerifyAccessCodeKEResponse: type: object properties: status: @@ -14664,135 +20726,84 @@ components: data: type: object properties: - id: - type: integer - refund_amount: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: type: integer + domain: + type: string currency: type: string - status: + id: + type: integer + channels: + type: array + items: + type: string + label: type: string - resolution: + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: nullable: true - domain: + access_code: type: string - transaction: + transaction_status: + type: string + log: type: object properties: - id: - type: integer - domain: - type: string - status: - type: string - reference: - type: string - receipt_number: + start_time: type: integer - nullable: true - amount: - type: integer - message: - nullable: true - gateway_response: - type: string - paid_at: - type: string - created_at: - type: string - channel: - type: string - currency: - type: string - ip_address: - type: string - metadata: - type: object - properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' - required: - - custom_fields - log: - nullable: true - fees: + time_spent: type: integer - fees_split: - nullable: true - authorization: - type: object - properties: - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true - required: - - receiver_bank_account_number - - receiver_bank - customer: - type: object - properties: - international_format_phone: - nullable: true - required: - - international_format_phone - plan: - type: object - subaccount: - type: object - split: - type: object - order_id: - nullable: true - paidAt: - type: string - createdAt: - type: string - requested_amount: + attempts: type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time required: - - id - - domain - - status - - reference - - amount - - message - - gateway_response - - paid_at - - created_at - - channel - - currency - - ip_address - - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - subaccount - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - transaction_reference: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true - category: + custom_filters: type: string customer: type: object @@ -14800,95 +20811,150 @@ components: id: type: integer first_name: - type: string + nullable: true last_name: - type: string + nullable: true email: type: string - customer_code: - type: string phone: - type: string + nullable: true metadata: - type: object - risk_action: + nullable: true + created_at: type: string - international_format_phone: + updated_at: type: string required: - id - first_name - last_name - email - - customer_code - phone - metadata - - risk_action - - international_format_phone - bin: - type: string - last4: + - created_at + - updated_at + reference: type: string - dueAt: - nullable: true - resolvedAt: - nullable: true - evidence: - nullable: true - attachments: - nullable: true - note: + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: nullable: true - history: - type: array - items: - $ref: '#/components/schemas/DisputeHistoryArray' - messages: - type: array - items: - $ref: '#/components/schemas/DisputeMessagesArray' - createdAt: - type: string - updatedAt: + channel_options: + type: object + properties: + mobile_money: + type: array + items: + $ref: "#/components/schemas/ChannelOptionMobileMoneyArray" + required: + - mobile_money + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: type: string + whitelabel: + type: boolean required: - - id - - refund_amount - - currency - - status - - resolution + - email + - merchant_logo + - merchant_name + - amount - domain - - transaction - - transaction_reference - - category + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters - customer - - bin - - last4 - - dueAt - - resolvedAt - - evidence - - attachments - - note - - history - - messages - - createdAt - - updatedAt + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel required: - status - message - data - DisputeUpdate: + VerifyAccessCodeSupportedBanksArray: type: object - required: - - refund_amount properties: - refund_amount: - description: The amount to refund, in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR + id: + type: integer + name: type: string - uploaded_filename: - description: Filename of attachment returned via response from the Dispute upload URL + slug: type: string - DisputeUpdateResponse: + gateway: + type: string + code: + type: string + required: + - id + - name + - slug + - gateway + - code + VerifyAccessCodeNGResponse: type: object properties: status: @@ -14898,135 +20964,84 @@ components: data: type: object properties: - id: - type: integer - refund_amount: - type: integer - currency: + email: type: string - status: + merchant_logo: type: string - resolution: - nullable: true + merchant_name: + type: string + amount: + type: integer domain: type: string - transaction: - type: object - properties: - id: - type: integer - domain: - type: string - status: - type: string - reference: - type: string - receipt_number: - type: integer - nullable: true - amount: - type: integer - message: - nullable: true - gateway_response: - type: string - paid_at: - type: string - created_at: - type: string - channel: - type: string - currency: - type: string - ip_address: - type: string - metadata: - type: object - properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' - required: - - custom_fields - log: - nullable: true - fees: + currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: type: integer - fees_split: - nullable: true - authorization: - type: object - properties: - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true - required: - - receiver_bank_account_number - - receiver_bank - customer: - type: object - properties: - international_format_phone: - nullable: true - required: - - international_format_phone - plan: - type: object - subaccount: - type: object - split: - type: object - order_id: - nullable: true - paidAt: - type: string - createdAt: - type: string - requested_amount: + time_spent: type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time required: - - id - - domain - - status - - reference - - amount - - message - - gateway_response - - paid_at - - created_at - - channel - - currency - - ip_address - - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - subaccount - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - transaction_reference: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true - category: + custom_filters: type: string customer: type: object @@ -15034,84 +21049,150 @@ components: id: type: integer first_name: - type: string + nullable: true last_name: - type: string + nullable: true email: type: string - customer_code: - type: string phone: - type: string + nullable: true metadata: - type: object - risk_action: + nullable: true + created_at: type: string - international_format_phone: + updated_at: type: string required: - id - first_name - last_name - email - - customer_code - phone - metadata - - risk_action - - international_format_phone - bin: - type: string - last4: + - created_at + - updated_at + reference: type: string - dueAt: - nullable: true - resolvedAt: - nullable: true - evidence: - nullable: true - attachments: - nullable: true - note: + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: nullable: true - history: - type: array - items: - $ref: '#/components/schemas/DisputeHistoryArray' - messages: + channel_options: + type: object + properties: + bank_transfer: + type: array + items: + type: string + ussd: + type: array + items: + type: string + required: + - bank_transfer + - ussd + merchant_channel_settings: + type: object + properties: + bank_transfer: + type: object + properties: + fulfil_late_notification: + type: boolean + required: + - fulfil_late_notification + required: + - bank_transfer + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + supported_banks: type: array items: - $ref: '#/components/schemas/DisputeMessagesArray' - createdAt: - type: string - updatedAt: + $ref: "#/components/schemas/VerifyAccessCodeSupportedBanksArray" + public_encryption_key: type: string + whitelabel: + type: boolean required: - - id - - refund_amount - - currency - - status - - resolution + - email + - merchant_logo + - merchant_name + - amount - domain - - transaction - - transaction_reference - - category + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters - customer - - bin - - last4 - - dueAt - - resolvedAt - - evidence - - attachments - - note - - history - - messages - - createdAt - - updatedAt + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel required: - status - message - data - DisputeUploadURLResponse: + VerifyAccessCodeZAResponse: type: object properties: status: @@ -15121,263 +21202,221 @@ components: data: type: object properties: - signedUrl: + email: type: string - fileName: + merchant_logo: type: string - required: - - signedUrl - - fileName - required: - - status - - message - - data - DisputeExportResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - path: + merchant_name: type: string - expiresAt: + amount: + type: integer + domain: type: string - required: - - path - - expiresAt - required: - - status - - message - - data - DisputeListTransactionResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - history: - type: array - items: - $ref: '#/components/schemas/DisputeHistoryArray' - messages: - type: array - items: - $ref: '#/components/schemas/DisputeMessagesArray' currency: type: string - last4: - type: string - bin: - type: string - transaction_reference: - nullable: true - merchant_transaction_reference: - type: string - refund_amount: + id: type: integer - status: + channels: + type: array + items: + type: string + label: type: string - domain: + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: type: string - resolution: + cancel_action: nullable: true - category: + access_code: type: string - note: - nullable: true - attachments: + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true - id: - type: integer - integration: - type: integer - transaction: + custom_filters: + type: string + customer: type: object properties: id: type: integer - domain: - type: string - status: - type: string - reference: - type: string - receipt_number: - type: integer + first_name: nullable: true - amount: - type: integer - message: + last_name: nullable: true - gateway_response: - type: string - paid_at: - type: string - created_at: - type: string - channel: - type: string - currency: - type: string - ip_address: + email: type: string - metadata: - type: object - properties: - custom_fields: - type: array - items: - $ref: '#/components/schemas/MetadataCustomFieldsArray' - required: - - custom_fields - log: - nullable: true - fees: - type: integer - fees_split: + phone: nullable: true - authorization: - type: object - properties: - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true - required: - - receiver_bank_account_number - - receiver_bank - customer: - type: object - properties: - international_format_phone: - nullable: true - required: - - international_format_phone - plan: - type: object - subaccount: - type: object - split: - type: object - order_id: + metadata: nullable: true - paidAt: + created_at: type: string - createdAt: + updated_at: type: string - requested_amount: - type: integer - pos_transaction_data: + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: nullable: true - source: + registered_calling_code: nullable: true - fees_breakdown: + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + qr: + type: array + items: + type: string + eft: + type: array + items: + type: string + required: + - qr + - eft + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: nullable: true - connect: - type: object + registered_calling_code: nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number required: - id - - domain - - status - - reference - - amount - - message - - gateway_response - - paid_at - - created_at - - channel - - currency - - ip_address - - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - subaccount - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - created_by: - type: integer - evidence: - nullable: true - resolvedAt: - nullable: true - createdAt: - type: string - updatedAt: + - rate + public_encryption_key: type: string - dueAt: - nullable: true + whitelabel: + type: boolean required: - - history - - messages - - currency - - last4 - - bin - - transaction_reference - - merchant_transaction_reference - - refund_amount - - status + - email + - merchant_logo + - merchant_name + - amount - domain - - resolution - - category - - note - - attachments + - currency - id - - integration - - transaction - - created_by - - evidence - - resolvedAt - - createdAt - - updatedAt - - dueAt + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel required: - status - message - data - DisputeResolve: - type: object - required: - - resolution - - message - - refund_amount - - uploaded_filename - properties: - resolution: - description: Dispute resolution. Accepted values, merchant-accepted, declined - type: string - message: - description: Reason for resolving - type: string - refund_amount: - description: The amount to refund, in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR - type: string - uploaded_filename: - description: Filename of attachment returned via response from the Dispute upload URL - type: string - evidence: - description: Evidence Id for fraud claims - type: integer - DisputeResolveResponse: + VerifyCodeGHResponse: type: object properties: status: @@ -15387,125 +21426,219 @@ components: data: type: object properties: - currency: - type: string - last4: + email: type: string - bin: + merchant_logo: type: string - transaction_reference: - nullable: true - merchant_transaction_reference: + merchant_name: type: string - refund_amount: + amount: type: integer - status: - type: string domain: type: string - resolution: - type: string - category: - type: string - note: - nullable: true - attachments: + currency: type: string id: type: integer - integration: - type: integer - transaction: + channels: + type: array + items: + type: string + label: + type: string + original_amount: type: integer - created_by: + added_fees: type: integer - evidence: + merchant_id: type: integer - resolvedAt: + merchant_key: type: string - createdAt: + cancel_action: + nullable: true + access_code: type: string - updatedAt: + transaction_status: type: string - dueAt: + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true - message: + custom_filters: + type: string + customer: type: object properties: - dispute: + id: type: integer - sender: + first_name: + nullable: true + last_name: + nullable: true + email: type: string - body: + phone: + nullable: true + metadata: + nullable: true + created_at: type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + mobile_money: + type: array + items: + $ref: "#/components/schemas/ChannelOptionMobileMoneyArray" + required: + - mobile_money + merchant_channel_settings: + type: object + elevy_percentage: + type: number + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: id: type: integer - createdAt: - type: string - updatedAt: - type: string + rate: + type: number required: - - dispute - - sender - - body - id - - createdAt - - updatedAt + - rate + public_encryption_key: + type: string + whitelabel: + type: boolean required: - - currency - - last4 - - bin - - transaction_reference - - merchant_transaction_reference - - refund_amount - - status + - email + - merchant_logo + - merchant_name + - amount - domain - - resolution - - category - - note - - attachments + - currency - id - - integration - - transaction - - created_by - - evidence - - resolvedAt - - createdAt - - updatedAt - - dueAt - - message + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - elevy_percentage + - public_encryption_key + - whitelabel required: - status - message - data - DisputeEvidence: - type: object - required: - - customer_email - - customer_name - - customer_phone - - service_details - properties: - customer_email: - description: Customer email - type: string - customer_name: - description: Customer name - type: string - customer_phone: - description: Customer mobile number - type: string - service_details: - description: Details of service offered - type: string - delivery_address: - description: Delivery address - type: string - delivery_date: - description: ISO 8601 representation of delivery date (YYYY-MM-DD) - type: string - format: date-time - DisputeAddEvidenceResponse: + VerifyCodeKEResponse: type: object properties: status: @@ -15515,108 +21648,260 @@ components: data: type: object properties: - customer_email: + email: type: string - customer_name: + merchant_logo: type: string - customer_phone: + merchant_name: type: string - service_details: + amount: + type: integer + domain: type: string - delivery_address: + currency: type: string - delivery_date: + id: + type: integer + channels: + type: array + items: + type: string + label: type: string - dispute: + original_amount: type: integer - id: + added_fees: type: integer - createdAt: + merchant_id: + type: integer + merchant_key: type: string - updatedAt: + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + mobile_money: + type: array + items: + type: object + properties: + key: + type: string + value: + type: string + isNew: + type: boolean + phoneNumberRegex: + type: string + phoneNumberPlaceholder: + type: string + isChannel: + type: boolean + isMobileMoneyBusiness: + type: boolean + accountNumberRegex: + type: string + required: + - key + - value + - isNew + - phoneNumberRegex + - isChannel + - isMobileMoneyBusiness + additionalProperties: false + required: + - mobile_money + merchant_channel_settings: + type: object + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + public_encryption_key: type: string + whitelabel: + type: boolean required: - - customer_email - - customer_name - - customer_phone - - service_details - - delivery_address - - delivery_date - - dispute + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency - id - - createdAt - - updatedAt + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel required: - status - message - data - MiscellaneousListBanksResponseArray: + VerifyCodeSupportedBanksArray: type: object properties: + id: + type: integer name: type: string slug: type: string - code: - type: string - longcode: - type: string gateway: type: string - nullable: true - pay_with_bank: - type: boolean - supports_transfer: - type: boolean - active: - type: boolean - is_deleted: - type: boolean - nullable: true - country: - type: string - currency: - type: string - type: - type: string - id: - type: integer - createdAt: - type: string - updatedAt: + code: type: string required: + - id - name - slug - - code - - longcode - gateway - - pay_with_bank - - supports_transfer - - active - - is_deleted - - country - - currency - - type - - id - - createdAt - - updatedAt - MiscellaneousListBanksResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: array - items: - $ref: '#/components/schemas/MiscellaneousListBanksResponseArray' - required: - - status - - message - - data - VerificationResolveAccountNumberResponse: + - code + VerifyCodeNGResponse: type: object properties: status: @@ -15626,310 +21911,644 @@ components: data: type: object properties: - account_number: + email: type: string - account_name: + merchant_logo: type: string - bank_id: - type: integer - required: - - account_number - - account_name - - bank_id - required: - - status - - message - - data - BankValidateRequest: - type: object - required: - - account_name - - account_number - - account_type - - bank_code - - country_code - - document_type - properties: - account_name: - description: Customer's first and last name registered with their bank - type: string - account_number: - description: Customer's account number - type: string - account_type: - description: The type of the customer's account number - type: string - enum: - - personal - - business - bank_code: - description: The bank code of the customer’s bank. You can fetch the bank codes by using our List Banks endpoint - type: string - country_code: - description: The two digit ISO code of the customer’s bank - type: string - document_type: - description: Customer’s mode of identity - type: string - enum: - - identityNumber - - passportNumber - - businessRegistrationNumber - document_number: - description: Customer’s mode of identity number - type: string - VerificationValidateAccountResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - verified: - type: boolean - verificationMessage: + merchant_name: type: string - required: - - verified - - verificationMessage - required: - - status - - message - - data - VerificationResolveCardBINResponse: - type: object - properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - bin: + amount: + type: integer + domain: type: string - brand: + currency: type: string - sub_brand: + id: + type: integer + channels: + type: array + items: + type: string + label: type: string - country_code: + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: type: string - country_name: + cancel_action: + nullable: true + access_code: type: string - card_type: + transaction_status: type: string - bank: + log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: type: string - currency: + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: + type: string + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: type: string - linked_bank_id: - type: integer + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + qr: + type: array + items: + type: string + ussd: + type: array + items: + type: string + bank_transfer: + type: array + items: + type: string + required: + - ussd + - bank_transfer + merchant_channel_settings: + type: object + properties: + bank_transfer: + type: object + properties: + fulfil_late_notification: + type: boolean + required: + - fulfil_late_notification + required: + - bank_transfer + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + supported_banks: + type: array + items: + $ref: "#/components/schemas/VerifyCodeSupportedBanksArray" + public_encryption_key: + type: string + whitelabel: + type: boolean required: - - bin - - brand - - sub_brand - - country_code - - country_name - - card_type - - bank + - email + - merchant_logo + - merchant_name + - amount + - domain - currency - - linked_bank_id + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel required: - status - message - data - MiscellaneousListCountriesResponseArray: + VerifyCodeZAResponse: type: object properties: - id: - type: integer - active_for_dashboard_onboarding: + status: type: boolean - name: - type: string - iso_code: - type: string - default_currency_code: - type: string - integration_defaults: - type: object - calling_code: + message: type: string - pilot_mode: - type: boolean - relationships: + data: type: object properties: + email: + type: string + merchant_logo: + type: string + merchant_name: + type: string + amount: + type: integer + domain: + type: string currency: + type: string + id: + type: integer + channels: + type: array + items: + type: string + label: + type: string + original_amount: + type: integer + added_fees: + type: integer + merchant_id: + type: integer + merchant_key: + type: string + cancel_action: + nullable: true + access_code: + type: string + transaction_status: + type: string + log: type: object properties: - type: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history + nullable: true + custom_filters: + type: string + customer: + type: object + properties: + id: + type: integer + first_name: + nullable: true + last_name: + nullable: true + email: type: string - data: + phone: + nullable: true + metadata: + nullable: true + created_at: + type: string + updated_at: + type: string + required: + - id + - first_name + - last_name + - email + - phone + - metadata + - created_at + - updated_at + reference: + type: string + saved_cards: + type: object + properties: + enabled: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - registered + - registered_phone + - registered_calling_code + plan_details: + nullable: true + channel_options: + type: object + properties: + qr: + type: array + items: + type: string + eft: type: array items: type: string - supported_currencies: - type: object - properties: - NGN: - type: object - properties: - bank: - type: object - properties: - bank_type: - type: string - branch_code: - type: boolean - branch_code_type: - type: string - account_name: - type: boolean - account_verification_required: - type: boolean - account_number_label: - type: string - account_number_pattern: - type: object - properties: - exact_match: - type: boolean - pattern: - type: string - required: - - exact_match - - pattern - documents: - type: array - items: {} - show_account_number_tooltip: - type: boolean - required: - - bank_type - - branch_code - - branch_code_type - - account_name - - account_verification_required - - account_number_label - - account_number_pattern - - documents - - show_account_number_tooltip - required: - - bank - USD: - type: object - properties: - bank: - type: object - properties: - bank_type: - type: string - required_fields: - type: array - items: - type: string - branch_code: - type: boolean - branch_code_type: - type: string - account_name: - type: boolean - account_verification_required: - type: boolean - account_number_label: - type: string - account_number_pattern: - type: object - properties: - exact_match: - type: boolean - pattern: - type: string - required: - - exact_match - - pattern - documents: - type: array - items: {} - notices: - type: array - items: - type: string - required: - - bank_type - - required_fields - - branch_code - - branch_code_type - - account_name - - account_verification_required - - account_number_label - - account_number_pattern - - documents - - notices - required: - - bank - required: - - NGN - - USD required: - - type - - data - - supported_currencies - integration_feature: + - qr + - eft + merchant_channel_settings: + type: object + exchange_rate: + type: object + properties: + id: + type: integer + rate: + type: number + required: + - id + - rate + link_config: + type: object + properties: + enabled: + type: boolean + has_linked_accounts: + type: boolean + has_saved_cards: + type: boolean + has_payment_instruments: + type: boolean + registered: + type: boolean + registered_phone: + nullable: true + registered_calling_code: + nullable: true + required: + - enabled + - has_linked_accounts + - has_saved_cards + - has_payment_instruments + - registered + - registered_phone + - registered_calling_code + public_encryption_key: + type: string + whitelabel: + type: boolean + required: + - email + - merchant_logo + - merchant_name + - amount + - domain + - currency + - id + - channels + - label + - original_amount + - added_fees + - merchant_id + - merchant_key + - cancel_action + - access_code + - transaction_status + - log + - custom_filters + - customer + - reference + - saved_cards + - plan_details + - channel_options + - merchant_channel_settings + - link_config + - public_encryption_key + - whitelabel + required: + - status + - message + - data + TransferFetchZAResponse: + type: object + properties: + status: + type: boolean + message: + type: string + data: + type: object + properties: + amount: + type: integer + createdAt: + type: string + currency: + type: string + domain: + type: string + failures: + nullable: true + id: + type: integer + integration: + type: integer + reason: + type: string + reference: + type: string + source: + type: string + source_details: + nullable: true + status: + type: string + titan_code: + nullable: true + transfer_code: + type: string + request: + type: integer + transferred_at: + nullable: true + updatedAt: + type: string + recipient: type: object properties: + active: + type: boolean + createdAt: + type: string + currency: + type: string + description: + type: string + domain: + type: string + email: + type: string + id: + type: integer + integration: + type: integer + metadata: + type: object + nullable: true + name: + type: string + recipient_code: + type: string type: type: string - data: - type: array - items: {} + updatedAt: + type: string + is_deleted: + type: boolean + isDeleted: + type: boolean + details: + type: object + properties: + authorization_code: + nullable: true + account_number: + type: string + account_name: + type: string + nullable: true + bank_code: + type: string + bank_name: + type: string + required: + - authorization_code + - account_number + - account_name + - bank_code + - bank_name required: + - active + - createdAt + - currency + - description + - domain + - email + - id + - integration + - name + - recipient_code - type - - data - integration_type: + - updatedAt + - is_deleted + - isDeleted + - details + session: type: object properties: - type: - type: string - data: - type: array - items: - type: string + provider: + nullable: true + id: + nullable: true required: - - type - - data - payment_method: + - provider + - id + fee_charged: + type: integer + fees_breakdown: + type: array + items: + $ref: "#/components/schemas/TransferFeesBreakdownArray" + nullable: true + gateway_response: + type: string + nullable: true + transferAttributes: type: object properties: - type: + transfer: + type: integer + transfer_type: + type: integer + created_at: type: string - data: - type: array - items: - type: string + updated_at: + nullable: true + receipt_number: + nullable: true required: - - type - - data + - transfer + - transfer_type + - created_at + - updated_at + - receipt_number required: + - amount + - createdAt - currency - - integration_feature - - integration_type - - payment_method + - domain + - failures + - id + - integration + - reason + - reference + - source + - source_details + - status + - titan_code + - transfer_code + - request + - transferred_at + - updatedAt + - recipient + - session + - fee_charged + - fees_breakdown + - gateway_response + - transferAttributes required: - - id - - active_for_dashboard_onboarding - - name - - iso_code - - default_currency_code - - integration_defaults - - calling_code - - pilot_mode - - relationships - MiscellaneousListCountriesResponse: + - status + - message + - data + TransferApprovalGetSettingsResponse: type: object properties: status: @@ -15937,27 +22556,41 @@ components: message: type: string data: - type: array - items: - $ref: '#/components/schemas/MiscellaneousListCountriesResponseArray' + type: object + properties: + on_for_test_mode: + type: boolean + on_for_live_mode: + type: boolean + on_when_otp_is_on: + type: boolean + on_for_dashboard_initiated_transfers: + type: boolean + automatically_blacklist_rejected_recipients: + type: boolean + test_approval_url: + type: string + live_approval_url: + type: string + test_contact_email: + type: string + live_contact_email: + type: string + required: + - on_for_test_mode + - on_for_live_mode + - on_when_otp_is_on + - on_for_dashboard_initiated_transfers + - automatically_blacklist_rejected_recipients + - test_approval_url + - live_approval_url + - test_contact_email + - live_contact_email required: - status - message - data - MiscellaneousListStatesResponseArray: - type: object - properties: - name: - type: string - slug: - type: string - abbreviation: - type: string - required: - - name - - slug - - abbreviation - MiscellaneousListStatesResponse: + TransferApprovalUpdateSettingsResponse: type: object properties: status: @@ -15965,9 +22598,36 @@ components: message: type: string data: - type: array - items: - $ref: '#/components/schemas/MiscellaneousListStatesResponseArray' + type: object + properties: + on_for_test_mode: + type: boolean + on_for_live_mode: + type: boolean + on_when_otp_is_on: + type: boolean + on_for_dashboard_initiated_transfers: + type: boolean + automatically_blacklist_rejected_recipients: + type: boolean + test_approval_url: + type: string + live_approval_url: + type: string + test_contact_email: + type: string + live_contact_email: + type: string + required: + - on_for_test_mode + - on_for_live_mode + - on_when_otp_is_on + - on_for_dashboard_initiated_transfers + - automatically_blacklist_rejected_recipients + - test_approval_url + - live_approval_url + - test_contact_email + - live_contact_email required: - status - message @@ -15991,7 +22651,7 @@ components: example: true message: type: string - example: 'Mandate is queued for retry' + example: "Mandate is queued for retry" required: - status - message @@ -16003,16 +22663,16 @@ components: example: 28958104 customer_code: type: string - example: 'CUS_5kye9bc41uw15pb' + example: "CUS_5kye9bc41uw15pb" email: type: string - example: 'customer@email.com' + example: "customer@email.com" first_name: type: string - example: 'Booker' + example: "Booker" last_name: type: string - example: 'Jones' + example: "Jones" required: - id - customer_code @@ -16027,7 +22687,7 @@ components: example: 112244 status: type: string - example: 'active' + example: "active" mandate_id: type: integer example: 1560169 @@ -16036,25 +22696,25 @@ components: example: 1069309917 authorization_code: type: string - example: 'AUTH_lEt8QgrSfW' + example: "AUTH_lEt8QgrSfW" integration_id: type: integer example: 463433 account_number: type: string - example: '0123456789' + example: "0123456789" bank_code: type: string - example: '058' + example: "058" bank_name: type: string - example: 'Guaranty Trust Bank' + example: "Guaranty Trust Bank" customer: - $ref: '#/components/schemas/DirectDebitMandateAuthorizationCustomer' + $ref: "#/components/schemas/DirectDebitMandateAuthorizationCustomer" authorized_at: type: string format: date-time - example: '2025-06-23T12:47:10.632Z' + example: "2025-06-23T12:47:10.632Z" required: - id - status @@ -16075,7 +22735,7 @@ components: example: 10 next: type: string - example: 'MTI1OTc=' + example: "MTI1OTc=" count: type: integer example: 10 @@ -16094,13 +22754,13 @@ components: example: true message: type: string - example: 'Mandate authorizations retrieved successfully' + example: "Mandate authorizations retrieved successfully" data: type: array items: - $ref: '#/components/schemas/DirectDebitMandateAuthorizationData' + $ref: "#/components/schemas/DirectDebitMandateAuthorizationData" meta: - $ref: '#/components/schemas/DirectDebitMandateAuthorizationMeta' + $ref: "#/components/schemas/DirectDebitMandateAuthorizationMeta" required: - status - message @@ -16112,11 +22772,11 @@ components: number: type: string description: The customer's account number - example: '0123456789' + example: "0123456789" bank_code: type: string description: The code representing the customer's bank - example: '058' + example: "058" required: - number - bank_code @@ -16126,15 +22786,15 @@ components: street: type: string description: The customer's street - example: '123 Main Street' + example: "123 Main Street" city: type: string description: The customer's city - example: 'Lagos' + example: "Lagos" state: type: string description: The customer's state - example: 'Lagos' + example: "Lagos" required: - street - city @@ -16148,33 +22808,33 @@ components: email: type: string description: Customer's email address - example: 'ravi@demo.com' + example: "ravi@demo.com" channel: type: string - description: direct-debit is the only supported option for now + description: direct_debit is the only supported option for now enum: - direct_debit - example: 'direct_debit' + example: "direct_debit" callback_url: type: string description: Fully qualified url (e.g. https://example.com/) to redirect your customer to - example: 'http://test.url.com' + example: "http://test.url.com" account: - $ref: '#/components/schemas/CustomerAuthorizationInitializeAccount' + $ref: "#/components/schemas/CustomerAuthorizationInitializeAccount" address: - $ref: '#/components/schemas/CustomerAuthorizationInitializeAddress' + $ref: "#/components/schemas/CustomerAuthorizationInitializeAddress" CustomerAuthorizationInitializeResponseData: type: object properties: redirect_url: type: string - example: 'https://checkout.paystack.com/82t4mp5b5mfn51h' + example: "https://checkout.paystack.com/82t4mp5b5mfn51h" access_code: type: string - example: '82t4mp5b5mfn51h' + example: "82t4mp5b5mfn51h" reference: type: string - example: 'dfbzfotsrbv4n5s82t4mp5b5mfn51h' + example: "dfbzfotsrbv4n5s82t4mp5b5mfn51h" required: - redirect_url - access_code @@ -16187,9 +22847,9 @@ components: example: true message: type: string - example: 'Authorization initialized' + example: "Authorization initialized" data: - $ref: '#/components/schemas/CustomerAuthorizationInitializeResponseData' + $ref: "#/components/schemas/CustomerAuthorizationInitializeResponseData" required: - status - message @@ -16199,10 +22859,10 @@ components: properties: code: type: string - example: 'CUS_24lze1c8i2zl76y' + example: "CUS_24lze1c8i2zl76y" email: type: string - example: 'ravi@demo.com' + example: "ravi@demo.com" required: - code - email @@ -16211,18 +22871,18 @@ components: properties: authorization_code: type: string - example: 'AUTH_JV4T9Wawdj' + example: "AUTH_JV4T9Wawdj" channel: type: string - example: 'direct_debit' + example: "direct_debit" bank: type: string - example: 'Guaranty Trust Bank' + example: "Guaranty Trust Bank" active: type: boolean example: true customer: - $ref: '#/components/schemas/CustomerAuthorizationVerifyResponseCustomer' + $ref: "#/components/schemas/CustomerAuthorizationVerifyResponseCustomer" required: - authorization_code - channel @@ -16237,9 +22897,9 @@ components: example: true message: type: string - example: 'Authorization retrieved successfully' + example: "Authorization retrieved successfully" data: - $ref: '#/components/schemas/CustomerAuthorizationVerifyResponseData' + $ref: "#/components/schemas/CustomerAuthorizationVerifyResponseData" required: - status - message @@ -16250,11 +22910,11 @@ components: number: type: string description: The customer's account number - example: '0123456789' + example: "0123456789" bank_code: type: string description: The code representing the customer's bank - example: '058' + example: "058" required: - number - bank_code @@ -16264,15 +22924,15 @@ components: street: type: string description: The customer's street - example: 'Some Where' + example: "Some Where" city: type: string description: The customer's city - example: 'Ikeja' + example: "Ikeja" state: type: string description: The customer's state - example: 'Lagos' + example: "Lagos" required: - street - city @@ -16284,21 +22944,21 @@ components: - address properties: account: - $ref: '#/components/schemas/CustomerInitializeDirectDebitAccount' + $ref: "#/components/schemas/CustomerInitializeDirectDebitAccount" address: - $ref: '#/components/schemas/CustomerInitializeDirectDebitAddress' + $ref: "#/components/schemas/CustomerInitializeDirectDebitAddress" CustomerInitializeDirectDebitResponseData: type: object properties: redirect_url: type: string - example: 'https://link.paystack.com/ll6b0szngj1f27k' + example: "https://link.paystack.com/ll6b0szngj1f27k" access_code: type: string - example: 'll6b0szngj1f27k' + example: "ll6b0szngj1f27k" reference: type: string - example: '1er945lpy4txyki' + example: "1er945lpy4txyki" required: - redirect_url - access_code @@ -16311,9 +22971,9 @@ components: example: true message: type: string - example: 'Authorization initialized' + example: "Authorization initialized" data: - $ref: '#/components/schemas/CustomerInitializeDirectDebitResponseData' + $ref: "#/components/schemas/CustomerInitializeDirectDebitResponseData" required: - status - message @@ -16335,7 +22995,7 @@ components: example: true message: type: string - example: 'Mandate is queued for retry' + example: "Mandate is queued for retry" required: - status - message @@ -16347,7 +23007,7 @@ components: example: 164098 status: type: string - example: 'active' + example: "active" mandate_id: type: integer example: 512003 @@ -16356,16 +23016,16 @@ components: example: 110049014 authorization_code: type: string - example: 'AUTH_8Lol0pNt14' + example: "AUTH_8Lol0pNt14" integration_id: type: integer example: 463433 account_number: type: string - example: '0123456789' + example: "0123456789" bank_code: type: string - example: '032' + example: "032" bank_name: type: string example: null @@ -16377,20 +23037,20 @@ components: example: 43975700 customer_code: type: string - example: 'CUS_2eusy8uwe34s23fy' + example: "CUS_2eusy8uwe34s23fy" email: type: string - example: 'customer@email.com' + example: "customer@email.com" first_name: type: string - example: 'Smith' + example: "Smith" last_name: type: string - example: 'Bel' + example: "Bel" authorized_at: type: string format: date-time - example: '2024-09-27T10:57:53.824Z' + example: "2024-09-27T10:57:53.824Z" required: - id - status @@ -16429,763 +23089,709 @@ components: example: true message: type: string - example: 'Mandate authorizations retrieved successfully' + example: "Mandate authorizations retrieved successfully" data: type: array items: - $ref: '#/components/schemas/CustomerFetchMandateAuthorizationsResponseData' + $ref: "#/components/schemas/CustomerFetchMandateAuthorizationsResponseData" meta: - $ref: '#/components/schemas/CustomerFetchMandateAuthorizationsResponseMeta' + $ref: "#/components/schemas/CustomerFetchMandateAuthorizationsResponseMeta" required: - status - message - data - meta responses: - TransactionInitializeSuccess: - description: Transaction Initialize response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionInitializeResponse' TransactionInitializeBadRequestResponse: description: Responses from the Transaction Initialize endpoint content: application/json: schema: - $ref: '#/components/schemas/TransactionInitializeBadRequestModel' + $ref: "#/components/schemas/TransactionInitializeBadRequestModel" Unauthorized: description: Unauthorized operation content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: "#/components/schemas/Error" example: status: false message: Invalid key - TransactionVerifySuccess: - description: Transaction Verify response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionVerifyResponse' NotFound: description: Entity not found content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: "#/components/schemas/Error" example: status: false message: Entity not found - TransactionListSuccess: - description: Transaction List response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionListResponse' - TransactionFetchSuccess: - description: Transaction Fetch response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionFetchResponse' - TransactionTimelineSuccess: - description: Transaction Timeline response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionTimelineResponse' - TransactionTotalsSuccess: - description: Transaction Totals response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionTotalsResponse' - TransactionExportSuccess: - description: Transaction Export response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionExportResponse' - TransactionChargeSuccess: - description: Transaction Charge response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionChargeResponse' - TransactionPartialDebitSuccess: - description: Transaction Partial Debit response - content: - application/json: - schema: - $ref: '#/components/schemas/TransactionPartialDebitResponse' Ok: description: Request successful content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: "#/components/schemas/Response" SplitListSuccess: description: Split List response content: application/json: schema: - $ref: '#/components/schemas/SplitListResponse' + $ref: "#/components/schemas/SplitListResponse" SplitCreateSuccess: description: Split Create response content: application/json: schema: - $ref: '#/components/schemas/SplitCreateResponse' + $ref: "#/components/schemas/SplitCreateResponse" SplitFetchSuccess: description: Split Fetch response content: application/json: schema: - $ref: '#/components/schemas/SplitFetchResponse' + $ref: "#/components/schemas/SplitFetchResponse" SplitUpdateSuccess: description: Split Update response content: application/json: schema: - $ref: '#/components/schemas/SplitUpdateResponse' + $ref: "#/components/schemas/SplitUpdateResponse" SplitAddUpdateSubaccountSuccess: description: Split Add Update Subaccount response content: application/json: schema: - $ref: '#/components/schemas/SplitAddUpdateSubaccountResponse' + $ref: "#/components/schemas/SplitAddUpdateSubaccountResponse" SplitRemoveSubaccountSuccess: description: Split Remove Subaccount response content: application/json: schema: - $ref: '#/components/schemas/SplitRemoveSubaccountResponse' + $ref: "#/components/schemas/SplitRemoveSubaccountResponse" TerminalGetStatusSuccess: description: Terminal Get Status response content: application/json: schema: - $ref: '#/components/schemas/TerminalGetStatusResponse' + $ref: "#/components/schemas/TerminalGetStatusResponse" TerminalListsSuccess: description: Terminal Lists response content: application/json: schema: - $ref: '#/components/schemas/TerminalListsResponse' + $ref: "#/components/schemas/TerminalListsResponse" TerminalGetSuccess: description: Terminal Get response content: application/json: schema: - $ref: '#/components/schemas/TerminalGetResponse' + $ref: "#/components/schemas/TerminalGetResponse" TerminalUpdateSuccess: description: Terminal Update response content: application/json: schema: - $ref: '#/components/schemas/TerminalUpdateResponse' + $ref: "#/components/schemas/TerminalUpdateResponse" TerminalCommissionDeviceSuccess: description: Terminal Commission Device response content: application/json: schema: - $ref: '#/components/schemas/TerminalCommissionDeviceResponse' + $ref: "#/components/schemas/TerminalCommissionDeviceResponse" TerminalDecommissionDeviceSuccess: description: Terminal Decommission Device response content: application/json: schema: - $ref: '#/components/schemas/TerminalDecommissionDeviceResponse' + $ref: "#/components/schemas/TerminalDecommissionDeviceResponse" CustomerListSuccess: description: Customer List response content: application/json: schema: - $ref: '#/components/schemas/CustomerListResponse' + $ref: "#/components/schemas/CustomerListResponse" CustomerCreateSuccess: description: Customer Create response content: application/json: schema: - $ref: '#/components/schemas/CustomerCreateResponse' + $ref: "#/components/schemas/CustomerCreateResponse" CustomerFetchSuccess: description: Customer Fetch response content: application/json: schema: - $ref: '#/components/schemas/CustomerFetchResponse' + $ref: "#/components/schemas/CustomerFetchResponse" CustomerUpdateSuccess: description: Customer Update response content: application/json: schema: - $ref: '#/components/schemas/CustomerUpdateResponse' + $ref: "#/components/schemas/CustomerUpdateResponse" CustomerWhitelistBlacklistSuccess: description: Customer Whitelist Blacklist response content: application/json: schema: - $ref: '#/components/schemas/CustomerWhitelistBlacklistResponse' + $ref: "#/components/schemas/CustomerRiskActionResponse" CustomerDeactivateAuthorizationSuccess: description: Customer Deactivate Authorization response content: application/json: schema: - $ref: '#/components/schemas/CustomerDeactivateAuthorizationResponse' + $ref: "#/components/schemas/CustomerDeactivateAuthorizationResponse" CustomerValidateSuccess: description: Customer Validate response content: application/json: schema: - $ref: '#/components/schemas/CustomerValidateResponse' + $ref: "#/components/schemas/CustomerValidateResponse" DedicatedNubanFetchSuccess: description: Dedicated Nuban Fetch response content: application/json: schema: - $ref: '#/components/schemas/DedicatedNubanFetchResponse' + $ref: "#/components/schemas/DedicatedNubanFetchResponse" DedicatedNubanCreateSuccess: description: Dedicated Nuban Create response content: application/json: schema: - $ref: '#/components/schemas/DedicatedNubanCreateResponse' + $ref: "#/components/schemas/DedicatedNubanCreateResponse" DedicatedNubanDeactivateSuccess: description: Dedicated Nuban Deactivate response content: application/json: schema: - $ref: '#/components/schemas/DedicatedNubanDeactivateResponse' + $ref: "#/components/schemas/DedicatedNubanDeactivateResponse" ApplePayOkResponse: description: Responses from the Transaction Initialize endpoint content: application/json: schema: - $ref: '#/components/schemas/ApplePayCreateOkModel' + $ref: "#/components/schemas/ApplePayCreateOkModel" SubaccountListSuccess: description: Subaccount List response content: application/json: schema: - $ref: '#/components/schemas/SubaccountListResponse' + $ref: "#/components/schemas/SubaccountListResponse" SubaccountCreateSuccess: description: Subaccount Create response content: application/json: schema: - $ref: '#/components/schemas/SubaccountCreateResponse' + $ref: "#/components/schemas/SubaccountCreateResponse" SubaccountFetchSuccess: description: Subaccount Fetch response content: application/json: schema: - $ref: '#/components/schemas/SubaccountFetchResponse' + $ref: "#/components/schemas/SubaccountFetchResponse" SubaccountUpdateSuccess: description: Subaccount Update response content: application/json: schema: - $ref: '#/components/schemas/SubaccountUpdateResponse' + $ref: "#/components/schemas/SubaccountUpdateResponse" PlanListSuccess: description: Plan List response content: application/json: schema: - $ref: '#/components/schemas/PlanListResponse' + $ref: "#/components/schemas/PlanListResponse" PlanCreateSuccess: description: Plan Create response content: application/json: schema: - $ref: '#/components/schemas/PlanCreateResponse' + $ref: "#/components/schemas/PlanCreateResponse" PlanFetchSuccess: description: Plan Fetch response content: application/json: schema: - $ref: '#/components/schemas/PlanFetchResponse' + $ref: "#/components/schemas/PlanFetchResponse" PlanUpdateSuccess: description: Plan Update response content: application/json: schema: - $ref: '#/components/schemas/PlanUpdateResponse' + $ref: "#/components/schemas/PlanUpdateResponse" SubscriptionListSuccess: description: Subscription List response content: application/json: schema: - $ref: '#/components/schemas/SubscriptionListResponse' + $ref: "#/components/schemas/SubscriptionListResponse" SubscriptionCreateSuccess: description: Subscription Create response content: application/json: schema: - $ref: '#/components/schemas/SubscriptionCreateResponse' + $ref: "#/components/schemas/SubscriptionCreateResponse" SubscriptionFetchSuccess: description: Subscription Fetch response content: application/json: schema: - $ref: '#/components/schemas/SubscriptionFetchResponse' + $ref: "#/components/schemas/SubscriptionFetchResponse" SubscriptionDisableSuccess: description: Subscription Disable response content: application/json: schema: - $ref: '#/components/schemas/SubscriptionDisableResponse' + $ref: "#/components/schemas/SubscriptionDisableResponse" ProductListsSuccess: description: Product Lists response content: application/json: schema: - $ref: '#/components/schemas/ProductListsResponse' + $ref: "#/components/schemas/ProductListsResponse" ProductCreateSuccess: description: Product Create response content: application/json: schema: - $ref: '#/components/schemas/ProductCreateResponse' + $ref: "#/components/schemas/ProductCreateResponse" ProductFetchSuccess: description: Product Fetch response content: application/json: schema: - $ref: '#/components/schemas/ProductFetchResponse' + $ref: "#/components/schemas/ProductFetchResponse" ProductUpdateSuccess: description: Product Update response content: application/json: schema: - $ref: '#/components/schemas/ProductUpdateResponse' + $ref: "#/components/schemas/ProductUpdateResponse" ProductDeleteSuccess: description: Product Delete response content: application/json: schema: - $ref: '#/components/schemas/ProductDeleteResponse' + $ref: "#/components/schemas/ProductDeleteResponse" StorefrontListSuccess: description: Storefront List response content: application/json: schema: - $ref: '#/components/schemas/StorefrontListResponse' + $ref: "#/components/schemas/StorefrontListResponse" StorefrontCreateSuccess: description: Storefront Create response content: application/json: schema: - $ref: '#/components/schemas/StorefrontCreateResponse' + $ref: "#/components/schemas/StorefrontCreateResponse" StorefrontFetchSuccess: description: Storefront Fetch response content: application/json: schema: - $ref: '#/components/schemas/StorefrontFetchResponse' + $ref: "#/components/schemas/StorefrontFetchResponse" StorefrontUpdateSuccess: description: Storefront Update response content: application/json: schema: - $ref: '#/components/schemas/StorefrontUpdateResponse' + $ref: "#/components/schemas/StorefrontUpdateResponse" StorefrontDeleteSuccess: description: Storefront Delete response content: application/json: schema: - $ref: '#/components/schemas/StorefrontDeleteResponse' + $ref: "#/components/schemas/StorefrontDeleteResponse" OrderListSuccess: description: Order List response content: application/json: schema: - $ref: '#/components/schemas/OrderListResponse' + $ref: "#/components/schemas/OrderListResponse" OrderCreateSuccess: description: Order Create response content: application/json: schema: - $ref: '#/components/schemas/OrderCreateResponse' + $ref: "#/components/schemas/OrderCreateResponse" OrderFetchSuccess: description: Order Fetch response content: application/json: schema: - $ref: '#/components/schemas/OrderFetchResponse' + $ref: "#/components/schemas/OrderFetchResponse" OrderFetchProductSuccess: description: Order Fetch Product response content: application/json: schema: - $ref: '#/components/schemas/OrderFetchProductResponse' + $ref: "#/components/schemas/OrderFetchProductResponse" OrderValidateSuccess: description: Order Validate response content: application/json: schema: - $ref: '#/components/schemas/OrderValidateResponse' + $ref: "#/components/schemas/OrderValidateResponse" PageListSuccess: description: Page List response content: application/json: schema: - $ref: '#/components/schemas/PageListResponse' + $ref: "#/components/schemas/PageListResponse" PageCreateSuccess: description: Page Create response content: application/json: schema: - $ref: '#/components/schemas/PageCreateResponse' + $ref: "#/components/schemas/PageCreateResponse" PageFetchSuccess: description: Page Fetch response content: application/json: schema: - $ref: '#/components/schemas/PageFetchResponse' + $ref: "#/components/schemas/PageFetchResponse" PageUpdateSuccess: description: Page Update response content: application/json: schema: - $ref: '#/components/schemas/PageUpdateResponse' + $ref: "#/components/schemas/PageUpdateResponse" PageCheckSlugAvailabilitySuccess: description: Page Check Slug Availability response content: application/json: schema: - $ref: '#/components/schemas/PageCheckSlugAvailabilityResponse' + $ref: "#/components/schemas/PageCheckSlugAvailabilityResponse" PageAddProductsSuccess: description: Page Add Products response content: application/json: schema: - $ref: '#/components/schemas/PageAddProductsResponse' + $ref: "#/components/schemas/PageAddProductsResponse" PaymentRequestListSuccess: description: Payment Request List response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestListResponse' + $ref: "#/components/schemas/PaymentRequestListResponse" PaymentRequestCreateSuccess: description: Payment Request Create response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestCreateResponse' + $ref: "#/components/schemas/PaymentRequestCreateResponse" PaymentRequestUpdateSuccess: description: Payment Request Update response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestUpdateResponse' + $ref: "#/components/schemas/PaymentRequestUpdateResponse" PaymentRequestVerifySuccess: description: Payment Request Verify response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestVerifyResponse' + $ref: "#/components/schemas/PaymentRequestVerifyResponse" PaymentRequestSendNotificationSuccess: description: Payment Request Send Notification response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestSendNotificationResponse' + $ref: "#/components/schemas/PaymentRequestSendNotificationResponse" PaymentRequestTotalSuccess: description: Payment Request Total response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestTotalResponse' + $ref: "#/components/schemas/PaymentRequestTotalResponse" PaymentRequestFinalizeSuccess: description: Payment Request Finalize response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestFinalizeResponse' + $ref: "#/components/schemas/PaymentRequestFinalizeResponse" PaymentRequestArchiveSuccess: description: Payment Request Archive response content: application/json: schema: - $ref: '#/components/schemas/PaymentRequestArchiveResponse' + $ref: "#/components/schemas/PaymentRequestArchiveResponse" TransferRecipientListSuccess: description: Transfer Recipient List response content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientListResponse' + $ref: "#/components/schemas/TransferRecipientListResponse" TransferRecipientCreateSuccess: description: Transfer Recipient Create response content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientCreateResponse' + $ref: "#/components/schemas/TransferRecipientCreateResponse" TransferRecipientBulkCreateSuccess: description: Transfer Recipient Bulk Create response content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientBulkCreateResponse' + $ref: "#/components/schemas/TransferRecipientBulkCreateResponse" TransferRecipientFetchSuccess: description: Transfer Recipient Fetch response content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientFetchResponse' + $ref: "#/components/schemas/TransferRecipientFetchResponse" TransferRecipientUpdateSuccess: description: Transfer Recipient Update response content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientUpdateResponse' + $ref: "#/components/schemas/TransferRecipientUpdateResponse" TransferRecipientDeleteSuccess: description: Transfer Recipient Delete response content: application/json: schema: - $ref: '#/components/schemas/TransferRecipientDeleteResponse' + $ref: "#/components/schemas/TransferRecipientDeleteResponse" TransferListSuccess: description: Transfer List response content: application/json: schema: - $ref: '#/components/schemas/TransferListResponse' + $ref: "#/components/schemas/TransferListResponse" TransferCreateSuccess: description: Transfer Create response content: application/json: schema: - $ref: '#/components/schemas/TransferCreateResponse' + $ref: "#/components/schemas/TransferCreateResponse" TransferBulkSuccess: description: Transfer Bulk response content: application/json: schema: - $ref: '#/components/schemas/TransferBulkResponse' + $ref: "#/components/schemas/TransferBulkResponse" TransferFetchSuccess: description: Transfer Fetch response content: application/json: schema: - $ref: '#/components/schemas/TransferFetchResponse' + $ref: "#/components/schemas/TransferFetchResponse" TransferVerifySuccess: description: Transfer Verify response content: application/json: schema: - $ref: '#/components/schemas/TransferVerifyResponse' + $ref: "#/components/schemas/TransferVerifyResponse" TransferResendsOtpSuccess: description: Transfer Resends Otp response content: application/json: schema: - $ref: '#/components/schemas/TransferResendsOtpResponse' + $ref: "#/components/schemas/TransferResendsOtpResponse" TransferDisablesOtpSuccess: description: Transfer Disables Otp response content: application/json: schema: - $ref: '#/components/schemas/TransferDisablesOtpResponse' + $ref: "#/components/schemas/TransferDisablesOtpResponse" TransferFinalizeDisablesOtpSuccess: description: Transfer Finalize Disables Otp response content: application/json: schema: - $ref: '#/components/schemas/TransferFinalizeDisablesOtpResponse' + $ref: "#/components/schemas/TransferFinalizeDisablesOtpResponse" TransferEnablesOtpSuccess: description: Transfer Enables Otp response content: application/json: schema: - $ref: '#/components/schemas/TransferEnablesOtpResponse' + $ref: "#/components/schemas/TransferEnablesOtpResponse" BalanceCheckSuccess: description: Balance Check response content: application/json: schema: - $ref: '#/components/schemas/BalanceCheckResponse' + $ref: "#/components/schemas/BalanceCheckResponse" BalanceFetchLedgerSuccess: description: Balance Fetch Ledger response content: application/json: schema: - $ref: '#/components/schemas/BalanceFetchLedgerResponse' + $ref: "#/components/schemas/BalanceFetchLedgerResponse" ChargeCreateSuccess: description: Charge Create response content: application/json: schema: - $ref: '#/components/schemas/ChargeCreateResponse' + $ref: "#/components/schemas/ChargeCreateResponse" ChargeSubmitPinSuccess: description: Charge Submit Pin response content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitPinResponse' + $ref: "#/components/schemas/ChargeSubmitPinResponse" ChargeSubmitOtpSuccess: description: Charge Submit Otp response content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitOtpResponse' + $ref: "#/components/schemas/ChargeSubmitOtpResponse" ChargeSubmitPhoneSuccess: description: Charge Submit Phone response content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitPhoneResponse' + $ref: "#/components/schemas/ChargeSubmitPhoneResponse" ChargeSubmitBirthdaySuccess: description: Charge Submit Birthday response content: application/json: schema: - $ref: '#/components/schemas/ChargeSubmitBirthdayResponse' + $ref: "#/components/schemas/ChargeSubmitBirthdayResponse" ChargeCheckPendingSuccess: description: Charge Check Pending response content: application/json: schema: - $ref: '#/components/schemas/ChargeCheckPendingResponse' + $ref: "#/components/schemas/ChargeCheckPendingResponse" BulkChargeListSuccess: description: Bulk Charge List response content: application/json: schema: - $ref: '#/components/schemas/BulkChargeListResponse' + $ref: "#/components/schemas/BulkChargeListResponse" BulkChargeInitiateSuccess: description: Bulk Charge Initiate response content: application/json: schema: - $ref: '#/components/schemas/BulkChargeInitiateResponse' + $ref: "#/components/schemas/BulkChargeInitiateResponse" BulkChargeFetchSuccess: description: Bulk Charge Fetch response content: application/json: schema: - $ref: '#/components/schemas/BulkChargeFetchResponse' + $ref: "#/components/schemas/BulkChargeFetchResponse" BulkChargeFetchBulkBatchChargesSuccess: description: Bulk Charge Fetch Bulk Batch Charges response content: application/json: schema: - $ref: '#/components/schemas/BulkChargeFetchBulkBatchChargesResponse' + $ref: "#/components/schemas/BulkChargeFetchBulkBatchChargesResponse" BulkChargePauseSuccess: description: Bulk Charge Pause response content: application/json: schema: - $ref: '#/components/schemas/BulkChargePauseResponse' + $ref: "#/components/schemas/BulkChargePauseResponse" BulkChargeResumeSuccess: description: Bulk Charge Resume response content: application/json: schema: - $ref: '#/components/schemas/BulkChargeResumeResponse' + $ref: "#/components/schemas/BulkChargeResumeResponse" RefundListSuccess: description: Refund List response content: application/json: schema: - $ref: '#/components/schemas/RefundListResponse' + $ref: "#/components/schemas/RefundListResponse" RefundCreateSuccess: description: Refund Create response content: application/json: schema: - $ref: '#/components/schemas/RefundCreateResponse' + $ref: "#/components/schemas/RefundCreateResponse" RefundFetchSuccess: description: Refund Fetch response content: application/json: schema: - $ref: '#/components/schemas/RefundFetchResponse' + $ref: "#/components/schemas/RefundFetchResponse" DisputeListSuccess: description: Dispute List response content: application/json: schema: - $ref: '#/components/schemas/DisputeListResponse' + $ref: "#/components/schemas/DisputeListResponse" DisputeFetchSuccess: description: Dispute Fetch response content: application/json: schema: - $ref: '#/components/schemas/DisputeFetchResponse' + $ref: "#/components/schemas/DisputeFetchResponse" DisputeUpdateSuccess: description: Dispute Update response content: application/json: schema: - $ref: '#/components/schemas/DisputeUpdateResponse' + $ref: "#/components/schemas/DisputeUpdateResponse" DisputeUploadURLSuccess: description: Dispute Upload U R L response content: application/json: schema: - $ref: '#/components/schemas/DisputeUploadURLResponse' + $ref: "#/components/schemas/DisputeUploadURLResponse" DisputeExportSuccess: description: Dispute Export response content: application/json: schema: - $ref: '#/components/schemas/DisputeExportResponse' + $ref: "#/components/schemas/DisputeExportResponse" DisputeListTransactionSuccess: description: Dispute List Transaction response content: application/json: schema: - $ref: '#/components/schemas/DisputeListTransactionResponse' + $ref: "#/components/schemas/DisputeListTransactionResponse" DisputeResolveSuccess: description: Dispute Resolve response content: application/json: schema: - $ref: '#/components/schemas/DisputeResolveResponse' + $ref: "#/components/schemas/DisputeResolveResponse" DisputeAddEvidenceSuccess: description: Dispute Add Evidence response content: application/json: schema: - $ref: '#/components/schemas/DisputeAddEvidenceResponse' + $ref: "#/components/schemas/DisputeAddEvidenceResponse" MiscellaneousListBanksSuccess: description: Miscellaneous List Banks response content: application/json: schema: - $ref: '#/components/schemas/MiscellaneousListBanksResponse' + $ref: "#/components/schemas/MiscellaneousListBanksResponse" VerificationResolveAccountNumberSuccess: description: Verification Resolve Account Number response content: application/json: schema: - $ref: '#/components/schemas/VerificationResolveAccountNumberResponse' + $ref: "#/components/schemas/VerificationResolveAccountNumberResponse" VerificationValidateAccountSuccess: description: Verification Validate Account response content: application/json: schema: - $ref: '#/components/schemas/VerificationValidateAccountResponse' + $ref: "#/components/schemas/VerificationValidateAccountResponse" VerificationResolveCardBINSuccess: description: Verification Resolve Card B I N response content: application/json: schema: - $ref: '#/components/schemas/VerificationResolveCardBINResponse' + $ref: "#/components/schemas/VerificationResolveCardBINResponse" MiscellaneousListCountriesSuccess: description: Miscellaneous List Countries response content: application/json: schema: - $ref: '#/components/schemas/MiscellaneousListCountriesResponse' + $ref: "#/components/schemas/MiscellaneousListCountriesResponse" MiscellaneousListStatesSuccess: description: Miscellaneous List States response content: application/json: schema: - $ref: '#/components/schemas/MiscellaneousListStatesResponse' + $ref: "#/components/schemas/MiscellaneousListStatesResponse" CustomerInitializeDirectDebitSuccess: description: Customer Initialize Direct Debit response content: @@ -17221,4 +23827,4 @@ components: content: application/json: schema: - $ref: "#/components/schemas/DirectDebitActivationChargeResponse" \ No newline at end of file + $ref: "#/components/schemas/DirectDebitActivationChargeResponse" diff --git a/src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml b/src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml index 15f6cb0..343c45d 100644 --- a/src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml +++ b/src/assets/openapi/components/responses/CustomerWhitelistBlacklistSuccess.yaml @@ -2,4 +2,4 @@ description: Customer Whitelist Blacklist response content: application/json: schema: - $ref: ../schemas/CustomerWhitelistBlacklistResponse.yaml + $ref: ../schemas/CustomerRiskActionResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionChargeSuccess.yaml b/src/assets/openapi/components/responses/TransactionChargeSuccess.yaml deleted file mode 100644 index fdbc4c6..0000000 --- a/src/assets/openapi/components/responses/TransactionChargeSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Charge response -content: - application/json: - schema: - $ref: ../schemas/TransactionChargeResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionExportSuccess.yaml b/src/assets/openapi/components/responses/TransactionExportSuccess.yaml deleted file mode 100644 index f1b9376..0000000 --- a/src/assets/openapi/components/responses/TransactionExportSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Export response -content: - application/json: - schema: - $ref: ../schemas/TransactionExportResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionFetchSuccess.yaml b/src/assets/openapi/components/responses/TransactionFetchSuccess.yaml deleted file mode 100644 index 9dd4563..0000000 --- a/src/assets/openapi/components/responses/TransactionFetchSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Fetch response -content: - application/json: - schema: - $ref: ../schemas/TransactionFetchResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml b/src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml deleted file mode 100644 index 78fc0e8..0000000 --- a/src/assets/openapi/components/responses/TransactionInitializeSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Initialize response -content: - application/json: - schema: - $ref: ../schemas/TransactionInitializeResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionListSuccess.yaml b/src/assets/openapi/components/responses/TransactionListSuccess.yaml deleted file mode 100644 index e25c22d..0000000 --- a/src/assets/openapi/components/responses/TransactionListSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction List response -content: - application/json: - schema: - $ref: ../schemas/TransactionListResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml b/src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml deleted file mode 100644 index ec93f6f..0000000 --- a/src/assets/openapi/components/responses/TransactionPartialDebitSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Partial Debit response -content: - application/json: - schema: - $ref: ../schemas/TransactionPartialDebitResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml b/src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml deleted file mode 100644 index 4e50277..0000000 --- a/src/assets/openapi/components/responses/TransactionTimelineSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Timeline response -content: - application/json: - schema: - $ref: ../schemas/TransactionTimelineResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml b/src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml deleted file mode 100644 index a9070a0..0000000 --- a/src/assets/openapi/components/responses/TransactionTotalsSuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Totals response -content: - application/json: - schema: - $ref: ../schemas/TransactionTotalsResponse.yaml diff --git a/src/assets/openapi/components/responses/TransactionVerifySuccess.yaml b/src/assets/openapi/components/responses/TransactionVerifySuccess.yaml deleted file mode 100644 index cb222ac..0000000 --- a/src/assets/openapi/components/responses/TransactionVerifySuccess.yaml +++ /dev/null @@ -1,5 +0,0 @@ -description: Transaction Verify response -content: - application/json: - schema: - $ref: ../schemas/TransactionVerifyResponse.yaml diff --git a/src/assets/openapi/components/schemas/BulkChargeInitiate.yaml b/src/assets/openapi/components/schemas/BulkChargeInitiate.yaml index ed9f593..5b0019a 100644 --- a/src/assets/openapi/components/schemas/BulkChargeInitiate.yaml +++ b/src/assets/openapi/components/schemas/BulkChargeInitiate.yaml @@ -8,4 +8,18 @@ properties: type: string amount: description: Amount to charge on the authorization + type: integer + reference: + description: Unique reference containing only -, .`, = and alphanumeric characters. type: string + attempt_partial_debit: + description: >- + A flag to indicate if you want us to try recouping lower amounts when the + customer has insufficient fund + type: boolean + at_least: + description: Minimum amount to charge if the attempt_partial_debit flag is set + type: integer + metadata: + description: JSON object of custom data + type: object diff --git a/src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml b/src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml index e65fb66..de9e72d 100644 --- a/src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml +++ b/src/assets/openapi/components/schemas/ChargeCheckPendingResponse.yaml @@ -7,58 +7,41 @@ properties: data: type: object properties: - id: + status: + type: string + amount: type: integer - domain: + currency: type: string - status: + transaction_date: type: string reference: type: string - receipt_number: + domain: type: string - nullable: true - amount: - type: integer - message: + redirect_url: type: string nullable: true + metadata: + type: object gateway_response: type: string - paid_at: - type: string - created_at: + message: type: string + nullable: true channel: type: string - currency: - type: string - ip_address: - type: string - metadata: - type: object - properties: - custom_fields: - type: array - items: - $ref: ./MetadataCustomFieldsArray.yaml - required: - - custom_fields - log: - nullable: true fees: type: integer nullable: true - fees_split: - nullable: true authorization: type: object properties: authorization_code: type: string + nullable: true bin: type: string - nullable: true last4: type: string exp_month: @@ -79,12 +62,6 @@ properties: type: boolean signature: type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true required: - authorization_code - bin @@ -98,14 +75,9 @@ properties: - brand - reusable - signature - - account_name - - receiver_bank_account_number - - receiver_bank customer: type: object properties: - id: - type: integer first_name: type: string nullable: true @@ -119,83 +91,30 @@ properties: phone: type: string nullable: true - metadata: - type: object - nullable: true risk_action: type: string - international_format_phone: - type: string - nullable: true required: - - id - first_name - last_name - email - customer_code - phone - - metadata - risk_action - - international_format_phone - plan: - nullable: true - split: - type: object - order_id: - nullable: true - paidAt: - type: string - createdAt: - type: string - requested_amount: - type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true - transaction_date: - type: string - plan_object: - type: object - subaccount: - type: object required: - - id - - domain - status - - reference - - receipt_number - amount - - message - - gateway_response - - paid_at - - created_at - - channel - currency - - ip_address + - transaction_date + - reference + - domain + - redirect_url - metadata - - log + - gateway_response + - message + - channel - fees - - fees_split - authorization - customer - - plan - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount required: - status - message diff --git a/src/assets/openapi/components/schemas/ChargeCreate.yaml b/src/assets/openapi/components/schemas/ChargeCreate.yaml index 0f9923b..d78117a 100644 --- a/src/assets/openapi/components/schemas/ChargeCreate.yaml +++ b/src/assets/openapi/components/schemas/ChargeCreate.yaml @@ -34,5 +34,5 @@ properties: Only -, .`, = and alphanumeric characters are allowed. type: string metadata: - description: Stringified JSON object of custom data - type: string + description: JSON object of custom data + type: object diff --git a/src/assets/openapi/components/schemas/ChargeCreateResponse.yaml b/src/assets/openapi/components/schemas/ChargeCreateResponse.yaml index df4956e..b4d9b02 100644 --- a/src/assets/openapi/components/schemas/ChargeCreateResponse.yaml +++ b/src/assets/openapi/components/schemas/ChargeCreateResponse.yaml @@ -44,10 +44,52 @@ properties: required: - custom_fields log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer fees_split: + type: integer nullable: true authorization: type: object diff --git a/src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml b/src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml index 039e0c8..d6bae2a 100644 --- a/src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml +++ b/src/assets/openapi/components/schemas/ChargeSubmitAddress.yaml @@ -4,7 +4,7 @@ required: - reference - city - state - - zipcode + - zip_code properties: address: description: Customer's address @@ -15,7 +15,7 @@ properties: state: description: Customer's state type: string - zipcode: + zip_code: description: Customer's zipcode type: string reference: diff --git a/src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml b/src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml index c0a0dde..708a3e6 100644 --- a/src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml +++ b/src/assets/openapi/components/schemas/ChargeSubmitOTP.yaml @@ -4,7 +4,7 @@ required: - reference properties: otp: - description: Customer's OTP + description: Customer's OTP for ongoing transaction type: string reference: description: The reference of the ongoing transaction diff --git a/src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml b/src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml index 70fff71..de9e72d 100644 --- a/src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml +++ b/src/assets/openapi/components/schemas/ChargeSubmitOtpResponse.yaml @@ -7,52 +7,39 @@ properties: data: type: object properties: - id: - type: integer - domain: - type: string status: type: string - reference: - type: string - receipt_number: - nullable: true amount: type: integer - message: - nullable: true - gateway_response: - type: string - paid_at: + currency: type: string - created_at: + transaction_date: type: string - channel: + reference: type: string - currency: + domain: type: string - ip_address: + redirect_url: type: string + nullable: true metadata: type: object - properties: - custom_fields: - type: array - items: - $ref: ./MetadataCustomFieldsArray.yaml - required: - - custom_fields - log: + gateway_response: + type: string + message: + type: string nullable: true + channel: + type: string fees: type: integer - fees_split: nullable: true authorization: type: object properties: authorization_code: type: string + nullable: true bin: type: string last4: @@ -75,12 +62,6 @@ properties: type: boolean signature: type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true required: - authorization_code - bin @@ -94,99 +75,46 @@ properties: - brand - reusable - signature - - account_name - - receiver_bank_account_number - - receiver_bank customer: type: object properties: - id: - type: integer first_name: type: string + nullable: true last_name: type: string + nullable: true email: type: string customer_code: type: string phone: type: string - metadata: - type: object + nullable: true risk_action: type: string - international_format_phone: - type: string required: - - id - first_name - last_name - email - customer_code - phone - - metadata - risk_action - - international_format_phone - plan: - nullable: true - split: - type: object - order_id: - nullable: true - paidAt: - type: string - createdAt: - type: string - requested_amount: - type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true - transaction_date: - type: string - plan_object: - type: object - subaccount: - type: object required: - - id - - domain - status - - reference - - receipt_number - amount - - message - - gateway_response - - paid_at - - created_at - - channel - currency - - ip_address + - transaction_date + - reference + - domain + - redirect_url - metadata - - log + - gateway_response + - message + - channel - fees - - fees_split - authorization - customer - - plan - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount required: - status - message diff --git a/src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml b/src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml index 36b20e6..bf5be61 100644 --- a/src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml +++ b/src/assets/openapi/components/schemas/ChargeSubmitPhoneResponse.yaml @@ -7,15 +7,116 @@ properties: data: type: object properties: + status: + type: string + amount: + type: integer + currency: + type: string + transaction_date: + type: string reference: type: string - status: + domain: + type: string + redirect_url: type: string + nullable: true + metadata: + type: object + gateway_response: + type: string + message: + type: string + nullable: true + channel: + type: string + fees: + type: integer + nullable: true + authorization: + type: object + properties: + authorization_code: + type: string + nullable: true + bin: + type: string + last4: + type: string + exp_month: + type: string + exp_year: + type: string + channel: + type: string + card_type: + type: string + bank: + type: string + country_code: + type: string + brand: + type: string + reusable: + type: boolean + signature: + type: string + required: + - authorization_code + - bin + - last4 + - exp_month + - exp_year + - channel + - card_type + - bank + - country_code + - brand + - reusable + - signature + customer: + type: object + properties: + first_name: + type: string + nullable: true + last_name: + type: string + nullable: true + email: + type: string + customer_code: + type: string + phone: + type: string + nullable: true + risk_action: + type: string + required: + - first_name + - last_name + - email + - customer_code + - phone + - risk_action display_text: type: string required: - - reference - status + - amount + - currency + - transaction_date + - reference + - domain + - redirect_url + - metadata + - gateway_response + - message + - channel + - fees + - authorization + - customer - display_text required: - status diff --git a/src/assets/openapi/components/schemas/ChargeSubmitPin.yaml b/src/assets/openapi/components/schemas/ChargeSubmitPin.yaml index 82a5f91..ac327c2 100644 --- a/src/assets/openapi/components/schemas/ChargeSubmitPin.yaml +++ b/src/assets/openapi/components/schemas/ChargeSubmitPin.yaml @@ -4,7 +4,7 @@ required: - reference properties: pin: - description: Customer's PIN + description: Customer's PIN for the ongoing transaction type: string reference: description: Transaction reference that requires the PIN diff --git a/src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml b/src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml index 70fff71..de9e72d 100644 --- a/src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml +++ b/src/assets/openapi/components/schemas/ChargeSubmitPinResponse.yaml @@ -7,52 +7,39 @@ properties: data: type: object properties: - id: - type: integer - domain: - type: string status: type: string - reference: - type: string - receipt_number: - nullable: true amount: type: integer - message: - nullable: true - gateway_response: - type: string - paid_at: + currency: type: string - created_at: + transaction_date: type: string - channel: + reference: type: string - currency: + domain: type: string - ip_address: + redirect_url: type: string + nullable: true metadata: type: object - properties: - custom_fields: - type: array - items: - $ref: ./MetadataCustomFieldsArray.yaml - required: - - custom_fields - log: + gateway_response: + type: string + message: + type: string nullable: true + channel: + type: string fees: type: integer - fees_split: nullable: true authorization: type: object properties: authorization_code: type: string + nullable: true bin: type: string last4: @@ -75,12 +62,6 @@ properties: type: boolean signature: type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true required: - authorization_code - bin @@ -94,99 +75,46 @@ properties: - brand - reusable - signature - - account_name - - receiver_bank_account_number - - receiver_bank customer: type: object properties: - id: - type: integer first_name: type: string + nullable: true last_name: type: string + nullable: true email: type: string customer_code: type: string phone: type: string - metadata: - type: object + nullable: true risk_action: type: string - international_format_phone: - type: string required: - - id - first_name - last_name - email - customer_code - phone - - metadata - risk_action - - international_format_phone - plan: - nullable: true - split: - type: object - order_id: - nullable: true - paidAt: - type: string - createdAt: - type: string - requested_amount: - type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true - transaction_date: - type: string - plan_object: - type: object - subaccount: - type: object required: - - id - - domain - status - - reference - - receipt_number - amount - - message - - gateway_response - - paid_at - - created_at - - channel - currency - - ip_address + - transaction_date + - reference + - domain + - redirect_url - metadata - - log + - gateway_response + - message + - channel - fees - - fees_split - authorization - customer - - plan - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount required: - status - message diff --git a/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml index d210a06..41f66f7 100644 --- a/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml +++ b/src/assets/openapi/components/schemas/CustomerAuthorizationInitializeRequest.yaml @@ -9,7 +9,7 @@ properties: example: ravi@demo.com channel: type: string - description: direct-debit is the only supported option for now + description: direct_debit is the only supported option for now enum: - direct_debit example: direct_debit diff --git a/src/assets/openapi/components/schemas/CustomerRiskAction.yaml b/src/assets/openapi/components/schemas/CustomerRiskAction.yaml index c0dd589..731448b 100644 --- a/src/assets/openapi/components/schemas/CustomerRiskAction.yaml +++ b/src/assets/openapi/components/schemas/CustomerRiskAction.yaml @@ -6,9 +6,10 @@ properties: description: Customer's code, or email address type: string risk_action: - description: > - One of the possible risk actions [ default, allow, deny ]. allow to - whitelist. - - deny to blacklist. Customers start with a default risk action. + description: This determines the fraud rules that should be applied to the customer type: string + default: default + enum: + - allow + - deny + - default diff --git a/src/assets/openapi/components/schemas/CustomerValidate.yaml b/src/assets/openapi/components/schemas/CustomerValidate.yaml index 63f8428..2c628a4 100644 --- a/src/assets/openapi/components/schemas/CustomerValidate.yaml +++ b/src/assets/openapi/components/schemas/CustomerValidate.yaml @@ -20,8 +20,9 @@ properties: type: description: Predefined types of identification. type: string + default: bank_account value: - description: Customer's identification number. Required if type is bvn + description: Customer's identification number. type: string country: description: Two-letter country code of identification issuer diff --git a/src/assets/openapi/components/schemas/DisputeFetchResponse.yaml b/src/assets/openapi/components/schemas/DisputeFetchResponse.yaml index d4ad951..87b084a 100644 --- a/src/assets/openapi/components/schemas/DisputeFetchResponse.yaml +++ b/src/assets/openapi/components/schemas/DisputeFetchResponse.yaml @@ -59,10 +59,52 @@ properties: required: - custom_fields log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer fees_split: + type: integer nullable: true authorization: type: object diff --git a/src/assets/openapi/components/schemas/DisputeListResponseArray.yaml b/src/assets/openapi/components/schemas/DisputeListResponseArray.yaml index 8fce723..8e933b7 100644 --- a/src/assets/openapi/components/schemas/DisputeListResponseArray.yaml +++ b/src/assets/openapi/components/schemas/DisputeListResponseArray.yaml @@ -49,10 +49,52 @@ properties: required: - custom_fields log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer fees_split: + type: integer nullable: true authorization: type: object diff --git a/src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml b/src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml index dd66307..14018f6 100644 --- a/src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml +++ b/src/assets/openapi/components/schemas/DisputeListTransactionResponse.yaml @@ -83,10 +83,52 @@ properties: required: - custom_fields log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer fees_split: + type: integer nullable: true authorization: type: object diff --git a/src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml b/src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml index d4ad951..87b084a 100644 --- a/src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml +++ b/src/assets/openapi/components/schemas/DisputeUpdateResponse.yaml @@ -59,10 +59,52 @@ properties: required: - custom_fields log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer fees_split: + type: integer nullable: true authorization: type: object diff --git a/src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml b/src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml index 27e2b98..b46c052 100644 --- a/src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml +++ b/src/assets/openapi/components/schemas/MiscellaneousListBanksResponseArray.yaml @@ -15,6 +15,8 @@ properties: type: boolean supports_transfer: type: boolean + available_for_direct_debit: + type: boolean active: type: boolean is_deleted: @@ -40,6 +42,7 @@ required: - gateway - pay_with_bank - supports_transfer + - available_for_direct_debit - active - is_deleted - country diff --git a/src/assets/openapi/components/schemas/PageCreate.yaml b/src/assets/openapi/components/schemas/PageCreate.yaml index 91b0e1e..b21cbb6 100644 --- a/src/assets/openapi/components/schemas/PageCreate.yaml +++ b/src/assets/openapi/components/schemas/PageCreate.yaml @@ -51,8 +51,8 @@ properties: description: The split code of the transaction split. e.g. `SPL_98WF13Eb3w` type: string metadata: - description: Stringified JSON object of custom data - type: string + description: JSON object of custom data + type: object redirect_url: description: > If you would like Paystack to redirect to a URL upon successful payment, diff --git a/src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml b/src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml index ff8b853..2015cc5 100644 --- a/src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml +++ b/src/assets/openapi/components/schemas/PaymentRequestCreateResponse.yaml @@ -23,8 +23,10 @@ properties: has_invoice: type: boolean invoice_number: + type: integer nullable: true description: + type: string nullable: true line_items: type: array @@ -39,6 +41,7 @@ properties: paid: type: boolean metadata: + type: object nullable: true notifications: type: array @@ -52,6 +55,7 @@ properties: discount: nullable: true split_code: + type: string nullable: true required: - id diff --git a/src/assets/openapi/components/schemas/ProductUpdate.yaml b/src/assets/openapi/components/schemas/ProductUpdate.yaml index 1aadc84..627bd63 100644 --- a/src/assets/openapi/components/schemas/ProductUpdate.yaml +++ b/src/assets/openapi/components/schemas/ProductUpdate.yaml @@ -27,5 +27,5 @@ properties: description: The split code if sharing the transaction with partners type: string metadata: - description: Stringified JSON object of custom data - type: string + description: JSON object of custom data + type: object diff --git a/src/assets/openapi/components/schemas/SplitCreateResponse.yaml b/src/assets/openapi/components/schemas/SplitCreateResponse.yaml index ed92c76..bf85c8a 100644 --- a/src/assets/openapi/components/schemas/SplitCreateResponse.yaml +++ b/src/assets/openapi/components/schemas/SplitCreateResponse.yaml @@ -49,7 +49,6 @@ properties: - split_code - active - bearer_type - - bearer_subaccount - createdAt - updatedAt - is_dynamic diff --git a/src/assets/openapi/components/schemas/SplitListResponseArray.yaml b/src/assets/openapi/components/schemas/SplitListResponseArray.yaml index dab4218..3ea9ee7 100644 --- a/src/assets/openapi/components/schemas/SplitListResponseArray.yaml +++ b/src/assets/openapi/components/schemas/SplitListResponseArray.yaml @@ -20,6 +20,7 @@ properties: type: string bearer_subaccount: type: integer + nullable: true createdAt: type: string updatedAt: diff --git a/src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml b/src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml index 90fdca5..c418799 100644 --- a/src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml +++ b/src/assets/openapi/components/schemas/SubaccountListResponseArray.yaml @@ -28,6 +28,8 @@ properties: type: string active: type: integer + is_verified: + type: boolean required: - id - subaccount_code @@ -43,3 +45,4 @@ required: - account_number - currency - active + - is_verified diff --git a/src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml b/src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml index d62f492..cd616e0 100644 --- a/src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml +++ b/src/assets/openapi/components/schemas/SubscriptionCreateResponse.yaml @@ -45,6 +45,15 @@ properties: type: string next_payment_date: type: string + easy_cron_id: + type: string + nullable: true + open_invoice: + type: string + nullable: true + metadata: + type: object + nullable: true required: - customer - plan @@ -65,6 +74,9 @@ properties: - updatedAt - cron_expression - next_payment_date + - easy_cron_id + - open_invoice + - metadata required: - status - message diff --git a/src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml b/src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml index 6160bb6..3def40c 100644 --- a/src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml +++ b/src/assets/openapi/components/schemas/SubscriptionFetchResponse.yaml @@ -150,6 +150,9 @@ properties: nullable: true payments_count: type: integer + metadata: + type: object + nullable: true required: - id - domain @@ -172,6 +175,7 @@ properties: - split_code - most_recent_invoice - payments_count + - metadata required: - status - message diff --git a/src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml b/src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml index 11e7ec0..64904c0 100644 --- a/src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml +++ b/src/assets/openapi/components/schemas/SubscriptionListResponseArray.yaml @@ -157,6 +157,9 @@ properties: type: integer most_recent_invoice: nullable: true + metadata: + type: object + nullable: true required: - id - domain @@ -178,3 +181,4 @@ required: - split_code - payments_count - most_recent_invoice + - metadata diff --git a/src/assets/openapi/components/schemas/TerminalListsResponse.yaml b/src/assets/openapi/components/schemas/TerminalListsResponse.yaml index 8ce5c55..b0b42ea 100644 --- a/src/assets/openapi/components/schemas/TerminalListsResponse.yaml +++ b/src/assets/openapi/components/schemas/TerminalListsResponse.yaml @@ -12,13 +12,11 @@ properties: type: object properties: next: - type: array + type: string nullable: true - items: {} previous: - type: array + type: string nullable: true - items: {} perPage: type: integer required: diff --git a/src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml b/src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml index a2b9e35..2ee037d 100644 --- a/src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml +++ b/src/assets/openapi/components/schemas/TransactionChargeAuthorization.yaml @@ -23,6 +23,8 @@ properties: split_code: description: The split code of the transaction split type: string + split: + $ref: ./SplitCreate.yaml subaccount: description: The code for the subaccount that owns the payment type: string diff --git a/src/assets/openapi/components/schemas/TransactionChargeResponse.yaml b/src/assets/openapi/components/schemas/TransactionChargeResponse.yaml deleted file mode 100644 index ab06b82..0000000 --- a/src/assets/openapi/components/schemas/TransactionChargeResponse.yaml +++ /dev/null @@ -1,131 +0,0 @@ -type: object -properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - status: - type: string - amount: - type: integer - currency: - type: string - transaction_date: - type: string - reference: - type: string - domain: - type: string - redirect_url: - type: string - nullable: true - metadata: - type: object - gateway_response: - type: string - message: - type: string - nullable: true - channel: - type: string - fees: - type: integer - nullable: true - authorization: - type: object - properties: - authorization_code: - type: string - nullable: true - bin: - type: string - nullable: true - last4: - type: string - nullable: true - exp_month: - type: string - exp_year: - type: string - channel: - type: string - nullable: true - card_type: - type: string - nullable: true - bank: - type: string - nullable: true - country_code: - type: string - nullable: true - brand: - type: string - nullable: true - reusable: - type: boolean - signature: - type: string - nullable: true - required: - - authorization_code - - bin - - last4 - - exp_month - - exp_year - - channel - - card_type - - bank - - country_code - - brand - - reusable - - signature - customer: - type: object - properties: - first_name: - type: string - nullable: true - last_name: - type: string - nullable: true - email: - type: string - customer_code: - type: string - phone: - type: string - nullable: true - risk_action: - type: string - required: - - first_name - - last_name - - email - - customer_code - - phone - - risk_action - url: - type: string - required: - - status - - amount - - currency - - transaction_date - - reference - - domain - - redirect_url - - metadata - - gateway_response - - message - - channel - - fees - - authorization - - customer -required: - - status - - message - - data diff --git a/src/assets/openapi/components/schemas/TransactionFetchResponse.yaml b/src/assets/openapi/components/schemas/TransactionFetchResponse.yaml index 5c765d3..c8e0181 100644 --- a/src/assets/openapi/components/schemas/TransactionFetchResponse.yaml +++ b/src/assets/openapi/components/schemas/TransactionFetchResponse.yaml @@ -45,10 +45,52 @@ properties: required: - custom_fields log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer fees_split: + type: integer nullable: true authorization: type: object diff --git a/src/assets/openapi/components/schemas/TransactionInitialize.yaml b/src/assets/openapi/components/schemas/TransactionInitialize.yaml index 4f3e00c..fad274e 100644 --- a/src/assets/openapi/components/schemas/TransactionInitialize.yaml +++ b/src/assets/openapi/components/schemas/TransactionInitialize.yaml @@ -74,8 +74,8 @@ properties: description: Used to replace the email address shown on the Checkout type: string metadata: - description: Stringified JSON object of custom data - type: string + description: JSON object of custom data + type: object example: email: test@demo.com amount: 10000 diff --git a/src/assets/openapi/components/schemas/TransactionListResponseArray.yaml b/src/assets/openapi/components/schemas/TransactionListResponseArray.yaml index f7ab103..22f4058 100644 --- a/src/assets/openapi/components/schemas/TransactionListResponseArray.yaml +++ b/src/assets/openapi/components/schemas/TransactionListResponseArray.yaml @@ -30,6 +30,47 @@ properties: type: object nullable: true log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer @@ -74,29 +115,41 @@ properties: properties: authorization_code: type: string + nullable: true bin: type: string + nullable: true last4: type: string + nullable: true exp_month: type: string + nullable: true exp_year: type: string + nullable: true channel: type: string + nullable: true card_type: type: string + nullable: true bank: type: string + nullable: true country_code: type: string + nullable: true brand: type: string + nullable: true reusable: type: boolean signature: type: string + nullable: true account_name: + type: string nullable: true required: - authorization_code diff --git a/src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml b/src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml index f38dcc6..6822f83 100644 --- a/src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml +++ b/src/assets/openapi/components/schemas/TransactionPartialDebitResponse.yaml @@ -30,6 +30,47 @@ properties: ip_address: nullable: true log: + type: object + properties: + start_time: + type: integer + time_spent: + type: integer + attempts: + type: integer + errors: + type: integer + success: + type: boolean + mobile: + type: boolean + input: + type: array + items: {} + history: + type: array + items: + type: object + properties: + type: + type: string + message: + type: string + time: + type: integer + required: + - type + - message + - time + required: + - start_time + - time_spent + - attempts + - errors + - success + - mobile + - input + - history nullable: true fees: type: integer diff --git a/src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml b/src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml deleted file mode 100644 index 78d573e..0000000 --- a/src/assets/openapi/components/schemas/TransactionVerifyResponse.yaml +++ /dev/null @@ -1,181 +0,0 @@ -type: object -properties: - status: - type: boolean - message: - type: string - data: - type: object - properties: - id: - type: integer - domain: - type: string - status: - type: string - reference: - type: string - receipt_number: - type: string - nullable: true - amount: - type: integer - message: - type: string - nullable: true - gateway_response: - type: string - paid_at: - type: string - nullable: true - created_at: - type: string - channel: - type: string - currency: - type: string - ip_address: - type: string - metadata: - anyOf: - - type: string - - type: object - log: - nullable: true - fees: - type: integer - nullable: true - fees_split: - nullable: true - authorization: - type: object - properties: - authorization_code: - type: string - bin: - nullable: true - last4: - type: string - exp_month: - type: string - exp_year: - type: string - channel: - type: string - card_type: - type: string - bank: - type: string - country_code: - type: string - brand: - type: string - reusable: - type: boolean - signature: - type: string - account_name: - nullable: true - receiver_bank_account_number: - nullable: true - receiver_bank: - nullable: true - customer: - type: object - properties: - id: - type: integer - first_name: - type: string - nullable: true - last_name: - type: string - nullable: true - email: - type: string - customer_code: - type: string - phone: - type: string - nullable: true - metadata: - nullable: true - risk_action: - type: string - international_format_phone: - type: string - nullable: true - required: - - id - - first_name - - last_name - - email - - customer_code - - phone - - metadata - - risk_action - - international_format_phone - plan: - nullable: true - split: - type: object - order_id: - nullable: true - paidAt: - type: string - nullable: true - createdAt: - type: string - requested_amount: - type: integer - pos_transaction_data: - nullable: true - source: - nullable: true - fees_breakdown: - nullable: true - connect: - nullable: true - transaction_date: - type: string - plan_object: - type: object - subaccount: - type: object - required: - - id - - domain - - status - - reference - - receipt_number - - amount - - message - - gateway_response - - paid_at - - created_at - - channel - - currency - - ip_address - - metadata - - log - - fees - - fees_split - - authorization - - customer - - plan - - split - - order_id - - paidAt - - createdAt - - requested_amount - - pos_transaction_data - - source - - fees_breakdown - - connect - - transaction_date - - plan_object - - subaccount -required: - - status - - message - - data diff --git a/src/assets/openapi/components/schemas/TransferBulk.yaml b/src/assets/openapi/components/schemas/TransferBulk.yaml index 44d3416..46aaac3 100644 --- a/src/assets/openapi/components/schemas/TransferBulk.yaml +++ b/src/assets/openapi/components/schemas/TransferBulk.yaml @@ -6,10 +6,17 @@ properties: source: description: Where should we transfer from? Only balance is allowed for now type: string + currency: + description: Specify the currency of the transfer. + type: string + default: NGN + enum: + - NGN + - ZAR + - KES + - GHS transfers: - description: >- - A list of transfer object. Each object should contain amount, recipient, - and reference + description: A list of transfer object type: array items: - $ref: ./TransferInitiate.yaml + $ref: ./TransferBase.yaml diff --git a/src/assets/openapi/components/schemas/TransferCreateResponse.yaml b/src/assets/openapi/components/schemas/TransferCreateResponse.yaml index 964577c..6289003 100644 --- a/src/assets/openapi/components/schemas/TransferCreateResponse.yaml +++ b/src/assets/openapi/components/schemas/TransferCreateResponse.yaml @@ -10,6 +10,9 @@ properties: transfersessionid: type: array items: {} + transfertrials: + type: array + items: {} domain: type: string amount: @@ -48,6 +51,7 @@ properties: type: string required: - transfersessionid + - transfertrials - domain - amount - currency diff --git a/src/assets/openapi/components/schemas/TransferFetchResponse.yaml b/src/assets/openapi/components/schemas/TransferFetchResponse.yaml index 91a09ca..431f473 100644 --- a/src/assets/openapi/components/schemas/TransferFetchResponse.yaml +++ b/src/assets/openapi/components/schemas/TransferFetchResponse.yaml @@ -61,6 +61,7 @@ properties: integration: type: integer metadata: + type: object nullable: true name: type: string @@ -103,7 +104,6 @@ properties: - email - id - integration - - metadata - name - recipient_code - type diff --git a/src/assets/openapi/components/schemas/TransferInitiate.yaml b/src/assets/openapi/components/schemas/TransferInitiate.yaml index 398f027..c56fc49 100644 --- a/src/assets/openapi/components/schemas/TransferInitiate.yaml +++ b/src/assets/openapi/components/schemas/TransferInitiate.yaml @@ -1,30 +1,23 @@ -type: object -required: - - source - - amount - - recipient -properties: - source: - description: Where should we transfer from? Only balance is allowed for now - type: string - amount: - description: >- - Amount to transfer in kobo if currency is NGN and pesewas if currency is - GHS. - type: string - recipient: - description: The transfer recipient's code - type: string - reason: - description: The reason or narration for the transfer. - type: string - currency: - description: Specify the currency of the transfer. Defaults to NGN. - type: string - reference: - description: >- - If specified, the field should be a unique identifier (in lowercase) for - the object. - - Only -,_ and alphanumeric characters are allowed. - type: string +description: Transfer initiation model +allOf: + - $ref: ./TransferBase.yaml + - type: object + required: + - source + - amount + - recipient + - reference + properties: + source: + description: The origin of the funds to send from + type: string + default: balance + currency: + description: Specify the currency of the transfer. + type: string + default: NGN + enum: + - NGN + - ZAR + - KES + - GHS diff --git a/src/assets/openapi/components/schemas/TransferListResponseArray.yaml b/src/assets/openapi/components/schemas/TransferListResponseArray.yaml index 1a1fe8a..bc35a65 100644 --- a/src/assets/openapi/components/schemas/TransferListResponseArray.yaml +++ b/src/assets/openapi/components/schemas/TransferListResponseArray.yaml @@ -28,6 +28,8 @@ properties: nullable: true transfer_code: type: string + request: + type: integer transferred_at: nullable: true updatedAt: @@ -52,6 +54,7 @@ properties: integration: type: integer metadata: + type: object nullable: true name: type: string @@ -74,6 +77,7 @@ properties: type: string account_name: type: string + nullable: true bank_code: type: string bank_name: @@ -93,7 +97,6 @@ properties: - email - id - integration - - metadata - name - recipient_code - type @@ -113,6 +116,9 @@ properties: - id fee_charged: type: integer + fees_breakdown: + type: integer + nullable: true required: - amount - createdAt @@ -127,9 +133,11 @@ required: - source_details - status - titan_code + - request - transfer_code - transferred_at - updatedAt - recipient - session - fee_charged + - fees_breakdown diff --git a/src/assets/openapi/components/schemas/TransferRecipientBulk.yaml b/src/assets/openapi/components/schemas/TransferRecipientBulk.yaml index 5e0f3b6..fc3a769 100644 --- a/src/assets/openapi/components/schemas/TransferRecipientBulk.yaml +++ b/src/assets/openapi/components/schemas/TransferRecipientBulk.yaml @@ -3,11 +3,7 @@ required: - batch properties: batch: - description: >- - A list of transfer recipient object. Each object should contain type, - name, and bank_code. - - Any Create Transfer Recipient param can also be passed. + description: A list of transfer recipient object. type: array items: $ref: ./TransferRecipientCreate.yaml diff --git a/src/assets/openapi/components/schemas/TransferRecipientCreate.yaml b/src/assets/openapi/components/schemas/TransferRecipientCreate.yaml index e9cc658..9477ba2 100644 --- a/src/assets/openapi/components/schemas/TransferRecipientCreate.yaml +++ b/src/assets/openapi/components/schemas/TransferRecipientCreate.yaml @@ -6,7 +6,8 @@ required: - bank_code properties: type: - description: Recipient Type (Only nuban at this time) + description: Recipient Type + default: nuban type: string name: description: Recipient's name @@ -29,5 +30,5 @@ properties: description: An authorization code from a previous transaction type: string metadata: - description: Stringified JSON object of custom data - type: string + description: JSON object of custom data + type: object diff --git a/src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml index 78a62b0..97f7cf2 100644 --- a/src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml +++ b/src/assets/openapi/components/schemas/TransferRecipientCreateResponse.yaml @@ -24,6 +24,7 @@ properties: integration: type: integer metadata: + type: object nullable: true name: type: string @@ -41,9 +42,11 @@ properties: type: object properties: authorization_code: + type: string nullable: true account_number: type: string + nullable: true account_name: type: string nullable: true @@ -66,7 +69,6 @@ properties: - email - id - integration - - metadata - name - recipient_code - type diff --git a/src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml b/src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml index f55c46b..7140fc1 100644 --- a/src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml +++ b/src/assets/openapi/components/schemas/TransferRecipientFetchResponse.yaml @@ -22,8 +22,10 @@ properties: properties: account_number: type: string + nullable: true account_name: type: string + nullable: true bank_code: type: string bank_name: @@ -36,6 +38,7 @@ properties: description: type: string metadata: + type: object nullable: true recipient_code: type: string @@ -63,7 +66,6 @@ properties: - name - details - description - - metadata - recipient_code - active - recipient_account diff --git a/src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml b/src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml index 748d853..fb98752 100644 --- a/src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml +++ b/src/assets/openapi/components/schemas/TransferRecipientListResponseArray.yaml @@ -18,6 +18,7 @@ properties: integration: type: integer metadata: + type: object nullable: true name: type: string @@ -35,9 +36,11 @@ properties: type: object properties: authorization_code: + type: string nullable: true account_number: type: string + nullable: true account_name: type: string nullable: true @@ -60,7 +63,6 @@ required: - email - id - integration - - metadata - name - recipient_code - type diff --git a/src/assets/openapi/components/schemas/TransferResendOTP.yaml b/src/assets/openapi/components/schemas/TransferResendOTP.yaml index f139096..c698904 100644 --- a/src/assets/openapi/components/schemas/TransferResendOTP.yaml +++ b/src/assets/openapi/components/schemas/TransferResendOTP.yaml @@ -7,5 +7,9 @@ properties: description: The transfer code that requires an OTP validation type: string reason: - description: Either resend_otp or transfer + description: Specify the flag to indicate the purpose of the OTP type: string + default: transfer + enum: + - disable_otp + - transfer diff --git a/src/assets/openapi/components/schemas/TransferVerifyResponse.yaml b/src/assets/openapi/components/schemas/TransferVerifyResponse.yaml index aa8a6af..c980da7 100644 --- a/src/assets/openapi/components/schemas/TransferVerifyResponse.yaml +++ b/src/assets/openapi/components/schemas/TransferVerifyResponse.yaml @@ -59,6 +59,7 @@ properties: integration: type: integer metadata: + type: object nullable: true name: type: string @@ -98,7 +99,6 @@ properties: - email - id - integration - - metadata - name - recipient_code - type diff --git a/src/assets/openapi/components/schemas/USSD.yaml b/src/assets/openapi/components/schemas/USSD.yaml index f36ff04..51e2443 100644 --- a/src/assets/openapi/components/schemas/USSD.yaml +++ b/src/assets/openapi/components/schemas/USSD.yaml @@ -4,7 +4,7 @@ properties: description: The three-digit USSD code. type: string enum: - - 737 - - 919 - - 822 - - 966 + - '737' + - '919' + - '822' + - '966' diff --git a/src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml b/src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml index df7ed13..58ec18f 100644 --- a/src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml +++ b/src/assets/openapi/components/schemas/VerificationValidateAccountResponse.yaml @@ -11,9 +11,24 @@ properties: type: boolean verificationMessage: type: string + accountAcceptsDebits: + type: boolean + accountAcceptsCredits: + type: boolean + accountOpenForMoreThanThreeMonths: + type: boolean + accountHolderMatch: + type: boolean + accountOpen: + type: boolean required: - verified - verificationMessage + - accountAcceptsDebits + - accountAcceptsCredits + - accountOpenForMoreThanThreeMonths + - accountHolderMatch + - accountOpen required: - status - message diff --git a/src/assets/openapi/openapi.yaml b/src/assets/openapi/openapi.yaml index c0144ca..ba9ff19 100644 --- a/src/assets/openapi/openapi.yaml +++ b/src/assets/openapi/openapi.yaml @@ -31,7 +31,11 @@ tags: description: > A collection of endpoints for creating and managing customers on an integration - x-product-name: Transaction Splits + x-product-name: Customers + - name: Direct Debit + description: | + A collection of endpoints for managing Direct Debit + x-product-name: Direct Debit - name: Dedicated Virtual Account description: > A collection of endpoints for creating and managing payment accounts for @@ -183,6 +187,20 @@ paths: $ref: paths/customer_deactivate_authorization.yaml /customer/{code}/identification: $ref: paths/customer_{code}_identification.yaml + /customer/authorization/initialize: + $ref: paths/customer_authorization_initialize.yaml + /customer/authorization/verify/{reference}: + $ref: paths/customer_authorization_verify_{reference}.yaml + /customer/{id}/initialize-direct-debit: + $ref: paths/customer_{id}_initialize-direct-debit.yaml + /customer/{id}/directdebit-activation-charge: + $ref: paths/customer_{id}_directdebit-activation-charge.yaml + /customer/{id}/directdebit-mandate-authorizations: + $ref: paths/customer_{id}_directdebit-mandate-authorizations.yaml + /directdebit/activation-charge: + $ref: paths/directdebit_activation-charge.yaml + /directdebit/mandate-authorizations: + $ref: paths/directdebit_mandate-authorizations.yaml /dedicated_account: $ref: paths/dedicated_account.yaml /dedicated_account/assign: diff --git a/src/assets/openapi/paths/bulkcharge.yaml b/src/assets/openapi/paths/bulkcharge.yaml index 6d6b9c8..8c0211b 100644 --- a/src/assets/openapi/paths/bulkcharge.yaml +++ b/src/assets/openapi/paths/bulkcharge.yaml @@ -14,11 +14,7 @@ post: schema: type: array items: - properties: - charges: - type: object - items: - $ref: ../components/schemas/BulkChargeInitiate.yaml + $ref: ../components/schemas/BulkChargeInitiate.yaml responses: '200': description: '' diff --git a/src/views/index.html b/src/views/index.html index 6411b7b..a38d0ac 100644 --- a/src/views/index.html +++ b/src/views/index.html @@ -9,11 +9,7 @@
- - - -