ElPincheTopo / openpay

Openpay API wrapper

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Openpay Go API Wrapper

GoDoc

Este package es un wrapper de la API de Openpay.

Instrucciones de Uso

Para interactuar con la API de Openpay se debe crear una instancia de Merchant (la cual es segura para uso concurrente). Posteriormente, todas las instancias de Customer obtenidas a través de peticiones a la API tendrán una referencia al Merchant al que pertenecen. Esta referencia es necesaria para hacer operaciones en cuentas de clientes; si una instancia de Customer no se obtiene a través de la API, es necesario proveer una referencia a un Merchant manualmente. Para más información, ver la documentación de GoDoc.

import (
	"github.com/ElPincheTopo/openpay"
)

func main() {
	merchant := openpay.NewMerchant("myMerchantID", "myPrivateKey")

	customer, err := merchant.AddCustomer(&openpay.CustomerArgs{
		Name:     "Juan",
		LastName: "Perez",
		Email:    "juan@email.com",
		Address:  openpay.Address{
			// etc.
		},
	})
	if err != nil {
		panic(err)
	}

	card, err := customer.AddCardWithToken(&openpay.CardTokenArgs{
		TokenID:         "aCardToken",
		DeviceSessionID: "aSessionID",
	})
	if err != nil {
		panic(err)
	}

	var dst openpay.Charge
	err = customer.ChargeCustomer(&openpay.ChargeArgs{
		Source_id:         "aCardToken",
		Method:            "card",
		Amount:            100.50,
		Currency:          "MXN",
		Description:       "Cargo inicial a mi cuenta",
		Order_id:          "oid-00051",
		Device_session_id: "aSessionID",
	}, &dst)

	if err != nil {
		panic(err)
	}
}

About

Openpay API wrapper

License:MIT License


Languages

Language:Go 100.0%