Skip to content

ozgur-yalcin/akbankpos.go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

license documentation

Akbankpos.go

Akbank Virtual POS API with golang

Installation

go get github.com/ozgur-yalcin/akbankpos.go

Satış

package main

import (
	"context"
	"encoding/json"
	"fmt"

	akbankpos "github.com/ozgur-yalcin/akbankpos.go/src"
)

const (
	// Çalışma ortamı (Production : "PROD" - Test : "TEST")
	envmode = "TEST"

	// Mağaza numarası
	merchantid = "2023090417500272654BD9A49CF07574"

	// Terminal numarası
	terminalid = "2023090417500284633D137A249DBBEB"

	// Mağaza anahtarı
	secretkey = "3230323330393034313735303032363031353172675f357637355f3273387373745f7233725f73323333383737335f323272383774767276327672323531355f"
)

func main() {
	api, req := akbankpos.Api(merchantid, terminalid, secretkey)
	api.SetMode(envmode)

	req.SetCardNumber("5218076007402834") // Kart numarası (zorunlu)
	req.SetCardExpiry("11", "40")         // Son kullanma tarihi - AA,YY (zorunlu)
	req.SetCardCode("820")                // Kart arkasındaki 3 haneli numara (zorunlu)
	req.SetAmount("1.00", "TRY")          // Satış tutarı ve para birimi (zorunlu)
	req.SetInstallment("1")               // Taksit sayısı (zorunlu)

	// Satış
	ctx := context.Background()
	if res, err := api.Auth(ctx, req); err == nil {
		pretty, _ := json.MarshalIndent(res, " ", " ")
		fmt.Println(string(pretty))
	} else {
		fmt.Println(err)
	}
}

İade

package main

import (
	"context"
	"encoding/json"
	"fmt"

	akbankpos "github.com/ozgur-yalcin/akbankpos.go/src"
)

const (
	// Çalışma ortamı (Production : "PROD" - Test : "TEST")
	envmode = "TEST"

	// Mağaza numarası
	merchantid = "2023090417500272654BD9A49CF07574"

	// Terminal numarası
	terminalid = "2023090417500284633D137A249DBBEB"

	// Mağaza anahtarı
	secretkey = "3230323330393034313735303032363031353172675f357637355f3273387373745f7233725f73323333383737335f323272383774767276327672323531355f"
)

func main() {
	api, req := akbankpos.Api(merchantid, terminalid, secretkey)
	api.SetMode(envmode)

	req.SetAmount("1.00", "TRY")                           // İade tutarı ve para birimi (zorunlu)
	req.SetOrderId("01c4eb0e-5ae4-456b-8111-33e2209f4276") // Sipariş numarası (zorunlu)

	// İade
	ctx := context.Background()
	if res, err := api.Refund(ctx, req); err == nil {
		pretty, _ := json.MarshalIndent(res, " ", " ")
		fmt.Println(string(pretty))
	} else {
		fmt.Println(err)
	}
}

İptal

package main

import (
	"context"
	"encoding/json"
	"fmt"

	akbankpos "github.com/ozgur-yalcin/akbankpos.go/src"
)

const (
	// Çalışma ortamı (Production : "PROD" - Test : "TEST")
	envmode = "TEST"

	// Mağaza numarası
	merchantid = "2023090417500272654BD9A49CF07574"

	// Terminal numarası
	terminalid = "2023090417500284633D137A249DBBEB"

	// Mağaza anahtarı
	secretkey = "3230323330393034313735303032363031353172675f357637355f3273387373745f7233725f73323333383737335f323272383774767276327672323531355f"
)

func main() {
	api, req := akbankpos.Api(merchantid, terminalid, secretkey)
	api.SetMode(envmode)

	req.SetOrderId("01c4eb0e-5ae4-456b-8111-33e2209f4276") // Sipariş numarası (zorunlu)

	// İptal
	ctx := context.Background()
	if res, err := api.Cancel(ctx, req); err == nil {
		pretty, _ := json.MarshalIndent(res, " ", " ")
		fmt.Println(string(pretty))
	} else {
		fmt.Println(err)
	}
}

Releases

No releases published

Packages

No packages published

Languages