Skip to content

KhimeraDigital/openpay

 
 

Repository files navigation

OpenPay API Client

Based in fairbank-io/openpay

Software License

Pure Go OpenPay client implementation.

Example

package main

import (
	"gitlab.com/khimera.digital/public/openpay-go/v0"
	// If you're not using go modules, use this import instead
	// openpay "gitlab.com/khimera.digital/public/openpay-go"
)

func main() {
	// Start a new client instance
	client, err := openpay.NewClient("API_KEY", "MERCHANT_ID", nil)
	if err != nil {
		panic(err)
	}
	// Register customer
	rick := openpay.Customer{
		Name:     "Rick",
		LastName: "Sanchez",
		Email:    "rick@mail.com",
		Address: &openpay.Address{
			CountryCode: "MX",
			PostalCode:  "94560",
		},
	}
	client.Customers.Create(&rick)

	// Add Card
	card := &openpay.Card{
		HolderName:      "Rick Sanchez",
		CardNumber:      "4111111111111111",
		CVV2:            "401",
		ExpirationMonth: "10",
		ExpirationYear:  "19",
		Address:         rick.Address,
	}
	client.Charges.AddCard(card)

	// Execute charge
	sale := &openpay.ChargeWithStoredCard{
		Charge: openpay.Charge{
			Method:      "card",
			Amount:      1000,
			Currency:    "MXN",
			Description: "sample charge operation",
			Customer:    rick,
		},
		SourceID: card.ID,
		Capture:  true,
	}
	client.Charges.WithCard(sale)
}

About

OpenPay Golang API Client

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Go 100.0%