Skip to content

fairbank-io/openpay

Repository files navigation

OpenPay API Client

Build Status GoDoc Version Software License

Pure Go OpenPay client implementation.

Example

// Start a new client instance
client, _ := openpay.NewClient("API_KEY", "MERCHANT_ID", nil)

// Register customer
rick := &Customer{
    Name:     "Rick",
    LastName: "Sanchez",
    Email:    "[email protected]",
    Address:  Address{
        CountryCode: "MX",
        PostalCode:  "94560",
    },
}
client.Customers.Create(rick)

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

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