https://github.com/iota-uz/payme
IOTA Go client for the Payme Merchant API — work with payments, transactions, and fiscalization in your Go applications. Generated with OpenAPI Generator. Includes support for API key auth, server configuration, and convenient utility helpers.
https://github.com/iota-uz/payme
api-client go openapi payme
Last synced: 2 months ago
JSON representation
IOTA Go client for the Payme Merchant API — work with payments, transactions, and fiscalization in your Go applications. Generated with OpenAPI Generator. Includes support for API key auth, server configuration, and convenient utility helpers.
- Host: GitHub
- URL: https://github.com/iota-uz/payme
- Owner: iota-uz
- License: apache-2.0
- Created: 2025-05-18T17:58:39.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-05-19T11:58:59.000Z (11 months ago)
- Last Synced: 2025-05-19T12:47:27.222Z (11 months ago)
- Topics: api-client, go, openapi, payme
- Language: Mustache
- Homepage: https://www.iota.uz
- Size: 87.9 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go API client for paymeapi
API for managing Payme Merchant.
## Overview
This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [OpenAPI-spec](https://www.openapis.org/) from a remote server, you can easily generate an API client.
- API version: 1.0.0
- Package version: 1.0.0
- Build date: 2025-05-21T23:49:33.393463700+05:00[Asia/Tashkent]
- Generator version: 7.9.0
- Build package: org.openapitools.codegen.languages.GoClientCodegen
For more information, please visit [https://www.iota.uz](https://www.iota.uz)
## Installation
Install the following dependencies:
```sh
go get github.com/stretchr/testify/assert
go get golang.org/x/net/context
```
Put the package under your project folder and add the following in import:
```go
import paymeapi "github.com/iota-uz/payme/paymeapi"
```
To use a proxy, set the environment variable `HTTP_PROXY`:
```go
os.Setenv("HTTP_PROXY", "http://proxy_name:proxy_port")
```
## Configuration of Server URL
Default configuration comes with `Servers` field that contains server objects as defined in the OpenAPI specification.
### Select Server Configuration
For using other server than the one defined on index 0 set context value `paymeapi.ContextServerIndex` of type `int`.
```go
ctx := context.WithValue(context.Background(), paymeapi.ContextServerIndex, 1)
```
### Templated Server URL
Templated server URL is formatted using default variables from configuration or from context value `paymeapi.ContextServerVariables` of type `map[string]string`.
```go
ctx := context.WithValue(context.Background(), paymeapi.ContextServerVariables, map[string]string{
"basePath": "v2",
})
```
Note, enum values are always validated and all unused variables are silently ignored.
### URLs Configuration per Operation
Each operation can use different server URL defined using `OperationServers` map in the `Configuration`.
An operation is uniquely identified by `"{classname}Service.{nickname}"` string.
Similar rules for overriding default operation server index and variables applies by using `paymeapi.ContextOperationServerIndices` and `paymeapi.ContextOperationServerVariables` context maps.
```go
ctx := context.WithValue(context.Background(), paymeapi.ContextOperationServerIndices, map[string]int{
"{classname}Service.{nickname}": 2,
})
ctx = context.WithValue(context.Background(), paymeapi.ContextOperationServerVariables, map[string]map[string]string{
"{classname}Service.{nickname}": {
"port": "8443",
},
})
```
## Documentation for API Endpoints
All URIs are relative to *https://checkout.paycom.uz*
Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
## Documentation For Models
- [CancelTransactionRequest](docs/CancelTransactionRequest.md)
- [CancelTransactionRequestWrapper](docs/CancelTransactionRequestWrapper.md)
- [CancelTransactionResponse](docs/CancelTransactionResponse.md)
- [CheckPerformTransactionRequest](docs/CheckPerformTransactionRequest.md)
- [CheckPerformTransactionRequestWrapper](docs/CheckPerformTransactionRequestWrapper.md)
- [CheckPerformTransactionResponse](docs/CheckPerformTransactionResponse.md)
- [CheckTransactionRequest](docs/CheckTransactionRequest.md)
- [CheckTransactionRequestWrapper](docs/CheckTransactionRequestWrapper.md)
- [CheckTransactionResponse](docs/CheckTransactionResponse.md)
- [CreateTransactionRequest](docs/CreateTransactionRequest.md)
- [CreateTransactionRequestWrapper](docs/CreateTransactionRequestWrapper.md)
- [CreateTransactionResponse](docs/CreateTransactionResponse.md)
- [ErrorResponse](docs/ErrorResponse.md)
- [ErrorResponseError](docs/ErrorResponseError.md)
- [ErrorResponseErrorMessage](docs/ErrorResponseErrorMessage.md)
- [FiscalData](docs/FiscalData.md)
- [GetStatementRequest](docs/GetStatementRequest.md)
- [GetStatementRequestWrapper](docs/GetStatementRequestWrapper.md)
- [GetStatementResponse](docs/GetStatementResponse.md)
- [JSONRPCErrorResponse](docs/JSONRPCErrorResponse.md)
- [JSONRPCErrorResponseError](docs/JSONRPCErrorResponseError.md)
- [JSONRPCErrorResponseErrorMessage](docs/JSONRPCErrorResponseErrorMessage.md)
- [JSONRPCRequest](docs/JSONRPCRequest.md)
- [JSONRPCSuccessResponse](docs/JSONRPCSuccessResponse.md)
- [JSONRPCSuccessResponseResult](docs/JSONRPCSuccessResponseResult.md)
- [PerformTransactionRequest](docs/PerformTransactionRequest.md)
- [PerformTransactionRequestWrapper](docs/PerformTransactionRequestWrapper.md)
- [PerformTransactionResponse](docs/PerformTransactionResponse.md)
- [Receiver](docs/Receiver.md)
- [SetFiscalDataErrorResponse](docs/SetFiscalDataErrorResponse.md)
- [SetFiscalDataErrorResponseError](docs/SetFiscalDataErrorResponseError.md)
- [SetFiscalDataRequest](docs/SetFiscalDataRequest.md)
- [SetFiscalDataRequestWrapper](docs/SetFiscalDataRequestWrapper.md)
- [SetFiscalDataResponse](docs/SetFiscalDataResponse.md)
- [SetFiscalDataType](docs/SetFiscalDataType.md)
- [StatementTransaction](docs/StatementTransaction.md)
- [TransactionDetail](docs/TransactionDetail.md)
- [TransactionDetailShipping](docs/TransactionDetailShipping.md)
- [TransactionItem](docs/TransactionItem.md)
## Documentation For Authorization
Authentication schemes defined for the API:
### basicAuth
- **Type**: HTTP basic authentication
Example
```go
auth := context.WithValue(context.Background(), paymeapi.ContextBasicAuth, paymeapi.BasicAuth{
UserName: "username",
Password: "password",
})
r, err := client.Service.Operation(auth, args)
```
## Documentation for Utility Methods
Due to the fact that model structure members are all pointers, this package contains
a number of utility functions to easily obtain pointers to values of basic types.
Each of these functions takes a value of the given basic type and returns a pointer to it:
* `PtrBool`
* `PtrInt`
* `PtrInt32`
* `PtrInt64`
* `PtrFloat`
* `PtrFloat32`
* `PtrFloat64`
* `PtrString`
* `PtrTime`
## Author