Documentation
¶
Index ¶
- Constants
- func FormatBillMetadataDateTime(t time.Time) string
- func FormatTimeToLifetime(t time.Time) string
- func ParseBillMetadataDateTime(changedDateTime string) (time.Time, error)
- func ParseLifetime(str string) (time.Time, error)
- type API
- type BillID
- type BillMetadata
- type BillMetadataAmount
- type BillMetadataStatus
- type BillMetadataStatusValue
- type Currency
- type CustomerIdentificators
- type OplataCreateOptions
- type SiteID
Constants ¶
View Source
const ( // При открытии формы будут отображаться только указанные // способы перевода, если они доступны. Возможные значения см. ниже. CustomFieldOptionPaySourcesFilter = "paySourcesFilter" // QIWI Кошелек. PaySourceQiwi = "qw" // Банковская карта. PaySourceCard = "card" // QIWI Кошелек и банковская карта. PaySourceQiwiAndCard = PaySourceQiwi + "," + PaySourceCard )
View Source
const ( // Код персонализации вашей формы. Может быть длиной <=255. // https://developer.qiwi.com/ru/p2p-payments/#custom CustomFieldOptionThemeCode = "themeCode" )
Variables ¶
This section is empty.
Functions ¶
func FormatBillMetadataDateTime ¶
Форматирует time.Time в значение формата для полей с datetime в BillMetadata
func FormatTimeToLifetime ¶
Форматирует time.Time в значение для `OplataCreateOptions.Lifetime`
func ParseBillMetadataDateTime ¶
Парсит значение поля с datetime из BillMetedata
Types ¶
type API ¶
type API struct {
// Публичный ключ для авторизации при выставлении счетов через форму.
PublicKey string
// Секретный ключ для авторизации запросов к API
SecretKey string
// contains filtered or unexported fields
}
Интерфейс для взаимодействия с API P2P-счетов по стандарту OAuth 2.0.
func NewAPIWithHTTPDoRequest ¶
func (*API) CancelBill ¶
func (api *API) CancelBill(billID BillID) (*BillMetadata, error)
Отмена неоплаченного счета
func (*API) CreateBill ¶
func (api *API) CreateBill(billID BillID, billMeta *BillMetadata) (*BillMetadata, error)
Выставление счета
func (*API) CreateOplataURL ¶
func (api *API) CreateOplataURL(options *OplataCreateOptions) string
Создаёт ссылку при переходе по которой отображается форма с выбором способа перевода. publicKey - публичный ключ Qiwi P2p API. Не может быть пустым. При использовании этого способа нельзя гарантировать, что все счета выставлены вами, в отличие от выставления счёта по API.
type BillMetadata ¶
type BillMetadata struct {
// Ваш идентификатор в сервисе приема платежей для физических лиц p2p.qiwi.com.
// НЕ ИСПОЛЬЗОВАТЬ С CreateBill().
SiteID SiteID `json:"siteId,omitempty"`
// Идентификатор выставляемого счёта в вашей системе. Может быть длиной <=200.
// Он должен быть уникальным, и генерироваться на вашей стороне любым способом.
// Идентификатором может быть любая уникальная последовательность букв или цифр.
// Также разрешено использование символа подчеркивания (_) и дефиса (-).
// НЕ ИСПОЛЬЗОВАТЬ С CreateBill().
BillID BillID `json:"billId,omitempty"`
// Ссылка на созданную форму. Перенаправьте пользователя
// по этой ссылке для оплаты счета или используйте
// библиотеку Popup, чтобы открыть форму во всплывающем окне.
// https://developer.qiwi.com/ru/p2p-payments/#popup
// НЕ ИСПОЛЬЗОВАТЬ С CreateBill().
PayURL string `json:"payUrl,omitempty"`
// Идентификаторы пользователя.
Customer *CustomerIdentificators `json:"customer,omitempty"`
// Комментарий к счету.
Comment string `json:"comment,omitempty"`
// Информация о сумме счета.
Amount *BillMetadataAmount `json:"amount,omitempty"`
// Информация о статусе счета.
// НЕ ИСПОЛЬЗОВАТЬ С CreateBill().
Status *BillMetadataStatus `json:"status,omitempty"`
// Объект строковых дополнительных параметров. Возможные элементы: paySourcesFilter, themeCode
// Может также включать поля (см. константы этого модуля):
// CustomFieldOptionPaySourcesFilter (с возможными значениями: PaySourceQiwi, PaySourceCard, PaySourceQiwiAndCard)
// и CustomFieldOptionThemeCode.
CustomFields map[string]string `json:"customFields,omitempty"`
// Системная дата создания счета. Формат даты: `ГГГГ-ММ-ДДTчч:мм:сс±чч:мм`.
// НЕ ИСПОЛЬЗОВАТЬ С CreateBill().
CreationDateTime string `json:"creationDateTime,omitempty"`
// Срок действия созданной формы для перевода. Формат даты: `ГГГГ-ММ-ДДTчч:мм:сс±чч:мм`.
ExpirationDateTime string `json:"expirationDateTime,omitempty"`
}
type BillMetadataAmount ¶
type BillMetadataAmount struct {
// Сумма счета, округленная до 2 знаков после запятой в меньшую сторону.
Value string `json:"value,omitempty"`
// Валюта суммы счета (Alpha-3 ISO 4217 код). Доступные значения: CurrencyRUB, CurrencyKZT (см. константы модуля)
Currency Currency `json:"currency,omitempty"`
}
type BillMetadataStatus ¶
type BillMetadataStatus struct {
// Текущий статус счета.
Value BillMetadataStatusValue `json:"value,omitempty"`
// Дата обновления статуса. Формат даты: `ГГГГ-ММ-ДДTчч:мм:сс±чч:мм`.
ChangedDateTime string `json:"changedDateTime,omitempty"`
}
type BillMetadataStatusValue ¶
type BillMetadataStatusValue string
Статус оплаты счета.
const ( // Счет выставлен, ожидает оплаты. BillMetadataStatusValueWaiting BillMetadataStatusValue = "WAITING" // Счет оплачен. Финальный. BillMetadataStatusValuePaid BillMetadataStatusValue = "PAID" // Время жизни счета истекло. Счет не оплачен. Финальный. BillMetadataStatusValueExpired BillMetadataStatusValue = "EXPIRED" // Счет отклонен. Финальный. BillMetadataStatusValueRejected BillMetadataStatusValue = "REJECTED" )
type CustomerIdentificators ¶
type OplataCreateOptions ¶
type OplataCreateOptions struct {
// Идентификатор выставляемого сч1та в вашей системе. Может быть длиной <=200.
// Он должен быть уникальным, и генерироваться на вашей стороне любым способом.
// Идентификатором может быть любая уникальная последовательность букв или цифр.
// Также разрешено использование символа подчеркивания (_) и дефиса (-).
BillID BillID `url:"billId,omitempty"`
// Сумма, на которую выставляется счёт, округленная в меньшую сторону до 2 десятичных знаков.
// Должна быть не больше 6 знаков до запятой и не больше 2 знаков после запятой.
// Пример: `Amount: "123456.78"`
Amount string `url:"amount,omitempty"`
// Номер телефона пользователя (в международном формате).
Phone string `url:"phone,omitempty"`
// E-mail пользователя.
Email string `url:"email,omitempty"`
// Идентификатор пользователя в вашей системе.
Account string `url:"account,omitempty"`
// Комментарий к счету. Может быть длиной <=255.
Comment string `url:"comment,omitempty"`
// Дополнительные данные счета. Может быть длиной суммарно <=255.
// Может также включать поля (см. константы этого модуля):
// CustomFieldOptionPaySourcesFilter (с возможными значениями: PaySourceQiwi, PaySourceCard, PaySourceQiwiAndCard)
// и CustomFieldOptionThemeCode
CustomFields map[string]string `url:"customFields,omitempty"`
// Дата и время по МСК (UTC+3), до которого счёт будет актуален. Формат - ГГГГ-ММ-ДДTччмм, см. ConvertTimeToLifetimeValue().
// Если перевод по счету не будет произведен до этой даты,
// ему присваивается финальный статус `EXPIRED` и последующий перевод станет невозможен.
// **Внимание! По истечении 45 суток от даты выставления счёт автоматически будет переведен в финальный статус**
Lifetime string `url:"lifetime,omitempty"`
// URL для переадресации на ваш сайт в случае успешного перевода
SuccessURL string `url:"successUrl,omitempty"`
}
Необязательные параметры для выставления сч1та.
Click to show internal directories.
Click to hide internal directories.